AAFA Developer Support

Public Member Functions
IAAFParameterDef Interface Reference

The IAAFParameterDef interface is implemented by objects that specify a definition of an operation group parameter. More...

List of all members.

Public Member Functions

HRESULT Initialize ([in, ref] aafUID_constref id,[in, string] aafCharacter_constptr pName,[in, string] aafCharacter_constptr pDescription,[in] IAAFTypeDef *pType)
 Init all fields of a definition object.
HRESULT GetTypeDefinition ([retval, out] IAAFTypeDef **ppTypeDef)
 Places the AAFTypeDef object attached to this IAAFParameterDef into the *ppTypeDef argument.
HRESULT SetDisplayUnits ([in, string] aafCharacter_constptr pDisplayUnits)
 Sets the Display Units string property.
HRESULT GetDisplayUnits ([out, string, size_is(bufSize)] aafCharacter *pDisplayUnits,[in] aafUInt32 bufSize)
 Gets the Display Units string property.
HRESULT GetDisplayUnitsBufLen ([out] aafUInt32 *pBufSize)
 Returns size of buffer (in bytes) required for GetDisplayUnits().

Detailed Description

The IAAFParameterDef interface is implemented by objects that specify a definition of an operation group parameter.

The parameterDef object is separate from the operation definition to allow some parameters, for example level, to be specified once for multiple operation definitions. Parmeter definitions define the possible values and display units of a single operation parameter.

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

IAAFDefObject

Definition at line 19396 of file AAF.idl.


Member Function Documentation

HRESULT IAAFParameterDef::GetDisplayUnits ( [out, string, size_is(bufSize)] aafCharacter *  pDisplayUnits,
[in] aafUInt32  bufSize 
)

Gets the Display Units string property.

Writes the DisplayUnits property, with a trailing null character, into the pDisplayUnits buffer. The buffer is allocated by the caller. The size of the buffer is given by bufSize. If the DisplayUnits property has not yet been set, a zero-length string will be written (that is, only the trailing null character).

Caller may call GetDisplayUnitsBufLen() to determine the required buffer size.

If this method fails nothing will be written to pDisplayUnits.

Succeeds if:

  • The pDisplayUnits pointer is valid.
  • bufSize indicates that the buffer is large enough to hold DisplayUnits.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pDisplayUnits arg is NULL.

AAFRESULT_SMALL_BUF

  • bufSize indicates that the allocated buffer is not large enough to hold DisplayUnits.
Parameters:
pDisplayUnits[out, string, size_is(bufSize)] buffer into which DisplayUnits is to be written
bufSize[in] size of *pDisplayUnits buffer in bytes
HRESULT IAAFParameterDef::GetDisplayUnitsBufLen ( [out] aafUInt32 *  pBufSize)

Returns size of buffer (in bytes) required for GetDisplayUnits().

Succeeds if:

  • The pBufSize pointer is valid.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pBufSize arg is NULL.
Parameters:
pBufSize[out] size of required buffer, in bytes
HRESULT IAAFParameterDef::GetTypeDefinition ( [retval, out] IAAFTypeDef **  ppTypeDef)

Places the AAFTypeDef object attached to this IAAFParameterDef into the *ppTypeDef argument.

If none exists yet, NULL is placed into the *ppTypeDef argument.

The returned AAFTypeDef object, if it exists, is AddRef()ed before it is returned.

Succeeds if all of the following are true:

  • the ppTypeDef pointer is valid.
  • A valid AAFTypeDef exists.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • ppTypeDef is null.

AAFRESULT_NO_ESSENCE_DESC

  • There is no AAFTypeDef. There has to be one of some kind for this to be a valid operation definition.
Parameters:
ppTypeDef[retval,out] Pointer to a type definition
HRESULT IAAFParameterDef::Initialize ( [in, ref] aafUID_constref  id,
[in, string] aafCharacter_constptr  pName,
[in, string] aafCharacter_constptr  pDescription,
[in] IAAFTypeDef pType 
)

Init all fields of a definition object.

Parameters:
id[in, ref] AUID for new DefObject
pName[in, string] Name for new DefObject
pDescription[in, string] Description for new DefObject
pType[in] The type definition for all parameters that use this definition
HRESULT IAAFParameterDef::SetDisplayUnits ( [in, string] aafCharacter_constptr  pDisplayUnits)

Sets the Display Units string property.

Set the DisplayUnits property to the value specified in pDisplayUnits. A copy is made of the data so the caller retains ownership of the *pDisplayUnits 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:

  • the pDisplayUnits pointer is valid.

If this method fails the DisplayUnits 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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pDisplayUnits arg is NULL.
Parameters:
pDisplayUnits[in, string] buffer from which DisplayUnits is to be read

Generated on Wed Jul 4 2012 22:13:29 for AAF COM API by doxygen 1.7.4