AAFA Developer Support

Public Member Functions
IEnumAAFEssenceData Interface Reference

The IEnumAAFEssenceData interface is used enumerate all of the AAFEssenceData objects in a file. More...

List of all members.

Public Member Functions

HRESULT NextOne ([out, retval] IAAFEssenceData **ppEssenceData)
 Enumerates to the next element in the enumerators list.
HRESULT Next ([in] aafUInt32 count,[out, size_is(count), length_is(*pFetched)] IAAFEssenceData **ppEssenceData,[out, ref] aafUInt32 *pFetched)
 Enumerates the next count elements (AAFEssenceData pointers) in the enumerator's list, returning them in the given array along with the actual number of enumerated elements in pcFetched.
HRESULT Skip ([in] aafUInt32 count)
 Instructs the enumerator to skip the next count elements in the enumeration so that the next call to EnumAAFEssenceData::Next will not return those elements.
HRESULT Reset ()
 Instructs the enumerator to position itself at the beginning of the list of elements.
HRESULT Clone ([out, retval] IEnumAAFEssenceData **ppEnum)
 Creates another essence data enumerator with the same state as the current enumerator to iterate over the same list.

Detailed Description

The IEnumAAFEssenceData interface is used enumerate all of the AAFEssenceData objects in a file.

The AAFEssenceData objects 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

Definition at line 35610 of file AAF.idl.


Member Function Documentation

HRESULT IEnumAAFEssenceData::Clone ( [out, retval] IEnumAAFEssenceData **  ppEnum)

Creates another essence data enumerator with the same state as the current enumerator to iterate over the same list.

This method makes it possible to record a point in the enumeration sequence in order to return to that point at a later time. The caller must release this new enumerator separately from the first enumerator.

Parameters:
ppEnum[out,retval] new enumeration
HRESULT IEnumAAFEssenceData::Next ( [in] aafUInt32  count,
[out, size_is(count), length_is(*pFetched)] IAAFEssenceData **  ppEssenceData,
[out, ref] aafUInt32 *  pFetched 
)

Enumerates the next count elements (AAFEssenceData pointers) in the enumerator's list, returning them in the given array along with the actual number of enumerated elements in pcFetched.

The caller is responsible for properly releasing the returned pointers.

Parameters:
count[in] number of essence data requested
ppEssenceData[out, size_is(count), length_is(*pFetched)] array to receive EssenceData
pFetched[out,ref] number of actual EssenceData fetched into ppEssenceData array
HRESULT IEnumAAFEssenceData::NextOne ( [out, retval] IAAFEssenceData **  ppEssenceData)

Enumerates to the next element in the enumerators list.

The caller is responsible for properly releasing the returned pointer when it is no longer needed. This is a just simplified version of the Next method.

Parameters:
ppEssenceData[out,retval] The Next EssenceData
HRESULT IEnumAAFEssenceData::Reset ( )

Instructs the enumerator to position itself at the beginning of the list of elements.

There is no guarantee that the same set of elements will be enumerated on each pass through the list, nor will the elements necessarily be enumerated in the same order. The exact behavior depends on the collection being enumerated.

HRESULT IEnumAAFEssenceData::Skip ( [in] aafUInt32  count)

Instructs the enumerator to skip the next count elements in the enumeration so that the next call to EnumAAFEssenceData::Next will not return those elements.

Parameters:
count[in] Number of elements to skip

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