AAFA Developer Support

Public Member Functions
IAAFOperationDef Interface Reference

The IAAFOperationDef interface is implemented by objects that specify an operation definition. More...

List of all members.

Public Member Functions

HRESULT Initialize ([in, ref] aafUID_constref id,[in, string] aafCharacter_constptr pName,[in, string] aafCharacter_constptr pDescription)
 Init all fields of a definition object.
HRESULT GetDataDef ([out] IAAFDataDef **ppDataDef)
 Places the DataDefinition object attached to this IAAFOperationDef into the *ppDataDef argument.
HRESULT SetDataDef ([in] IAAFDataDef *pDataDef)
 Sets the IAAFDataDefinition of this IAAFOperationDef to be the given one.
HRESULT IsTimeWarp ([out, retval] aafBoolean_t *bIsTimeWarp)
 Returns the value of isTimeWarp.
HRESULT SetIsTimeWarp ([in] aafBoolean_t IsTimeWarp)
 Sets the IsTimeWarp boolean.
HRESULT PrependDegradeToOperation ([in] IAAFOperationDef *pOperationDef)
 Prepend another operation definition to the DegradeTo list of definitions.
HRESULT AppendDegradeToOperation ([in] IAAFOperationDef *pOperationDef)
 Append another operation definition to the DegradeTo list of definitions.
HRESULT InsertDegradeToOperationAt ([in] aafUInt32 index,[in] IAAFOperationDef *pOperationDef)
 Insert an operation definition into the DegradeTo list of definitions at the given index.
HRESULT RemoveDegradeToOperationAt ([in] aafUInt32 index)
 Removes the indexed operation definition from the DegradeTo list of definitions.
HRESULT GetDegradeToOperations ([out, retval] IEnumAAFOperationDefs **ppEnum)
 Return an enumerator for aaf operation definitions, ordered from the most desirable to the least desirable alternative.
HRESULT CountDegradeToOperations ([out, retval] aafUInt32 *pResult)
 Retrieves the number of Degrade To operations currently present and places that number in *pResult.
HRESULT GetCategory ([out] aafUID_t *pValue)
 This method returns an AUID indicating the category of the given operation.
HRESULT SetCategory ([in, ref] aafUID_constref value)
 This method sets an AUID indicating the category of the given operation.
HRESULT GetNumberInputs ([out, retval] aafInt32 *pNumberInputs)
 Gets the Number of input media segments.
HRESULT SetNumberInputs ([in] aafInt32 NumberInputs)
 Sets the Number of input media segments.
HRESULT GetBypass ([out, retval] aafUInt32 *pBypass)
 Gets the Bypass media segment index, which is a value from 0 to one less than that returned by GetNumberInputs().
HRESULT SetBypass ([in] aafUInt32 bypass)
 Sets the media segment index, which is a value from 0 to one less than that returned by GetNumberInputs().
HRESULT AddParameterDef ([in] IAAFParameterDef *pParameterDef)
 Add the Parameter Definition object to the unordered list of parameter definitions.
HRESULT GetParameterDefs ([out, retval] IEnumAAFParameterDefs **ppEnum)
 Return an enumerator for the unordered list of AAF Parameter definitions.
HRESULT CountParameterDefs ([out] aafUInt32 *pResult)
 This method returns the number of parameter defs.
HRESULT LookupParameterDef ([in] aafUID_constref parameterDefId,[out] IAAFParameterDef **ppParameterDef)
 This method looks up the parameter def corresponding to the given ID.

Detailed Description

The IAAFOperationDef interface is implemented by objects that specify an operation definition.

Operation definitions specify which parameters are possible on an operation, while an AAFOperationGroup specifies specific parameters and input segments for a particular operation invocation.

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

IAAFDefObject

Definition at line 17014 of file AAF.idl.


Member Function Documentation

HRESULT IAAFOperationDef::AddParameterDef ( [in] IAAFParameterDef pParameterDef)

Add the Parameter Definition object to the unordered list of parameter definitions.

Succeeds if all of the following are true:

  • the pAAFParameterDef pointer is valid.
  • the given Parameter Definition does not exists in this Operation Definition already

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

  • pAAFParameterDef is null.

AAFRESULT_OBJECT_ALREADY_ATTACHED

  • pAAFParameterDef is already in this OperationDef
