In addition to the specific error results listed for each method, all methods in this interface may also return one of the following values: More...
Public Member Functions | |
| HRESULT | Initialize ([in] aafUInt32 chunkID) |
| Initializes a newly allocated, empty IAAFRIFFChunk-supporting object. | |
| HRESULT | SetChunkID ([in] aafUInt32 chunkID) |
| Sets the ChunkID property. | |
| HRESULT | GetChunkID ([out] aafUInt32 *pChunkID) |
| Gets the ChunkID property. | |
| HRESULT | Read ([in] aafUInt32 bytes,[out, size_is(bytes), length_is(*pBytesRead)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *pBytesRead) |
| Reads data from this RIFFChunk at the current position. | |
| HRESULT | Write ([in] aafUInt32 bytes,[out, size_is(bytes)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *pBytesWritten) |
| Write data to this RIFFChunk at the current position. | |
| HRESULT | SetPosition ([in] aafPosition_t offset) |
| Seeks to absolute position within the RIFFChunk data. | |
| HRESULT | GetPosition ([out] aafPosition_t *pOffset) |
| Gets the current position within the RIFFChunk data. | |
| HRESULT | GetLength ([out] aafLength_t *pLength) |
| Returns the total size of the RIFFChunk data, in bytes. | |
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
Objects that implement IAAFRIFFChunk also implement the following interfaces:
| HRESULT IAAFRIFFChunk::GetChunkID | ( | [out] aafUInt32 * | pChunkID | ) |
Gets the ChunkID property.
Succeeds if all of the following are true:
If this method fails, pChunkID will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
AAFRESULT_NULL_PARAM
| pChunkID | [out] Retrieved ChunkID |
| HRESULT IAAFRIFFChunk::GetLength | ( | [out] aafLength_t * | pLength | ) |
Returns the total size of the RIFFChunk data, in bytes.
| pLength | [out] length of the RIFFChunk data |
| HRESULT IAAFRIFFChunk::GetPosition | ( | [out] aafPosition_t * | pOffset | ) |
Gets the current position within the RIFFChunk data.
This is the position at which the next Read or Write call will operate.
| pOffset | [out] current offset from beginning of the RIFFChunk data |
| HRESULT IAAFRIFFChunk::Initialize | ( | [in] aafUInt32 | chunkID | ) |
Initializes a newly allocated, empty IAAFRIFFChunk-supporting object.
The data content is initially empty.
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
| chunkID | [in] ChunkID value |
| HRESULT IAAFRIFFChunk::Read | ( | [in] aafUInt32 | bytes, |
| [out, size_is(bytes), length_is(*pBytesRead)] aafDataBuffer_t | buffer, | ||
| [out, ref] aafUInt32 * | pBytesRead | ||
| ) |
Reads data from this RIFFChunk at the current position.
Advances the position by the number of bytes read.
| bytes | [in] read this many bytes |
| buffer | [out, size_is(bytes), length_is(*pBytesRead)] buffer to receive chunk data |
| pBytesRead | [out,ref] |
| HRESULT IAAFRIFFChunk::SetChunkID | ( | [in] aafUInt32 | chunkID | ) |
Sets the ChunkID property.
Succeeds if all of the following are true:
If this method fails, the ChunkID property will not be changed.
This method will return the following codes:
AAFRESULT_SUCCESS
| chunkID | [in] ChunkID to set |
| HRESULT IAAFRIFFChunk::SetPosition | ( | [in] aafPosition_t | offset | ) |
Seeks to absolute position within the RIFFChunk data.
The next Read or Write call will operate from the given position.
| offset | [in] offset from beginning of the RIFFChunk data |
| HRESULT IAAFRIFFChunk::Write | ( | [in] aafUInt32 | bytes, |
| [out, size_is(bytes)] aafDataBuffer_t | buffer, | ||
| [out, ref] aafUInt32 * | pBytesWritten | ||
| ) |
Write data to this RIFFChunk at the current position.
Advances the position by the number of bytes written. Any data beyond the new position is lost; that is, the buffer is truncated.
| bytes | [in] write this many bytes |
| buffer | [out, size_is(bytes)] chunk data to write |
| pBytesWritten | [out,ref] actual number of bytes written |
1.7.4