AAFA Developer Support

Main Page | Class List | File List | Class Members

IAAFPlugin Interface Reference

List of all members.

Detailed Description

The AAFPlugin interface describes the calls of a plugin.

The AAFPluginManager keeps a copy of each plugin in a table, along with cached copies of pertinant metadata about the plugin, and instantiates a copy of the plugin.

Definition at line 85 of file AAFPlugin.idl.

Public Member Functions

HRESULT CountDefinitions ([out] aafUInt32 *pDefCount)
 If this method fails nothing will be written to *pDefCount.
HRESULT GetIndexedDefinitionID ([in] aafUInt32 index,[out] aafUID_t *pPluginID)
 Succeeds if all of the following are true: - the pPluginID pointer is valid.
HRESULT GetPluginDescriptorID ([out] aafUID_t *pPluginID)
 This method returns the unique ID of the AAFPluginDescriptor associated with this Plugin.
HRESULT GetIndexedDefinitionObject ([in] aafUInt32 index,[in] IAAFDictionary *pDictionary,[out] IAAFDefObject **pDefObject)
 Succeeds if all of the following are true: - the pDefObject pointer is valid.
HRESULT CreateDescriptor ([in] IAAFDictionary *pDictionary,[out] IAAFPluginDef **pPluginDef)
 This method manufactures a plugin descriptor of the correct class for this plugin, and fills in the values.


Member Function Documentation

HRESULT IAAFPlugin::CountDefinitions [out] aafUInt32 *  pDefCount  ) 
 

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

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

  • pDefCount arg is NULL.

Parameters:
pDefCount [out] The number of definitions associated with this plugin

HRESULT IAAFPlugin::CreateDescriptor [in] IAAFDictionary pDictionary,
[out] IAAFPluginDef **  pPluginDef
 

This method manufactures a plugin descriptor of the correct class for this plugin, and fills in the values.

You must call QueryInterface on the result in order to find the corret interface. The dictionary supplied should be for the file where the descriptor will go, but the descriptor will not be added to the file by this function. The supplied dictionary also needs no former knowledge of the new descriptor. This function will be called by the plugin manager in order to add the correct plugin descriptors to a file.

Succeeds if all of the following are true:

  • the pPluginDef pointer is valid.

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

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

  • pPluginDef arg is NULL.

Parameters:
pDictionary [in] The dictionary to use when creating the descriptor
pPluginDef [out] The interface of the pluggable definition

HRESULT IAAFPlugin::GetIndexedDefinitionID [in] aafUInt32  index,
[out] aafUID_t *  pPluginID
 

Succeeds if all of the following are true: - the pPluginID pointer is valid.

  • Index is within range.

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

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

  • pPluginID arg is NULL.

AAFRESULT_INDEX_RANGE

  • The index value is out of range

Parameters:
index [in] An index from 0 to the number of definitions - 1
pPluginID [out] The unique media object id

HRESULT IAAFPlugin::GetIndexedDefinitionObject [in] aafUInt32  index,
[in] IAAFDictionary pDictionary,
[out] IAAFDefObject **  pDefObject
 

Succeeds if all of the following are true: - the pDefObject pointer is valid.

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

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

  • pDefObject arg is NULL.

Parameters:
index [in] An index from 0 to the number of definitions - 1
pDictionary [in] The dictionary to use when creating the definition
pDefObject [out] The interface of the pluggable definition

HRESULT IAAFPlugin::GetPluginDescriptorID [out] aafUID_t *  pPluginID  ) 
 

This method returns the unique ID of the AAFPluginDescriptor associated with this Plugin.

This method is called by the plugin manager to determine if a particular plugin descriptor (indicating a particular plugin) is already in the current file, so that the full create function does not need to be called.

Succeeds if all of the following are true:

  • the pPluginID pointer is valid.

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

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

  • pPluginID arg is NULL.

Parameters:
pPluginID [out] The unique media object id


Generated on Thu Feb 17 09:34:31 2005 for by doxygen 1.4.1