The IAAFOperationGroup interface is implemented by objects describe an operation (such as an effect) affecting the interpretation of zero or more input segments. More...
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. |
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:
HRESULT IAAFOperationGroup::AddParameter | ( | [in] IAAFParameter * | pParameter | ) |
Adds a new parameter object.
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_DUPLICATE_PARAMETER
AAFRESULT_NULL_PARAM
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:
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_DUPLICATE_INDEX
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_PROP_NOT_PRESENT
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_MISSING_INDEX
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_PROP_NOT_PRESENT
AAFRESULT_NULL_PARAM
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:
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_NULL_PARAM
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_PROP_NOT_PRESENT
AAFRESULT_NULL_PARAM
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.
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:
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_DUPLICATE_INDEX
AAFRESULT_BAD_INDEX
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_NOT_INITIALIZED
AAFRESULT_NULL_PARAM
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:
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
AAFRESULT_MISSING_PARAMETER
AAFRESULT_NULL_PARAM
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:
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_DUPLICATE_INDEX
AAFRESULT_NULL_PARAM
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:
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_MISSING_INDEX
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
AAFRESULT_NOT_INITIALIZED
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:
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
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:
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
ppSourceRef | [in] A segment containing a representation of the rendering |