Parameters:
pParameterDef[in] Parameter definition Object
HRESULT IAAFOperationDef::AppendDegradeToOperation ( [in] IAAFOperationDef pOperationDef)

Append another operation definition to the DegradeTo list of definitions.

Use this function to add an operation definition to be scanned last when searching for the a replacement (a less desirable alternate operation).

Succeeds if all of the following are true:

  • the pOperationDef pointer is valid.

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

  • pOperationDef is null.
Parameters:
pOperationDef[in] Degrade To operation Definition Object
HRESULT IAAFOperationDef::CountDegradeToOperations ( [out, retval] aafUInt32 *  pResult)

Retrieves the number of Degrade To operations currently present and places that number in *pResult.

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 is null.
Parameters:
pResult[out, retval] resulting count of Degrade To operations
HRESULT IAAFOperationDef::CountParameterDefs ( [out] aafUInt32 *  pResult)

This method returns the number of parameter defs.

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 defs
HRESULT IAAFOperationDef::GetBypass ( [out, retval] aafUInt32 *  pBypass)

Gets the Bypass media segment index, which is a value from 0 to one less than that returned by GetNumberInputs().

This value allows the client application to pick one of the inputs (foreground, background, etc.) to stand in for the effect if it is not available, and none of the degrade to effects are available.

Succeeds if all of the following are true:

  • the pBypass pointer is valid.

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

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

  • pBypass arg is NULL.
Parameters:
pBypass[out,retval] Pointer to a Bypass media segment index
HRESULT IAAFOperationDef::GetCategory ( [out] aafUID_t *  pValue)

This method returns an AUID indicating the category of the given operation.

Succeeds if all of the following are true:

  • the pValue pointer is valid.

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

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

  • pValue arg is NULL.
Parameters:
pValue[out] The enumeration describing the current category
HRESULT IAAFOperationDef::GetDataDef ( [out] IAAFDataDef **  ppDataDef)

Places the DataDefinition object attached to this IAAFOperationDef into the *ppDataDef argument.

The data definition will match one of the AUIDs in the file AAFDataDefs.h, (which includes kAAFDataDef_Picture, and kAAFDataDef_Sound), and indicates what type of data the operation will be performed upon. For example, a video dissolve will have the data def kAAFDataDef_Picture. If a data definition is used which is not from AAFDataDefs.h, then the client is responsible for making sure that a data definition object with that ID exists in the dictionary. The SDK will take care of creating the standard data definitions.

Succeeds if all of the following are true:

  • the ppDataDefID pointer is valid.
  • A valid DataDefinition 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

AAFRESULT_NULL_PARAM

  • ppDataDef is null.

AAFRESULT_INVALID_DATA_DEF

  • There is no IAAFDataDefinition. There has to be one of some kind for this to be a valid operation definition.
Parameters:
ppDataDef[out] Returned DataDefinition object
HRESULT IAAFOperationDef::GetDegradeToOperations ( [out, retval] IEnumAAFOperationDefs **  ppEnum)

Return an enumerator for aaf operation definitions, ordered from the most desirable to the least desirable alternative.

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 is null.
Parameters:
ppEnum[out, retval] Operation Definition Enumeration
HRESULT IAAFOperationDef::GetNumberInputs ( [out, retval] aafInt32 *  pNumberInputs)

Gets the Number of input media segments.

Succeeds if all of the following are true:

  • the pNumberInputs pointer is valid.

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

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

  • pNumberInputs arg is NULL.
Parameters:
pNumberInputs[out, retval] Pointer to Number of Inputs
HRESULT IAAFOperationDef::GetParameterDefs ( [out, retval] IEnumAAFParameterDefs **  ppEnum)

Return an enumerator for the unordered list of AAF Parameter definitions.

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 is null.
Parameters:
ppEnum[out,retval] Parameter definition enumeration
HRESULT IAAFOperationDef::Initialize ( [in, ref] aafUID_constref  id,
[in, string] aafCharacter_constptr  pName,
[in, string] aafCharacter_constptr  pDescription 
)

Init all fields of a definition object.

Parameters:
id[in, ref] AUID for new DefObject
pName[in, string] Name for new DefObject
pDescription[in, string] Description for new DefObject
HRESULT IAAFOperationDef::InsertDegradeToOperationAt ( [in] aafUInt32  index,
[in] IAAFOperationDef pOperationDef 
)

