IOwneds

 (Available in 01 TS COM - TS_COM_IUnknown)

Purpose

Get the owned objects

Syntax

IF Alen( oSomeIObject:Owneds )==0 THEN

Description

Get the owned objects as an array of objects

Source

ACCESS IOwneds CLASS TS_IUnknown
LOCAL oCOMGlobalData AS _TS_COMGlobalData
LOCAL aIOwneds AS ARRAY
LOCAL oIOwned AS TS_IUnknown
LOCAL X AS DWORD
   TSTrace Enter
   oCOMGlobalData:=_TS_ModuleGetCOMGlobalData( )
   #IFDEF TS_COMGLOBALDATA_CRITICALSECTION
      EnterCriticalSection( oCOMGlobalData:_COMGGeneralPurposeSection )
   #ENDIF
   IF LOGIC( _CAST, SELF:_IOwnedsCount ) .AND. SELF:_IOwnedsArrayPP ; ...
  ... ==NULL_PTR
      TSTrace Error "LOGIC(_CAST,SELF:_IOwnedsCount) .AND. SELF:_IOwnedsArrayPP==NULL_PTR"
   END
   aIOwneds:=ArrayCreate( SELF:_IOwnedsCount )
   FOR X:=1U UPTO SELF:_IOwnedsCount
      PTR( @oIOwned ):=SELF:_IOwnedsArrayPP[ X ]
      aIOwneds[ X ]:=oIOwned
   NEXT
   #IFDEF TS_COMGLOBALDATA_CRITICALSECTION
      LeaveCriticalSection( oCOMGlobalData:_COMGGeneralPurposeSection )
   #ENDIF
   TSTrace Leave
RETURN aIOwneds