AAFA Developer Support

Public Member Functions
IAAFOperationGroup Interface Reference

The IAAFOperationGroup interface is implemented by objects describe an operation (such as an effect) affecting the interpretation of zero or more input segments. More...

List of all members.

Public Member Functions

HRESULT Initialize ([in] IAAFDataDef *pDataDef,[in] aafLength_t length,[in] IAAFOperationDef *operationDef)
 Initializes an operation group object with the given property values.
HRESULT GetOperationDefinition ([out] IAAFOperationDef **ppOperationDef)
 Returns the operation definition for this invocation.
HRESULT SetOperationDefinition ([in] IAAFOperationDef *pOperationDef)
 This function sets the operation definition for the given operation group.
HRESULT GetRender ([out] IAAFSourceReference **ppSourceRef)
 Returns the segment that represents the optional rendering on an operation group object.
HRESULT IsATimeWarp ([out, retval] aafBoolean_t *pIsTimeWarp)
 This boolean function returns whether or not an operation group is a timewarp effect.
HRESULT GetBypassOverride ([out] aafUInt32 *pBypassOverride)
 Returns the optional bypass override propertyvalue from the input operation def object.
HRESULT CountSourceSegments ([out] aafUInt32 *pResult)
 Returns the number of media sources to the operation group.
HRESULT IsValidTranOperation ([out] aafBoolean_t *pValidTransition)
 Verifies that the input operation group object can be used in a transition.
HRESULT CountParameters ([out] aafUInt32 *pResult)
 Returns the number of parameters in the operation group.
HRESULT AddParameter ([in] IAAFParameter *pParameter)
 Adds a new parameter object.
HRESULT AppendInputSegment ([in] IAAFSegment *pSegment)
 Appends another input segment to an operation group.
HRESULT PrependInputSegment ([in] IAAFSegment *pSegment)
 Prepends another input segment to an operation group.
HRESULT InsertInputSegmentAt ([in] aafUInt32 index,[in] IAAFSegment *pSegment)
 Inserts an input segment to an operation group at the given index.
HRESULT SetRender ([in] IAAFSourceReference *ppSourceRef)
 This function sets the final rendering for the given operation group to the input source clip.
HRESULT SetBypassOverride ([in] aafUInt32 bypassOverride)
 This function sets the optional bypass override property on the given operation group object.
HRESULT GetParameters ([out] IEnumAAFParameters **ppEnum)
 returns an enumerator across all parameters.
HRESULT LookupParameter ([in] aafArgIDType_constref argID,[out] IAAFParameter **ppParameter)
 Given an argID, returns the corresponding parameter slot and parameter slot value.
HRESULT GetInputSegmentAt ([in] aafUInt32 index,[out] IAAFSegment **ppInputSegment)
 Given an index, returns the corresponding input segment.
HRESULT RemoveInputSegmentAt ([in] aafUInt32 index)
 Removes the segment at the given index.

Detailed Description

The IAAFOperationGroup interface is implemented by objects describe an operation (such as an effect) affecting the interpretation of zero or more input segments.

OperationGroup objects may include any object implementing the IAAFSegment interface as source material, including another nested OperationGroup object.

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 IAAFOperationGroup also implement the following interfaces:

Definition at line 17673 of file AAF.idl.


Member Function Documentation

HRESULT IAAFOperationGroup::AddParameter ( [in] IAAFParameter pParameter)

Adds a new parameter object.

Succeeds if all of the following are true:

  • the pValue 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_DUPLICATE_PARAMETER

  • The given argID is already present.

AAFRESULT_NULL_PARAM

  • pValue arg is NULL.
Parameters:
pParameter[in] Parameter to place in operation group slot
HRESULT IAAFOperationGroup::AppendInputSegment ( [in] IAAFSegment pSegment)

Appends another input segment to an operation group.

Succeeds if all of the following are true:

  • the pSegment 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_DUPLICATE_INDEX

  • The given index value is already present.

AAFRESULT_NULL_PARAM

  • pSegment arg is NULL.
