AAFA Developer Support

Public Member Functions
IEnumAAFComponents Interface Reference

This interface is used to enumerate over the AAFComponents contained in an AAFSequence. More...

List of all members.

Public Member Functions

HRESULT NextOne ([out, retval] IAAFComponent **ppComponent)
 Enumerates to the next element in the enumerators list.
HRESULT Next ([in] aafUInt32 count,[out, size_is(count), length_is(*pNumFetched)] IAAFComponent **ppComponents,[out, ref] aafUInt32 *pNumFetched)
 Enumerates the next count elements (AAFComponent pointers) in the enumerator's list, returning them in the given array along with the actual number of enumerated elements in pNumFetched.
HRESULT Skip ([in] aafUInt32 count)
 Instructs the enumerator to skip the next count elements in the enumeration so that the next call to 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] IEnumAAFComponents **ppEnum)
 Creates another component enumerator with the same state as the current enumerator to iterate over the same list.

Detailed Description

This interface is used to enumerate over the AAFComponents contained in an AAFSequence.

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

Definition at line 34943 of file AAF.idl.


Member Function Documentation

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

Creates another component 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.

Note: The caller must release this new enumerator separately from the first enumerator.

Succeeds if all of the following are true:

  • the ppEnum pointer is valid.

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

  • ppEnum is null.
Parameters:
ppEnum[out,retval] new enumeration
HRESULT IEnumAAFComponents::Next ( [in] aafUInt32  count,
[out, size_is(count), length_is(*pNumFetched)] IAAFComponent **  ppComponents,
[out, ref] aafUInt32 *  pNumFetched 
)

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

The caller is responsible for properly releasing the returned pointers.

Succeeds if all of the following are true:

  • The ppComponents pointer is valid.
  • The pNumFetched pointer is valid. If count is 1, pNumFetched can be NULL.
  • There are Component objects remaining to be returned.

If this method fails nothing is written to *ppComponents or pNumFetched.

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

  • either ppComponents or pNumFetched is null.
Parameters:
count[in] number of components requested
ppComponents[out, size_is(count), length_is(*pNumFetched)] array to receive components
pNumFetched[out,ref] number of actual Components fetched into ppComponents array
HRESULT IEnumAAFComponents::NextOne ( [out, retval] IAAFComponent **  ppComponent)

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.

Succeeds if all of the following are true:

  • the ppComponent pointer is valid.
  • there are Component objects remaining to be returned.

If this method fails nothing is written to *ppComponent.

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

  • ppComponent is null.

AAFRESULT_NO_MORE_OBJECTS

  • no Components remaining to be returned.
Parameters:
ppComponent[out,retval] The Next Component
HRESULT IEnumAAFComponents::Reset ( )

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

Always succeeds.

This method will return the following code:

AAFRESULT_SUCCESS

  • succeeded. (This is the only code indicating success.)
HRESULT IEnumAAFComponents::Skip ( [in] aafUInt32  count)

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

Succeeds if all of the following are true:

  • count is less than or equal to the number of remaining objects.

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.

AAFRESULT_NO_MORE_OBJECTS

  • count exceeded number of remaining objects.
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