mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 12:49:33 +02:00
* Add TNoRefCountObject (delphi compatibility)
This commit is contained in:
parent
d24eeffa2b
commit
b8738944ed
@ -1165,6 +1165,33 @@
|
||||
result:=longint(E_NOINTERFACE);
|
||||
end;
|
||||
|
||||
{****************************************************************************
|
||||
TNoRefCountObject
|
||||
****************************************************************************}
|
||||
|
||||
function TNoRefCountObject.QueryInterface( {$IFDEF FPC_HAS_CONSTREF}constref{$ELSE}const{$ENDIF} iid : tguid;out obj) : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
|
||||
begin
|
||||
if getinterface(iid,obj) then
|
||||
result:=S_OK
|
||||
else
|
||||
result:=longint(E_NOINTERFACE);
|
||||
end;
|
||||
|
||||
function TNoRefCountObject._AddRef : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
|
||||
begin
|
||||
Result:=-1;
|
||||
end;
|
||||
|
||||
function TNoRefCountObject._Release : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
|
||||
begin
|
||||
Result:=-1;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
{****************************************************************************
|
||||
TCustomAttribute
|
||||
****************************************************************************}
|
||||
|
@ -334,6 +334,14 @@
|
||||
function QueryInterface({$IFDEF FPC_HAS_CONSTREF}constref{$ELSE}const{$ENDIF} iid : tguid;out obj) : longint;virtual; {$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
end;
|
||||
|
||||
TNoRefCountObject = class(TObject, IInterface)
|
||||
protected
|
||||
function QueryInterface({$IFDEF FPC_HAS_CONSTREF}constref{$ELSE}const{$ENDIF} iid : tguid;out obj) : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
function _AddRef : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
function _Release : longint;{$IFNDEF WINDOWS}cdecl{$ELSE}stdcall{$ENDIF};
|
||||
end;
|
||||
|
||||
|
||||
{ some pointer definitions }
|
||||
PUnknown = ^IUnknown;
|
||||
PPUnknown = ^PUnknown;
|
||||
|
Loading…
Reference in New Issue
Block a user