This interface is used to access the definitions of types for properties contained in AAF persistent objects. More...
Public Member Functions | |
HRESULT | GetTypeDef ([out] IAAFTypeDef **ppTypeDef) |
Returns a reference to this property's type definition. | |
HRESULT | GetName ([out, string, size_is(bufSize)] aafCharacter *pName,[in] aafUInt32 bufSize) |
Gets the human-legible name. | |
HRESULT | GetNameBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetName(). | |
HRESULT | GetIsOptional ([out, retval] aafBoolean_t *pIsOptional) |
Sets *pIsOptional to AAFTrue for properties that are optional. | |
HRESULT | GetIsUniqueIdentifier ([out, retval] aafBoolean_t *pIsUniqueIdentifier) |
Sets *pIsUniqueIdentifier to AAFTrue for properties that are optional. | |
HRESULT | SetDescription ([in, string] aafCharacter_constptr pDescription) |
Sets the description of the property definition. | |
HRESULT | GetDescription ([out, string, size_is(bufSize)] aafCharacter *pDescription,[in] aafUInt32 bufSize) |
Gets the description of the property definition. | |
HRESULT | GetDescriptionBufLen ([out] aafUInt32 *pBufSize) |
Returns size of buffer (in bytes) required for GetDescription(). |
This interface is used to access the definitions of types for properties contained in AAF persistent objects.
A property definition is used to indicate a particular property within a class. It defines the name and type of a property to be contained in objects. Clients cannot create these directly; they must be created through IAAFClassDef::RegisterNewPropertyDef().
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
HRESULT IAAFPropertyDef::GetDescription | ( | [out, string, size_is(bufSize)] aafCharacter * | pDescription, |
[in] aafUInt32 | bufSize | ||
) |
Gets the description of the property definition.
Writes the Description property, with a trailing null character, into the pDescription buffer. The buffer is allocated by the caller. The size of the buffer is given by bufSize. If the Description property has not yet been set, a zero-length string will be written (that is, only the trailing null character).
Caller may call GetDescriptionBufLen() to determine the required buffer size.
If this method fails nothing will be written to pDescription.
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_NULL_PARAM
AAFRESULT_SMALL_BUF
pDescription | [out, string, size_is(bufSize)] buffer into which Description is to be written |
bufSize | [in] size of *pDescription buffer in bytes |
HRESULT IAAFPropertyDef::GetDescriptionBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetDescription().
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_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFPropertyDef::GetIsOptional | ( | [out, retval] aafBoolean_t * | pIsOptional | ) |
Sets *pIsOptional to AAFTrue for properties that are optional.
Sets it to AAFFalse for properties that are mandatory.
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_NULL_PARAM
pIsOptional | [out, retval] pointer to the result |
HRESULT IAAFPropertyDef::GetIsUniqueIdentifier | ( | [out, retval] aafBoolean_t * | pIsUniqueIdentifier | ) |
Sets *pIsUniqueIdentifier to AAFTrue for properties that are optional.
Sets it to AAFFalse for properties that are mandatory.
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_NULL_PARAM
pIsUniqueIdentifier | [out, retval] pointer to the result |
HRESULT IAAFPropertyDef::GetName | ( | [out, string, size_is(bufSize)] aafCharacter * | pName, |
[in] aafUInt32 | bufSize | ||
) |
Gets the human-legible name.
Writes the Name property, with a trailing null character, into the pName buffer. The buffer is allocated by the caller. The size of the buffer is given by bufSize. If the Name property has not yet been set, a zero-length string will be written (that is, only the trailing null character).
Caller may call GetNameBufLen() to determine the required buffer size.
If this method fails nothing will be written to pName.
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_NULL_PARAM
AAFRESULT_SMALL_BUF
pName | [out, string, size_is(bufSize)] buffer into which Name is to be written |
bufSize | [in] size of *pName buffer in bytes |
HRESULT IAAFPropertyDef::GetNameBufLen | ( | [out] aafUInt32 * | pBufSize | ) |
Returns size of buffer (in bytes) required for GetName().
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_NULL_PARAM
pBufSize | [out] size of required buffer, in bytes |
HRESULT IAAFPropertyDef::GetTypeDef | ( | [out] IAAFTypeDef ** | ppTypeDef | ) |
Returns a reference to this property's type definition.
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_NULL_PARAM
ppTypeDef | [out] definition of type contained by this property |
HRESULT IAAFPropertyDef::SetDescription | ( | [in, string] aafCharacter_constptr | pDescription | ) |
Sets the description of the property definition.
Set the Description property to the value specified in pDescription. A copy is made of the data so the caller retains ownership of the *pDescription buffer and is responsible for de-allocating it. There is no pre-set limit to the length of the name, other than available system memory or disk space.
Succeeds if all of the following are true:
If this method fails the Description property will not be changed.
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_NULL_PARAM
pDescription | [in, string] buffer from which Description is to be read |