This interface is for the enumerator which is generated by IAAFEssenceDescriptor and is used for enumerating over IAAFLocators attached to EssenceDescriptor attached to an AAFSourceMob. More...
Public Member Functions | |
HRESULT | NextOne ([out, retval] IAAFLocator **ppLocator) |
Enumerates to the next element in the enumerators list. | |
HRESULT | Next ([in] aafUInt32 count,[out, size_is(count), length_is(*pFetched)] IAAFLocator **ppLocators,[out, ref] aafUInt32 *pFetched) |
Enumerates the next count elements (AAFLocator 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 EnumAAFLocators::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] IEnumAAFLocators **ppEnum) |
Creates another locator enumerator with the same state as the current enumerator to iterate over the same list. |
This interface is for the enumerator which is generated by IAAFEssenceDescriptor and is used for enumerating over IAAFLocators attached to EssenceDescriptor attached to an AAFSourceMob.
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
HRESULT IEnumAAFLocators::Clone | ( | [out, retval] IEnumAAFLocators ** | ppEnum | ) |
Creates another locator 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:
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_NULL_PARAM
ppEnum | [out,retval] new enumeration |
HRESULT IEnumAAFLocators::Next | ( | [in] aafUInt32 | count, |
[out, size_is(count), length_is(*pFetched)] IAAFLocator ** | ppLocators, | ||
[out, ref] aafUInt32 * | pFetched | ||
) |
Enumerates the next count elements (AAFLocator 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.
Succeeds if all of the following are true:
If this method fails nothing is written to *ppLocators 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
AAFRESULT_NULL_PARAM
count | [in] number of locators requested |
ppLocators | [out, size_is(count), length_is(*pFetched)] array to receive locators |
pFetched | [out,ref] number of actual Locators fetched into ppLocators array |
HRESULT IEnumAAFLocators::NextOne | ( | [out, retval] IAAFLocator ** | ppLocator | ) |
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:
If this method fails nothing is written to *ppLocator.
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_NULL_PARAM
AAFRESULT_NO_MORE_OBJECTS
ppLocator | [out,retval] The Next Locator |
HRESULT IEnumAAFLocators::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
HRESULT IEnumAAFLocators::Skip | ( | [in] aafUInt32 | count | ) |
Instructs the enumerator to skip the next count elements in the enumeration so that the next call to EnumAAFLocators::Next will not return those elements.
Succeeds if all of the following are true:
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_NO_MORE_OBJECTS
count | [in] Number of elements to skip |