AAFA Developer Support

Main Page | Class List | File List | Class Members | File Members

IAAFEssenceDataEx Interface Reference

List of all members.

Detailed Description

The IAAFEssenceData interface is used to modify AAFEssenceData objects, which contain the actual essence data (ex.

WAVE) when it is contained within an AAF file. Normally the client application would access the essence through the IAAFEssenceAccess interface, which handles the work of finding and (de)compressing the data. However, in rare cases direct access to the data is required, so this interface is exposed.

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_NULL_PARAM

AAFRESULT_NOMEMORY

Objects that implement IAAFEssenceDataEx also implement the following interfaces:

Definition at line 39438 of file AAF.idl.

Public Member Functions

HRESULT Initialize ([in] IAAFSourceMob *pFileMob)
 Associates a weak reference to the given file mob with the essence data.
HRESULT Write ([in] aafUInt32 bytes,[out, size_is(bytes)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *bytesWritten)
 Write pre-interleaved data to a essence stream.
HRESULT Read ([in] aafUInt32 bytes,[out, size_is(bytes), length_is(*bytesRead)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *bytesRead)
 Read pre-interleaved data from a essence stream.
HRESULT SetPosition ([in] aafPosition_t offset)
 Seek to absolute position within the essence data.
HRESULT GetPosition ([out] aafPosition_t *pOffset)
 Get the absolute position within the essence data.
HRESULT GetSize ([out] aafLength_t *pSize)
 Return the total size of the essence data.
HRESULT WriteSampleIndex ([in] aafUInt32 bytes,[out, size_is(bytes)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *bytesWritten)
 Write pre-interleaved data to a sample index stream.
HRESULT ReadSampleIndex ([in] aafUInt32 bytes,[out, size_is(bytes), length_is(*bytesRead)] aafDataBuffer_t buffer,[out, ref] aafUInt32 *bytesRead)
 Read pre-interleaved data from a sample index stream.
HRESULT SetSampleIndexPosition ([in] aafPosition_t offset)
 Seek to absolute position within the sample index data.
HRESULT GetSampleIndexPosition ([out] aafPosition_t *pOffset)
 Get the absolute position within the sample index data.
HRESULT GetSampleIndexSize ([out] aafLength_t *pSize)
 Return the total size of the sample index data.
HRESULT SetFileMob ([in] IAAFSourceMob *pFileMob)
 Associates a weak reference to the given file mob with the essence data.
HRESULT GetFileMob ([in] IAAFSourceMob **ppFileMob)
 Associates a weak reference to the given file mob with the essence data.
HRESULT GetFileMobID ([out] aafMobID_t *pFileMobID)
 Return the mob id used to find the file mob associated with this essence.


Member Function Documentation

HRESULT IAAFEssenceDataEx::GetFileMob [in] IAAFSourceMob **  ppFileMob  ) 
 

Associates a weak reference to the given file mob with the essence data.

Succeeds if all of the following are true:

  • the ppFileMob pointer is valid and a weak reference to the associated file mob can be resolved.

If this method fails no state will 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

  • ppFileMob is null.

Parameters:
ppFileMob [in] reference to a file mob

HRESULT IAAFEssenceDataEx::GetFileMobID [out] aafMobID_t *  pFileMobID  ) 
 

Return the mob id used to find the file mob associated with this essence.

The file mob must exist in the same file as this essence data.

Parameters:
pFileMobID [out] the file mob id associated with essence

HRESULT IAAFEssenceDataEx::GetPosition [out] aafPosition_t *  pOffset  ) 
 

Get the absolute position within the essence data.

Parameters:
pOffset [out] offset from beginning of essence

HRESULT IAAFEssenceDataEx::GetSampleIndexPosition [out] aafPosition_t *  pOffset  ) 
 

Get the absolute position within the sample index data.

Parameters:
pOffset [out] offset from beginning of sample index

HRESULT IAAFEssenceDataEx::GetSampleIndexSize [out] aafLength_t *  pSize  ) 
 

Return the total size of the sample index data.

Parameters:
pSize [out] size of sample index data

HRESULT IAAFEssenceDataEx::GetSize [out] aafLength_t *  pSize  ) 
 

Return the total size of the essence data.

Parameters:
pSize [out] size of essence data

HRESULT IAAFEssenceDataEx::Initialize [in] IAAFSourceMob pFileMob  ) 
 

Associates a weak reference to the given file mob with the essence data.

Succeeds if all of the following are true:

  • the pFileMob pointer is valid and points to a file mob (contains a file descriptor).

If this method fails no state will 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

  • pFileMob is null.

Parameters:
pFileMob [in] reference to a file mob

HRESULT IAAFEssenceDataEx::Read [in] aafUInt32  bytes,
[out, size_is(bytes), length_is(*bytesRead)] aafDataBuffer_t  buffer,
[out, ref] aafUInt32 *  bytesRead
 

Read pre-interleaved data from a essence stream.

Parameters:
bytes [in] read this many bytes from the data stream
buffer [out, size_is(bytes), length_is(*bytesRead)] here is the buffer
bytesRead [out,ref]

HRESULT IAAFEssenceDataEx::ReadSampleIndex [in] aafUInt32  bytes,
[out, size_is(bytes), length_is(*bytesRead)] aafDataBuffer_t  buffer,
[out, ref] aafUInt32 *  bytesRead
 

Read pre-interleaved data from a sample index stream.

Parameters:
bytes [in] read this many bytes from the sample index stream
buffer [out, size_is(bytes), length_is(*bytesRead)] here is the buffer
bytesRead [out,ref]

HRESULT IAAFEssenceDataEx::SetFileMob [in] IAAFSourceMob pFileMob  ) 
 

Associates a weak reference to the given file mob with the essence data.

Succeeds if all of the following are true:

  • the pFileMob pointer is valid and points to a file mob (contains a file descriptor).

If this method fails no state will 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

  • pFileMob is null.

Parameters:
pFileMob [in] reference to a file mob

HRESULT IAAFEssenceDataEx::SetPosition [in] aafPosition_t  offset  ) 
 

Seek to absolute position within the essence data.

Parameters:
offset [in] offset from beginning of essence

HRESULT IAAFEssenceDataEx::SetSampleIndexPosition [in] aafPosition_t  offset  ) 
 

Seek to absolute position within the sample index data.

Parameters:
offset [in] offset from beginning of sample index

HRESULT IAAFEssenceDataEx::Write [in] aafUInt32  bytes,
[out, size_is(bytes)] aafDataBuffer_t  buffer,
[out, ref] aafUInt32 *  bytesWritten
 

Write pre-interleaved data to a essence stream.

Parameters:
bytes [in] write this many bytes to the data stream
buffer [out, size_is(bytes)] here is the buffer
bytesWritten [out,ref]

HRESULT IAAFEssenceDataEx::WriteSampleIndex [in] aafUInt32  bytes,
[out, size_is(bytes)] aafDataBuffer_t  buffer,
[out, ref] aafUInt32 *  bytesWritten
 

Write pre-interleaved data to a sample index stream.

Parameters:
bytes [in] write this many bytes to the sample index stream
buffer [out, size_is(bytes)] here is the buffer
bytesWritten [out,ref]


Generated on Thu Feb 17 09:34:16 2005 for AAF COM API by doxygen 1.4.1