AAFA Developer Support

Public Member Functions
IAAFConstantValue Interface Reference

The IAAFConstantValue interface is implemented by objects that specify a parameter whose value is constant for an entire operation group. More...

List of all members.

Public Member Functions

HRESULT Initialize ([in] IAAFParameterDef *pParameterDef,[in] aafUInt32 valueSize,[in, size_is(valueSize)] aafDataBuffer_t pValue)
 Initializes a new constant value object to be identified with the given the given type, and with the given human-legible name.
HRESULT GetValue ([in] aafUInt32 valueSize,[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t pValue,[out] aafUInt32 *bytesRead)
 Writes the value into the pValue buffer.
HRESULT GetValueBufLen ([out] aafUInt32 *pLen)
 Returns the length of buffer required for the GetValue() method.
HRESULT GetTypeDefinition ([out, retval] IAAFTypeDef **ppTypeDef)
 Places the type definition of the dataval inside this parameter into the ppTypeDef argument.
HRESULT SetValue ([in] aafUInt32 valueSize,[in, size_is(valueSize)] aafDataBuffer_t pValue)
 The data value is set from a buffer of size valueSize and type.

Detailed Description

The IAAFConstantValue interface is implemented by objects that specify a parameter whose value is constant for an entire operation group.

Use IAAFVaryingValue and one or more IAAFControlPoints for parameters which change in value during the operation group.

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 IAAFConstantValue also implement the following interfaces:

Definition at line 4077 of file AAF.idl.


Member Function Documentation

HRESULT IAAFConstantValue::GetTypeDefinition ( [out, retval] IAAFTypeDef **  ppTypeDef)

Places the type definition of the dataval inside this parameter into the ppTypeDef argument.

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.
Parameters:
ppTypeDef[out,retval] Type Definition of the dataval inside of this object
HRESULT IAAFConstantValue::GetValue ( [in] aafUInt32  valueSize,
[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t  pValue,
[out] aafUInt32 *  bytesRead 
)

Writes the value into the pValue buffer.

The buffer is allocated by the caller, and the size of the buffer is given by valueSize.

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

Succeeds if all of the following are true:

  • the pValue pointer is valid.
  • valueSize indicates the buffer is large enough to hold the name.

If this method fails nothing will be written to *pValue.

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

  • pValue arg is NULL.

AAFRESULT_SMALLBUF

  • valueSize indicates the buffer is too small to hold the value.
Parameters:
valueSize[in] Size of preallocated buffer
pValue[out, size_is(valueSize),length_is(*bytesRead)] Preallocated buffer to hold value
bytesRead[out] Number of actual bytes read
HRESULT IAAFConstantValue::GetValueBufLen ( [out] aafUInt32 *  pLen)

Returns the length of buffer required for the GetValue() method.

The value is placed into the location specified by pLen.

Succeeds if all of the following are true:

  • the pLen pointer is valid.

If this method fails nothing will be written to *pLen.

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

  • pLen arg is NULL.
Parameters:
pLen[out] Pointer to an variable used to return the length
HRESULT IAAFConstantValue::Initialize ( [in] IAAFParameterDef pParameterDef,
[in] aafUInt32  valueSize,
[in, size_is(valueSize)] aafDataBuffer_t  pValue 
)

Initializes a new constant value object to be identified with the given the given type, and with the given human-legible name.

This method must be called after allocation, and before any other method can be called.

Succeeds if:

  • Initialize() has not yet been called on this object.
  • pParameterDef and pValue are a valid pointers.

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_ALREADY_INITIALIZED

AAFRESULT_NULL_PARAM

  • pParameterDef or pValue arg is NULL.
Parameters:
pParameterDef[in] Parameter definition for this object (this determines the type of the constant value)
valueSize[in] Size of preallocated buffer
pValue[in, size_is(valueSize)] buffer containing value
HRESULT IAAFConstantValue::SetValue ( [in] aafUInt32  valueSize,
[in, size_is(valueSize)] aafDataBuffer_t  pValue 
)

The data value is set from a buffer of size valueSize and type.

Succeeds if all of the following are true:

  • pTypeDef is valid and registered with the object's dictionary.
  • the pValue 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_NOT_INITIALIZED

AAFRESULT_NULL_PARAM

  • ppTypeDef is null.
Parameters:
valueSize[in] Size of preallocated buffer
pValue[in, size_is(valueSize)] buffer containing value

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