Insert an operation definition into the DegradeTo list of definitions at the given index.

Operation definitions already existing at the given and higher indices will be moved up to the next higher index 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

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

AAFRESULT_NULL_PARAM

  • pOperationDef is null.

AAFRESULT_BADINDEX

Parameters:
index[in] index where operation def is to be inserted
pOperationDef[in] Degrade To operation Definition Object
HRESULT IAAFOperationDef::IsTimeWarp ( [out, retval] aafBoolean_t *  bIsTimeWarp)

Returns the value of isTimeWarp.

IsTimeWarp is true if the length of an IAAFOperationGroup is different from the lengths of the input segments. For example, a slow motion effect.

Succeeds if all of the following are true:

  • the bIsTimeWarp pointer is valid.

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

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

  • bIsTimeWarp arg is NULL.
Parameters:
bIsTimeWarp[out, retval] pointer to the return value
HRESULT IAAFOperationDef::LookupParameterDef ( [in] aafUID_constref  parameterDefId,
[out] IAAFParameterDef **  ppParameterDef 
)

This method looks up the parameter def corresponding to the given ID.

Succeeds if all of the following are true:

  • the given ID corresponds to a known parameter def
  • the ppParameterDef pointer is valid.

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

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

  • pParameterDef arg is NULL.

AAFRESULT_OBJECT_NOT_FOUND

  • given ID does not correspond to a known parameter def.
Parameters:
parameterDefId[in] ID of parameter def to look up
ppParameterDef[out] resulting parameter def
HRESULT IAAFOperationDef::PrependDegradeToOperation ( [in] IAAFOperationDef pOperationDef)

Prepend another operation definition to the DegradeTo list of definitions.

Use this function to add an operation definition to be scanned first when searching for the a replacement (a more desirable alternate operation).

Succeeds if all of the following are true:

  • the pOperationDef pointer is valid.

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

  • pOperationDef is null.
Parameters:
pOperationDef[in] Degrade To Operation Definition Object
HRESULT IAAFOperationDef::RemoveDegradeToOperationAt ( [in] aafUInt32  index)

Removes the indexed operation definition from the DegradeTo list of definitions.

Operation definitions already existing at indices higher than the given index will be moved down to the next lower index 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

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

AAFRESULT_BADINDEX

Parameters:
index[in] index where operation def is to be inserted
HRESULT IAAFOperationDef::SetBypass ( [in] aafUInt32  bypass)

Sets the media segment index, which is a value from 0 to one less than that returned by GetNumberInputs().

This value allows the client application to pick one of the inputs (foreground, background, etc.) to stand in for the effect if it is not available, and none of the degrade to effects are available.

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:
bypass[in] Bypass media segment index
HRESULT IAAFOperationDef::SetCategory ( [in, ref] aafUID_constref  value)

This method sets an AUID indicating the category of the given operation.

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.)
Parameters:
value[in, ref] The enumeration describing the current categor
HRESULT IAAFOperationDef::SetDataDef ( [in] IAAFDataDef pDataDef)

Sets the IAAFDataDefinition of this IAAFOperationDef to be the given one.

The data definition will match one of the AUIDs in the file AAFDataDefs.h, (which includes kAAFDataDef_Picture, and kAAFDataDef_Sound), and indicates what type of data the operation will be performed upon. For example, a video dissolve will have the data def kAAFDataDef_Picture. If a data definition is used which is not from AAFDataDefs.h, then the client is responsible for making sure that a data definition object with that ID exists in the dictionary. The SDK will take care of creating the standard data definitions.

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

  • pDataDef is null.

AAFRESULT_NOT_INITIALIZED

Parameters:
pDataDef[in] Essence Descriptor object
HRESULT IAAFOperationDef::SetIsTimeWarp ( [in] aafBoolean_t  IsTimeWarp)

Sets the IsTimeWarp boolean.

IsTimeWarp is true if the length of an IAAFOperationGroup is different from the lengths of the input segments. For example, a slow motion effect.

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.)
Parameters:
IsTimeWarp[in] is timewarp value
HRESULT IAAFOperationDef::SetNumberInputs ( [in] aafInt32  NumberInputs)

Sets the Number of input media segments.

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:
NumberInputs[in] Number of Inputs

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