An object which allows iteration over all of the flavour codes which a given codec is able to handle. More...
Public Member Functions | |
HRESULT | NextOne ([out, retval] aafUID_t *pAAFCodecFlavour) |
Enumerates to the next element in the enumerators list. | |
HRESULT | Next ([in] aafUInt32 count,[out, size_is(count), length_is(*pFetched)] aafUID_t *pAAFCodecFlavours,[out, ref] aafUInt32 *pFetched) |
Enumerates the next count elements (codec flavour IDs) in the enumerator's list, returning them in the given array along with the actual number of enumerated elements in pFetched. | |
HRESULT | Skip ([in] aafUInt32 count) |
Instructs the enumerator to skip the next count elements in the enumeration so that the next call to EnumAAFCodecFlavours::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] IEnumAAFCodecFlavours **ppEnum) |
Creates another EnumAAFCodecFlavours enumerator with the same state as the current enumerator to iterate over the same list. |
An object which allows iteration over all of the flavour codes which a given codec is able to handle.
Flavours are used when a single codec can support multiple formats. An Example would be a codec which would accept a "resolution ID" for a particular manufacturer and set up all of the parameters. When a new resolution ID is released, then a new codec plugin would give users the ability to use the new resolutions without upgrading the application.
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 IEnumAAFCodecFlavours::Clone | ( | [out, retval] IEnumAAFCodecFlavours ** | ppEnum | ) |
Creates another EnumAAFCodecFlavours 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.
ppEnum | [out,retval] new enumeration |
HRESULT IEnumAAFCodecFlavours::Next | ( | [in] aafUInt32 | count, |
[out, size_is(count), length_is(*pFetched)] aafUID_t * | pAAFCodecFlavours, | ||
[out, ref] aafUInt32 * | pFetched | ||
) |
Enumerates the next count elements (codec flavour IDs) in the enumerator's list, returning them in the given array along with the actual number of enumerated elements in pFetched.
The caller is responsible for passing in a pointer to an array of aafUID_t, and retains control over the pointer.
count | [in] number of AAFPluggableDefs requested |
pAAFCodecFlavours | [out, size_is(count), length_is(*pFetched)] array to receive flavour codes |
pFetched | [out,ref] number of actual flavour IDs fetched into pAAFCodecFlavours array |
HRESULT IEnumAAFCodecFlavours::NextOne | ( | [out, retval] aafUID_t * | pAAFCodecFlavour | ) |
Enumerates to the next element in the enumerators list.
The caller is responsible for passing in a pointer to an aafUID_t, and retains control over the pointer.
This is a just simplified version of the Next method.
pAAFCodecFlavour | [out,retval] The Next flavour code |
HRESULT IEnumAAFCodecFlavours::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 IEnumAAFCodecFlavours::Skip | ( | [in] aafUInt32 | count | ) |
Instructs the enumerator to skip the next count elements in the enumeration so that the next call to EnumAAFCodecFlavours::Next will not return those elements.
count | [in] Number of elements to skip |