AAFA Developer Support

Public Member Functions
IAAFSelector Interface Reference

The IAAFSelector interface is implemented by objects that specify a single segment while preserving references to unused alternatives. More...

List of all members.

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.

Detailed Description

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:

Definition at line 24248 of file AAF.idl.


Member Function Documentation

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:

  • this object has already been initialized.
  • the pSegment pointer is valid.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

  • Initialize() has already been called on this object.

AAFRESULT_NULL_PARAM

  • pSegment is null.
Parameters:
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:

  • this object has already been initialized.
  • the ppEnum pointer is valid.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

  • Initialize() has already been called on this object.

AAFRESULT_NULL_PARAM

  • ppEnum is null.

E_FAIL

  • Failed to create the enumerator.
Parameters:
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:

  • this object has already been initialized.
  • the pNumSegments pointer is valid.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NOT_INITIALIZED

  • Initialize() has already been called on this object.

AAFRESULT_NULL_PARAM

  • pNumSegments is null.
Parameters:
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:

  • the ppSelSegment pointer is valid.
  • A valid segment exists.

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_NOT_INITIALIZED

  • This object has not yet had Initialize() called on it.

AAFRESULT_NULL_PARAM

  • ppSelSegment is null.
Parameters:
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:

  • the v pointer is valid.
  • the given segment is currently in the collection.

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

  • succeeded. (This is the only code indicating success.)

AAFRESULT_NULL_PARAM

  • pEssenceData is null.

AAFRESULT_SEGMENT_NOT_FOUND

  • the given segment is not already contained.
Parameters:
pSegment[in] Segment to remove
HRESULT IAAFSelector::SetSelectedSegment ( [in] IAAFSegment pSelSegment)

Sets the Selected segment.

Succeeds if all of the following are true:

  • the pSelSegment 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_NOT_INITIALIZED

  • This object has not yet had Initialize() called on it.

AAFRESULT_NULL_PARAM

  • pSelSegment is null.
Parameters:
pSelSegment[in] A Segment object

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