The AAFEssenceFormat class represents a collection of parameters (such as image height/width, audio sample width) which describes a piece of essence. More...
Public Member Functions | |
HRESULT | AddFormatSpecifier ([in] aafUID_constref essenceFormatCode,[in] aafInt32 valueSize,[in, size_is(valueSize)] aafDataBuffer_t value) |
Appends a format specifier to the AAFEssenceFormat. | |
HRESULT | GetFormatSpecifier ([in] aafUID_constref essenceFormatCode,[in] aafInt32 valueSize,[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t value,[out] aafInt32 *bytesRead) |
The data value is returned in a preallocated buffer of size valueSize. | |
HRESULT | NumFormatSpecifiers ([out] aafInt32 *numSpecifiers) |
The data value is returned in a preallocated buffer of size valueSize. | |
HRESULT | GetIndexedFormatSpecifier ([in] aafInt32 index,[out] aafUID_t *essenceFormatCode,[in] aafInt32 valueSize,[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t value,[out] aafInt32 *bytesRead) |
The data value is returned in a preallocated buffer of size valueSize. |
The AAFEssenceFormat class represents a collection of parameters (such as image height/width, audio sample width) which describes a piece of essence.
Each parameter is specified by an AUID, and contains a variable length piece of data.
When creating a piece of essence, you should call AddFormatSpecifier() for each required or known parameter, and the codec will supply defaults for other optional parameters.
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
AAFRESULT_NOT_INITIALIZED
HRESULT IAAFEssenceFormat::AddFormatSpecifier | ( | [in] aafUID_constref | essenceFormatCode, |
[in] aafInt32 | valueSize, | ||
[in, size_is(valueSize)] aafDataBuffer_t | value | ||
) |
Appends a format specifier to the AAFEssenceFormat.
If an essenceFormatCode has already been added, then this call replaces the value, otherwise the value is appended.
The value data is passed in as a void * through the "value" argument. The size of the value must be passed through the valueSize argument.
essenceFormatCode | [in] From aaddefuids.h |
valueSize | [in] Size of preallocated buffer |
value | [in, size_is(valueSize)] Value data |
HRESULT IAAFEssenceFormat::GetFormatSpecifier | ( | [in] aafUID_constref | essenceFormatCode, |
[in] aafInt32 | valueSize, | ||
[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t | value, | ||
[out] aafInt32 * | bytesRead | ||
) |
The data value is returned in a preallocated buffer of size valueSize.
The actual number of bytes read is returned in bytesRead. If the buffer is not big enough to return the entire value, an error is returned.
essenceFormatCode | [in] From aaddefuids.h |
valueSize | [in] Size of preallocated buffer |
value | [out, size_is(valueSize),length_is(*bytesRead)] Preallocated buffer to hold value |
bytesRead | [out] Number of actual bytes read |
HRESULT IAAFEssenceFormat::GetIndexedFormatSpecifier | ( | [in] aafInt32 | index, |
[out] aafUID_t * | essenceFormatCode, | ||
[in] aafInt32 | valueSize, | ||
[out, size_is(valueSize), length_is(*bytesRead)] aafDataBuffer_t | value, | ||
[out] aafInt32 * | bytesRead | ||
) |
The data value is returned in a preallocated buffer of size valueSize.
index | [in] 0-based index |
essenceFormatCode | [out] From aaddefuids.h |
valueSize | [in] Size of preallocated buffer |
value | [out, size_is(valueSize),length_is(*bytesRead)] Preallocated buffer to hold value |
bytesRead | [out] Number of actual bytes read |
HRESULT IAAFEssenceFormat::NumFormatSpecifiers | ( | [out] aafInt32 * | numSpecifiers | ) |
The data value is returned in a preallocated buffer of size valueSize.
numSpecifiers | [out] The number of specifiers present. |