Parameters:
pSegment[in] Segment to place in operation group
HRESULT IAAFOperationGroup::CountParameters ( [out] aafUInt32 *  pResult)

Returns the number of parameters in the operation group.

Succeeds if all of the following are true:

  • the pResult pointer is valid.

If this method fails nothing will be written to *pResult.

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

  • pResult arg is NULL.
Parameters:
pResult[out] Number of parameter slots in the operation group
HRESULT IAAFOperationGroup::CountSourceSegments ( [out] aafUInt32 *  pResult)

Returns the number of media sources to the operation group.

Succeeds if all of the following are true:

  • the pResult pointer is valid.

If this method fails nothing will be written to *pResult.

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

  • pResult arg is NULL.
Parameters:
pResult[out] Number of source media segments in the operation group
HRESULT IAAFOperationGroup::GetBypassOverride ( [out] aafUInt32 *  pBypassOverride)

Returns the optional bypass override propertyvalue from the input operation def object.

Succeeds if all of the following are true:

  • the pBypassOverride pointer is valid.

If this method fails nothing will be written to *pBypassOverride.

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

AAFRESULT_PROP_NOT_PRESENT

  • This property does not exist in the file.

AAFRESULT_NULL_PARAM

  • pBypassOverride arg is NULL.
Parameters:
pBypassOverride[out] Bypass override property value
HRESULT IAAFOperationGroup::GetInputSegmentAt ( [in] aafUInt32  index,
[out] IAAFSegment **  ppInputSegment 
)

Given an index, returns the corresponding input segment.

Working and final renderings are handled by using an IAAFEssenceGroup as the segment.

Succeeds if all of the following are true:

  • the ppInputSegment pointer is valid.

If this method fails nothing will be written to *ppInputSegment.

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_MISSING_INDEX

  • The given index value is not present.

AAFRESULT_NULL_PARAM

  • ppInputSegment arg is NULL.
Parameters:
index[in] 0-based index into the effet inputs
ppInputSegment[out] Input segment
HRESULT IAAFOperationGroup::GetOperationDefinition ( [out] IAAFOperationDef **  ppOperationDef)

Returns the operation definition for this invocation.

Succeeds if all of the following are true:

  • the ppOperationDef pointer is valid.

If this method fails nothing will be written to *ppOperationDef.

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

AAFRESULT_PROP_NOT_PRESENT

  • This property does not exist in the file.

AAFRESULT_NULL_PARAM

  • ppOperationDef arg is NULL.
Parameters:
ppOperationDef[out] Operation definition object
HRESULT IAAFOperationGroup::GetParameters ( [out] IEnumAAFParameters **  ppEnum)

returns an enumerator across all parameters.

Succeeds if all of the following are true:

  • 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_NULL_PARAM

  • ppEnum arg is NULL.
Parameters:
ppEnum[out] Parameter enumerator
HRESULT IAAFOperationGroup::GetRender ( [out] IAAFSourceReference **  ppSourceRef)

Returns the segment that represents the optional rendering on an operation group object.

Working and final renderings are handled by using an IAAFEssenceGroup as the segment.

Succeeds if all of the following are true:

  • the ppSourceRef pointer is valid.

If this method fails nothing will be written to *ppSourceRef.

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

AAFRESULT_PROP_NOT_PRESENT

  • This property does not exist in the file.

AAFRESULT_NULL_PARAM

  • ppSourceRef arg is NULL.
Parameters:
ppSourceRef[out] Final rendering segment
HRESULT IAAFOperationGroup::Initialize ( [in] IAAFDataDef pDataDef,
[in] aafLength_t  length,
[in] IAAFOperationDef operationDef 
)

Initializes an operation group object with the given property values.

This function takes an already created operation definition object as an argument. To add slots to the operation group, call AddNewSlot. To add renderings, call SetRender.

Parameters:
pDataDef[in] Data Definition Object
length[in] Length property value
operationDef[in] Operation Definition object
HRESULT IAAFOperationGroup::InsertInputSegmentAt ( [in] aafUInt32  index,
[in] IAAFSegment pSegment 
)

