The IAAFConstantValue interface is implemented by objects that specify a parameter whose value is constant for an entire operation group. More...
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. |
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SMALLBUF
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:
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
AAFRESULT_NULL_PARAM
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:
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_ALREADY_INITIALIZED
AAFRESULT_NULL_PARAM
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:
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
valueSize | [in] Size of preallocated buffer |
pValue | [in, size_is(valueSize)] buffer containing value |