The IAAFSelector interface is implemented by objects that specify a single segment while preserving references to unused alternatives. More...
Public Member Functions | |
HRESULT | GetSelectedSegment ([out] IAAFSegment **ppSelSegment) |
Places the Selected Segment object in this Selector into the ppSelSegment argument. | |
HRESULT | SetSelectedSegment ([in] IAAFSegment *pSelSegment) |
Sets the Selected segment. | |
HRESULT | AppendAlternateSegment ([in] IAAFSegment *pSegment) |
This function appends the input segment to the alternate segment list, the alternate list of segments represents unused alternative segments. | |
HRESULT | GetNumAlternateSegments ([out] aafInt32 *pNumSegments) |
This function returns the number of segments in the set. | |
HRESULT | EnumAlternateSegments ([out, retval] IEnumAAFSegments **ppEnum) |
Places an IEnumAAFSegments enumerator for the alterante segments contained in the selector into the *ppEnum argument. | |
HRESULT | RemoveAlternateSegment ([in] IAAFSegment *pSegment) |
Removes the given Segment from the selector. |
The IAAFSelector interface is implemented by objects that specify a single segment while preserving references to unused alternatives.
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
AAFRESULT_NOT_INITIALIZED
Objects that implement IAAFSelector also implement the following interfaces:
HRESULT IAAFSelector::AppendAlternateSegment | ( | [in] IAAFSegment * | pSegment | ) |
This function appends the input segment to the alternate segment list, the alternate list of segments represents unused alternative segments.
This method will AddRef() the segment if it succeeds.
If the segment is successfully appended to the set of alternates, the reference count of the segment is incremented.
Succeeds if all of the following are true:
If this method fails no state is 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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pSegment | [in] Segment to append to the Alternate list of segments |
HRESULT IAAFSelector::EnumAlternateSegments | ( | [out, retval] IEnumAAFSegments ** | ppEnum | ) |
Places an IEnumAAFSegments enumerator for the alterante segments contained in the selector into the *ppEnum argument.
The returned enumerator is AddRef()ed before it is returned.
Succeeds if all of the following are true:
If this method fails nothing will be written to *ppEnum.
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_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
E_FAIL
ppEnum | [out, retval] Segment Enumeration |
HRESULT IAAFSelector::GetNumAlternateSegments | ( | [out] aafInt32 * | pNumSegments | ) |
This function returns the number of segments in the set.
Succeeds if all of the following are true:
If this method fails no state is 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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pNumSegments | [out] Number of Alternate Segments |
HRESULT IAAFSelector::GetSelectedSegment | ( | [out] IAAFSegment ** | ppSelSegment | ) |
Places the Selected Segment object in this Selector into the ppSelSegment argument.
If none exists yet, NULL is placed into the *ppSelSegment argument.
The returned essence descriptor object, if it exists, is AddRef()ed before it is returned.
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_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
ppSelSegment | [out] Returned the selected Segment object |
HRESULT IAAFSelector::RemoveAlternateSegment | ( | [in] IAAFSegment * | pSegment | ) |
Removes the given Segment from the selector.
Succeeds if all of the following are true:
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
AAFRESULT_NULL_PARAM
AAFRESULT_SEGMENT_NOT_FOUND
pSegment | [in] Segment to remove |
HRESULT IAAFSelector::SetSelectedSegment | ( | [in] IAAFSegment * | pSelSegment | ) |
Sets the Selected segment.
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_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
pSelSegment | [in] A Segment object |