Inserts an input segment to an operation group at the given index.

The existing segments at the given and higher indices are moved up by one to make room.

Succeeds if all of the following are true:

  • the pSegment pointer is valid.
  • the index is not greater than the value returned by CountInputSegments().

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_DUPLICATE_INDEX

  • The given index value is already present.

AAFRESULT_BAD_INDEX

  • index is greater than the value returned by CountInputSegments().

AAFRESULT_NULL_PARAM

  • pSegment arg is NULL.
Parameters:
index[in] index to place this segment
pSegment[in] Segment to place in operation group
HRESULT IAAFOperationGroup::IsATimeWarp ( [out, retval] aafBoolean_t *  pIsTimeWarp)

This boolean function returns whether or not an operation group is a timewarp effect.

Succeeds if all of the following are true:

  • the pIsTimeWarp pointer is valid.

If this method fails nothing will be written to *pIsTimeWarp.

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

AAFRESULT_NULL_PARAM

  • pIsTimeWarp arg is NULL.
Parameters:
pIsTimeWarp[out, retval] Returned boolean value
HRESULT IAAFOperationGroup::IsValidTranOperation ( [out] aafBoolean_t *  pValidTransition)

Verifies that the input operation group object can be used in a transition.

Succeeds if all of the following are true:

  • the pValidTransition pointer is valid.

If this method fails nothing will be written to *pValidTransition.

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

AAFRESULT_NULL_PARAM

  • pValidTransition arg is NULL.
Parameters:
pValidTransition[out] TRUE if the operation group is valid in a transition
HRESULT IAAFOperationGroup::LookupParameter ( [in] aafArgIDType_constref  argID,
[out] IAAFParameter **  ppParameter 
)

Given an argID, returns the corresponding parameter slot and parameter slot value.

Succeeds if all of the following are true:

  • the ppParameter pointer is valid.

If this method fails nothing will be written to *ppParameter.

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_MISSING_PARAMETER

  • The given argID is not present.

AAFRESULT_NULL_PARAM

  • ppParameter arg is NULL.
Parameters:
argID[in] Arg ID
ppParameter[out] Parameter object
HRESULT IAAFOperationGroup::PrependInputSegment ( [in] IAAFSegment pSegment)

Prepends another input segment to an operation group.

Succeeds if all of the following are true:

  • the pSegment 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_DUPLICATE_INDEX

  • The given index value is already present.

AAFRESULT_NULL_PARAM

  • pSegment arg is NULL.
Parameters:
pSegment[in] Segment to place in operation group
HRESULT IAAFOperationGroup::RemoveInputSegmentAt ( [in] aafUInt32  index)

Removes the segment at the given index.

Existing segments at higher indices are moved down by one to accommodate.

Succeeds if all of the following are true:

  • index is less than the result of CountInputSegments().

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_MISSING_INDEX

  • The given index value is not present.
Parameters:
index[in] 0-based index into the effect inputs
HRESULT IAAFOperationGroup::SetBypassOverride ( [in] aafUInt32  bypassOverride)

This function sets the optional bypass override property on the given operation group object.

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

Parameters:
bypassOverride[in] Bypass override
HRESULT IAAFOperationGroup::SetOperationDefinition ( [in] IAAFOperationDef pOperationDef)

This function sets the operation definition for the given operation group.

Succeeds if all of the following are true:

  • the pOperationDef 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

AAFRESULT_NULL_PARAM

  • pOperationDef arg is NULL.
Parameters:
pOperationDef[in] Operation definition object
HRESULT IAAFOperationGroup::SetRender ( [in] IAAFSourceReference ppSourceRef)

This function sets the final rendering for the given operation group to the input source clip.

(Multiple renderings may exist if the source clip refers to a master mob that contains a Essence group.)

Succeeds if all of the following are true:

  • the ppSourceRef 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

AAFRESULT_NULL_PARAM

  • ppSourceRef arg is NULL.
Parameters:
ppSourceRef[in] A segment containing a representation of the rendering

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