This interface is used to define Object references (either strong or weak) used in AAF persistent objects. More...
Public Member Functions | |
HRESULT | GetObjectType ([out] IAAFClassDef **ppObjType) |
Returns the class def representing objects to which this type def can refer. | |
HRESULT | CreateValue ([in] IUnknown *pObj,[out] IAAFPropertyValue **ppPropVal) |
Creates a property value which contains an object reference. | |
HRESULT | GetObject ([in] IAAFPropertyValue *pPropVal,[in] REFIID iid,[out, iid_is(iid)] IUnknown **ppObject) |
Returns the object contained in the named property value. | |
HRESULT | SetObject ([in] IAAFPropertyValue *pPropVal,[in] IUnknown *pObject) |
Sets the named property value to refer to the named object. |
This interface is used to define Object references (either strong or weak) used in AAF persistent objects.
In addition to the specific error results listed for each method, all methods in this interface may also return one of the following values:
AAFRESULT_NOMEMORY
Objects that implement IAAFTypeDefObjectRef also implement the following interfaces:
HRESULT IAAFTypeDefObjectRef::CreateValue | ( | [in] IUnknown * | pObj, |
[out] IAAFPropertyValue ** | ppPropVal | ||
) |
Creates a property value which contains an object reference.
Initializes it to refer to the given object, and returns the newly-created property value in ppPropVal.
Succeeds if:
This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pObj | [in] object with which to initialize this object reference |
ppPropVal | [out] newly created property value |
HRESULT IAAFTypeDefObjectRef::GetObject | ( | [in] IAAFPropertyValue * | pPropVal, |
[in] REFIID | iid, | ||
[out, iid_is(iid)] IUnknown ** | ppObject | ||
) |
Returns the object contained in the named property value.
Requires that pPropVal be a strong object reference or a weak object reference.
Succeeds if:
This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pPropVal | [in] property value from which value is to be read |
iid | [in] interface id of the required output |
ppObject | [out, iid_is(iid)] pointer to object value |
HRESULT IAAFTypeDefObjectRef::GetObjectType | ( | [out] IAAFClassDef ** | ppObjType | ) |
Returns the class def representing objects to which this type def can refer.
The returned type def is the class definition of the least-derived type which is permissible to be represented.
Succeeds if:
This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
ppObjType | [out] class def of objects permitted to be referenced |
HRESULT IAAFTypeDefObjectRef::SetObject | ( | [in] IAAFPropertyValue * | pPropVal, |
[in] IUnknown * | pObject | ||
) |
Sets the named property value to refer to the named object.
Requires that pPropVal be a strong object reference or a weak object reference.
Succeeds if:
This method will return the following codes. If more than one of the listed errors is in effect, it will return the first one encountered in the order given below:
AAFRESULT_SUCCESS
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pPropVal | [in] property value from which value is to be read |
pObject | [in] pointer to object value |