AAFA Developer Support

Public Member Functions
IAAFPluginDef Interface Reference

An object which describes a particular implementation of a plug-in interface. More...

List of all members.

Public Member Functions

HRESULT Initialize ([in, ref] aafUID_constref id,[in] aafCharacter_constptr pName,[in] aafCharacter_constptr pDescription)
 Init all fields of a definition object.
HRESULT GetCategoryClass ([out] aafUID_t *pCategoryClass)
 Obtains the Category Class, which is identifies the stored classID of the subclass of AAFPluggableDefinition which references this plugin descriptor.
HRESULT SetCategoryClass ([in, ref] aafUID_constref categoryClass)
 Sets the Category Class, which is identifies the stored classID of the subclass of AAFPluggableDefinition which references this plugin descriptor.
HRESULT GetPluginVersion ([out] aafVersionType_t *pVersion)
 Gets the Plugin Version property associated with this plugin descriptor and places it into *pVersion.
HRESULT SetPluginVersion ([in] aafVersionType_t *pVersion)
 Sets the plugin version property of this plugin descriptor.
HRESULT SetPluginVersionString ([in, string] aafCharacter_constptr pPluginVersionString)
 Sets the Plugin Version String property.
HRESULT GetPluginVersionString ([out, string, size_is(bufSize)] aafCharacter *pPluginVersionString,[in] aafUInt32 bufSize)
 Gets the Plugin Version String property.
HRESULT GetPluginVersionStringBufLen ([out] aafUInt32 *pBufSize)
 Returns size of buffer (in bytes) required for GetPluginVersionString().
HRESULT SetPluginManufacturerName ([in, string] aafCharacter_constptr pPluginManufacturerName)
 Sets the Plugin Manufacturer Name string property.
HRESULT GetPluginManufacturerName ([out, string, size_is(bufSize)] aafCharacter *pPluginManufacturerName,[in] aafUInt32 bufSize)
 Gets the Plugin Manufacturer Name string property.
HRESULT GetPluginManufacturerNameBufLen ([out] aafUInt32 *pBufSize)
 Returns size of buffer (in bytes) required for GetPluginManufacturerName().
HRESULT GetManufacturerInfo ([out, retval] IAAFNetworkLocator **ppResult)
 This method will get an AAFNetworkLocator pointing to ManufacturerInfo for this plugin and place an interface for the locator into the **ppResult argument.
HRESULT SetManufacturerInfo ([in] IAAFNetworkLocator *pManufacturerInfo)
 This method will set a locator pointing to the location of ManufacturerInfo for this plugin.
HRESULT GetManufacturerID ([out] aafUID_t *pManufacturerID)
 Obtains the manufacturer ID, which is identifies the manfacturer of this plugin.
HRESULT SetManufacturerID ([in, ref] aafUID_constref manufacturerID)
 Sets the manufacturer ID, which is identifies the manufacturer of this plugin.
HRESULT GetHardwarePlatform ([out] aafHardwarePlatform_t *pHardwarePlatform)
 Obtains the hardware platform ID, which identifies the hardware platform which is required to use this plugin.
HRESULT SetHardwarePlatform ([in] aafHardwarePlatform_constref hardwarePlatform)
 Sets the hardware platform ID, which identifies the hardware platform which is required to use this plugin.
HRESULT GetPlatformVersionRange ([out] aafVersionType_t *pMinVersion,[out] aafVersionType_t *pMaxVersion)
 Gets the minimum and maximum platform Version properties associated with this plugin descriptor and places it into pMinVersion, and *pMaxVersion.
HRESULT SetPlatformMinimumVersion ([in] aafVersionType_constref minVersion)
 Sets the maximum platform Version property of this plugin descriptor.
HRESULT SetPlatformMaximumVersion ([in] aafVersionType_constref maxVersion)
 Sets the maximum platform Version properties associated with this plugin descriptor.
HRESULT GetEngine ([out] aafEngine_t *pEngine)
 Obtains the software engine ID, which identifies the software subsystem used for essence management and playback used by the plugin.
HRESULT SetEngine ([in] aafEngine_constref engine)
 Sets the software engine ID, which identifies the software subsystem used for essence management and playback used by the plugin.
HRESULT GetEngineVersionRange ([out] aafVersionType_t *pMinVersion,[out] aafVersionType_t *pMaxVersion)
 Gets the minimum and maximum engine Version properties of the engine which is associated with this plugin and places it into pMinVersion, and *pMaxVersion.
HRESULT SetEngineMinimumVersion ([in] aafVersionType_constref minVersion)
 Sets the minimum engine Version property to the minimum useful version of the engine which is associated with this plugin.
HRESULT SetEngineMaximumVersion ([in] aafVersionType_constref pMaxVersion)
 Sets the minimum engine Version property to the maximum useful version of the engine which is associated with this plugin.
HRESULT GetPluginAPI ([out] aafPluginAPI_t *pPluginAPI)
 Obtains the manufacturer ID Class, which identifies the plugin interface supported by the plugin.
HRESULT SetPluginAPI ([in] aafPluginAPI_constref pluginAPI)
 Obtains the manufacturer ID, which identifies the plugin interface supported by the plugin.
HRESULT GetPluginAPIVersionRange ([out] aafVersionType_t *pMinVersion,[out] aafVersionType_t *pMaxVersion)
 Gets the minimum and maximum plugin API Version properties of the plugin API which is associated with this plugin descriptor and places it into *pMinVersion, and *pMaxVersion.
HRESULT SetPluginAPIMinimumVersion ([out] aafVersionType_constref minVersion)
 Sets the minimum plugin API Version property to the minimum useful version of the plugin API which is associated with this plugin.
HRESULT SetPluginAPIMaximumVersion ([in] aafVersionType_constref maxVersion)
 Sets the maximum engine Version property to the maximum useful version of the plugin API which is associated with this plugin.
HRESULT IsSoftwareOnly ([out] aafBoolean_t *pIsSoftwareOnly)
 Tells whether the given plugin is capable of running in a software-only environment.
HRESULT SetIsSoftwareOnly ([in] aafBoolean_t isSoftwareOnly)
 Sets whether the given plugin is capable of running in a software-only environment, and returns AAFFalse if any hardware is required.
HRESULT IsAccelerated ([out] aafBoolean_t *pIsAccelerated)
 Tells whether the given plugin is capable of running with a hardware accelerator.
HRESULT SetIsAccelerated ([in] aafBoolean_t isAccelerated)
 Tells whether the given plugin is capable of running with a hardware accelerator.
HRESULT SupportsAuthentication ([out] aafBoolean_t *pSupportsAuthentication)
 Tells whether the given plugin is capable of supporting authentication.
HRESULT SetSupportsAuthentication ([in] aafBoolean_t SupportsAuthentication)
 Tells whether the given plugin is capable of supporting authentication.
HRESULT CountLocators ([out] aafUInt32 *pResult)
 Return the number of locators attached to this plugin descriptor.
HRESULT AppendLocator ([in] IAAFLocator *pLocator)
 Append another locator to this plugin descriptor.
HRESULT PrependLocator ([in] IAAFLocator *pLocator)
 Append another locator to this plugin descriptor.
HRESULT InsertLocatorAt ([in] aafUInt32 index,[in] IAAFLocator *pLocator)
 Insert another locator to this plugin descriptor at the given index.
HRESULT GetLocatorAt ([in] aafUInt32 index,[out] IAAFLocator **ppLocator)
 Gets the locator which exists in this plugin descriptor at the given index.
HRESULT RemoveLocatorAt ([in] aafUInt32 index)
 Removes the locator which exists in this plugin descriptor at the given index.
HRESULT GetLocators ([out, retval] IEnumAAFPluginLocators **ppEnum)
 Places an IEnumAAFPluginLocators enumerator for the plugin locators contained in the AAFPluginDescriptor into the *ppEnum argument.
HRESULT SetDefinitionObjectID ([in] aafUID_t pDef)
 Sets the definition object handled by this plugin.
HRESULT GetDefinitionObjectID ([retval, out] aafUID_t *ppDef)
 Gets the definition object handled by this plugin.

Detailed Description

An object which describes a particular implementation of a plug-in interface.

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

Objects that implement IAAFPluginDef also implement the following interfaces:

Definition at line 20463 of file AAF.idl.


Member Function Documentation

HRESULT IAAFPluginDef::AppendLocator ( [in] IAAFLocator pLocator)

Append another locator to this plugin descriptor.

Use this function to add a locator to be scanned last when searching for the plugin (a secondary location for the plugin).

Succeeds if all of the following are true:

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

  • pLocator is null.
Parameters:
pLocator[in] Locator to append
HRESULT IAAFPluginDef::CountLocators ( [out] aafUInt32 *  pResult)

Return the number of locators attached to this plugin descriptor.

The number of locators may be zero if the plugin is in the current file.

Succeeds if all of the following are true:

  • the pCount pointer is valid.

If this method fails nothing is written to *pCount.

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

  • pCount is null.
Parameters:
pResult[out] Returns the number of locators
HRESULT IAAFPluginDef::GetCategoryClass ( [out] aafUID_t *  pCategoryClass)

Obtains the Category Class, which is identifies the stored classID of the subclass of AAFPluggableDefinition which references this plugin descriptor.

This ID is written into the caller-allocated aafUID_t specified by the pCategoryClass argument.

Succeeds if all of the following are true:

  • the pCategoryClass pointer is valid.

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

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

  • pCategoryClass arg is NULL.
Parameters:
pCategoryClass[out] The CategoryClass
HRESULT IAAFPluginDef::GetDefinitionObjectID ( [retval, out] aafUID_t *  ppDef)

Gets the definition object handled by this plugin.

Parameters:
ppDef[retval,out] AUID of an AAFDefinitionObject
HRESULT IAAFPluginDef::GetEngine ( [out] aafEngine_t *  pEngine)

Obtains the software engine ID, which identifies the software subsystem used for essence management and playback used by the plugin.

This ID is written into the caller-allocated variable specified by the pHardwarePlatform argument. The type aafEngine_t is an extensible, enumerated type, and the value given must be either standard or in the type dictionary.

Succeeds if all of the following are true:

  • the pHardwarePlatform pointer is valid.

If this method fails nothing will be written to pHardwarePlatform.

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

  • pEngine arg is NULL.
Parameters:
pEngine[out] The software engine
HRESULT IAAFPluginDef::GetEngineVersionRange ( [out] aafVersionType_t *  pMinVersion,
[out] aafVersionType_t *  pMaxVersion 
)

Gets the minimum and maximum engine Version properties of the engine which is associated with this plugin and places it into pMinVersion, and *pMaxVersion.

These are the minimum and maximum versions of the engine for which this plugin will function.

Succeeds if all of the following are true:

  • both pMinVersion and pMaxVersion pointers are valid.

If this method fails, nothing will be written to *pMinVersion or pMaxVersion.

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

  • pMinVersion or pMaxVersion arg is NULL.
Parameters:
pMinVersion[out] The Minimum Engine Version
pMaxVersion[out] The Maximum Engine Version
HRESULT IAAFPluginDef::GetHardwarePlatform ( [out] aafHardwarePlatform_t *  pHardwarePlatform)

Obtains the hardware platform ID, which identifies the hardware platform which is required to use this plugin.

This ID is written into the caller-allocated variable specified by the pHardwarePlatform argument. The type aafHardwarePlatform_t is an extensible enumerated type, and the value given must be either standard or in the type dictionary.

Succeeds if all of the following are true:

  • the pHardwarePlatform pointer is valid.

If this method fails nothing will be written to pHardwarePlatform.

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

  • pHardwarePlatform arg is NULL.
Parameters:
pHardwarePlatform[out] The HardwarePlatform
HRESULT IAAFPluginDef::GetLocatorAt ( [in] aafUInt32  index,
[out] IAAFLocator **  ppLocator 
)

Gets the locator which exists in this plugin descriptor at the given index.

Succeeds if all of the following are true:

  • index is less than the value returned by CountLocators().
  • the ppLocator 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

  • ppLocator is null.

AAFRESULT_BADINDEX

Parameters:
index[in] index to insert locator
ppLocator[out] returned Locator
HRESULT IAAFPluginDef::GetLocators ( [out, retval] IEnumAAFPluginLocators **  ppEnum)

Places an IEnumAAFPluginLocators enumerator for the plugin locators contained in the AAFPluginDescriptor 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

AAFRESULT_NULL_PARAM

  • ppEnum is null.

E_FAIL

  • Failed to create the enumerator.
Parameters:
ppEnum[out, retval] Plugin Locator Enumeration
HRESULT IAAFPluginDef::GetManufacturerID ( [out] aafUID_t *  pManufacturerID)

Obtains the manufacturer ID, which is identifies the manfacturer of this plugin.

This ID is written into the caller-allocated aafUID_t specified by the pManufacturerID argument.

Succeeds if all of the following are true:

  • the pManufacturerID pointer is valid.

If this method fails nothing will be written to pManufacturerID.

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

  • pManufacturerID arg is NULL.
Parameters:
pManufacturerID[out] The ManufacturerID
HRESULT IAAFPluginDef::GetManufacturerInfo ( [out, retval] IAAFNetworkLocator **  ppResult)

This method will get an AAFNetworkLocator pointing to ManufacturerInfo for this plugin and place an interface for the locator into the **ppResult argument.

If a ManufacturerInfo locator exists, the result will be AddRef()ed. If not, the result will be NULL.

Succeeds if all of the following are true:

  • the ppResult pointer is valid.

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

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

  • ppResult arg is NULL.
Parameters:
ppResult[out, retval] ManufacturerInfo property value
HRESULT IAAFPluginDef::GetPlatformVersionRange ( [out] aafVersionType_t *  pMinVersion,
[out] aafVersionType_t *  pMaxVersion 
)

Gets the minimum and maximum platform Version properties associated with this plugin descriptor and places it into pMinVersion, and *pMaxVersion.

These are the minimum and maximum versions of the platform for which this plugin will function.

Succeeds if all of the following are true:

  • both pMinVersion and pMaxVersion pointers are valid.

If this method fails, nothing will be written to *pMinVersion or pMaxVersion.

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

  • pMinVersion or pMaxVersion arg is NULL.
Parameters:
pMinVersion[out] The Minimum Platform Version
pMaxVersion[out] The Maximum Platform Version
HRESULT IAAFPluginDef::GetPluginAPI ( [out] aafPluginAPI_t *  pPluginAPI)

Obtains the manufacturer ID Class, which identifies the plugin interface supported by the plugin.

This ID is written into the caller-allocated variable specified by the pPluginAPI argument. The type aafPluginAPI_t is an extensible enumerated type, and the value given must be either standard or in the type dictionary.

Succeeds if all of the following are true:

  • the pPluginAPI pointer is valid.

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

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

  • pPluginAPI arg is NULL.
Parameters:
pPluginAPI[out] The PluginAPI
HRESULT IAAFPluginDef::GetPluginAPIVersionRange ( [out] aafVersionType_t *  pMinVersion,
[out] aafVersionType_t *  pMaxVersion 
)

Gets the minimum and maximum plugin API Version properties of the plugin API which is associated with this plugin descriptor and places it into *pMinVersion, and *pMaxVersion.

These are the minimum and maximum versions of the PluginAPI for which this plugin will function.

Succeeds if all of the following are true:

  • both pMinVersion and pMaxVersion pointers are valid.

If this method fails, nothing will be written to *pMinVersion or pMaxVersion.

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

  • pMinVersion or pMaxVersion arg is NULL.
Parameters:
pMinVersion[out] The Minimum Plugin API Version
pMaxVersion[out] The Maximum Plugin API Version
HRESULT IAAFPluginDef::GetPluginManufacturerName ( [out, string, size_is(bufSize)] aafCharacter *  pPluginManufacturerName,
[in] aafUInt32  bufSize 
)

Gets the Plugin Manufacturer Name string property.

Writes the PluginManufacturerName property, with a trailing null character, into the pPluginManufacturerName buffer. The buffer is allocated by the caller. The size of the buffer is given by bufSize. If the PluginManufacturerName property has not yet been set, a zero-length string will be written (that is, only the trailing null character).

Caller may call GetPluginManufacturerNameBufLen() to determine the required buffer size.

If this method fails nothing will be written to pPluginManufacturerName.

Succeeds if:

  • The pPluginManufacturerName pointer is valid.
  • bufSize indicates that the buffer is large enough to hold PluginManufacturerName.

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

  • pPluginManufacturerName arg is NULL.

AAFRESULT_SMALL_BUF

  • bufSize indicates that the allocated buffer is not large enough to hold PluginManufacturerName.
Parameters:
pPluginManufacturerName[out, string, size_is(bufSize)] buffer into which PluginManufacturerName is to be written
bufSize[in] size of *pPluginManufacturerName buffer in bytes
HRESULT IAAFPluginDef::GetPluginManufacturerNameBufLen ( [out] aafUInt32 *  pBufSize)

Returns size of buffer (in bytes) required for GetPluginManufacturerName().

Succeeds if:

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

  • pBufSize arg is NULL.
Parameters:
pBufSize[out] size of required buffer, in bytes
HRESULT IAAFPluginDef::GetPluginVersion ( [out] aafVersionType_t *  pVersion)

Gets the Plugin Version property associated with this plugin descriptor and places it into *pVersion.

Succeeds if all of the following are true:

  • the pVersion pointer is valid.

If this method fails, nothing will be written to *pVersion.

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

  • pVersion arg is NULL.
Parameters:
pVersion[out] The Plugin Version
HRESULT IAAFPluginDef::GetPluginVersionString ( [out, string, size_is(bufSize)] aafCharacter *  pPluginVersionString,
[in] aafUInt32  bufSize 
)

Gets the Plugin Version String property.

Writes the PluginVersionString property, with a trailing null character, into the pPluginVersionString buffer. The buffer is allocated by the caller. The size of the buffer is given by bufSize. If the PluginVersionString property has not yet been set, a zero-length string will be written (that is, only the trailing null character).

Caller may call GetPluginVersionStringBufLen() to determine the required buffer size.

If this method fails nothing will be written to pPluginVersionString.

Succeeds if:

  • The pPluginVersionString pointer is valid.
  • bufSize indicates that the buffer is large enough to hold PluginVersionString.

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

  • pPluginVersionString arg is NULL.

AAFRESULT_SMALL_BUF

  • bufSize indicates that the allocated buffer is not large enough to hold PluginVersionString.
Parameters:
pPluginVersionString[out, string, size_is(bufSize)] buffer into which PluginVersionString is to be written
bufSize[in] size of *pPluginVersionString buffer in bytes
HRESULT IAAFPluginDef::GetPluginVersionStringBufLen ( [out] aafUInt32 *  pBufSize)

Returns size of buffer (in bytes) required for GetPluginVersionString().

Succeeds if:

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

  • pBufSize arg is NULL.
Parameters:
pBufSize[out] size of required buffer, in bytes
HRESULT IAAFPluginDef::Initialize ( [in, ref] aafUID_constref  id,
[in] aafCharacter_constptr  pName,
[in] aafCharacter_constptr  pDescription 
)

Init all fields of a definition object.

Parameters:
id[in, ref] AUID for new DefObject
pName[in] Name for new DefObject
pDescription[in] Description for new DefObject
HRESULT IAAFPluginDef::InsertLocatorAt ( [in] aafUInt32  index,
[in] IAAFLocator pLocator 
)

Insert another locator to this plugin descriptor at the given index.

Locators already existing at the named and higher indices will be moved up to the next higher index to accommodate.

Succeeds if all of the following are true:

  • index is less than or equal to the value returned by CountLocators().
  • the pLocator 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

  • pLocator is null.

AAFRESULT_BADINDEX

Parameters:
index[in] index to insert locator
pLocator[in] Locator to insert
HRESULT IAAFPluginDef::IsAccelerated ( [out] aafBoolean_t *  pIsAccelerated)

Tells whether the given plugin is capable of running with a hardware accelerator.

If the result is AAFTrue, then this plugin may also support software decompression.

Succeeds if all of the following are true:

  • the pIsAccelerated pointer is valid.

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

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

  • pIsAccelerated arg is NULL.
Parameters:
pIsAccelerated[out] The IsAccelerated
HRESULT IAAFPluginDef::IsSoftwareOnly ( [out] aafBoolean_t *  pIsSoftwareOnly)

Tells whether the given plugin is capable of running in a software-only environment.

A value of AAFTrue indicates that no additional hardware is required. If the result is AAFTrue, then this plugin may also support hardware acceleration, as long as it also contains a software method of processing the data.

Succeeds if all of the following are true:

  • the pIsSoftwareOnly pointer is valid.

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

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

  • pIsSoftwareOnly arg is NULL.
Parameters:
pIsSoftwareOnly[out] The IsSoftwareOnly
HRESULT IAAFPluginDef::PrependLocator ( [in] IAAFLocator pLocator)

Append another locator to this plugin descriptor.

Use this function to add a locator to be scanned first when searching for the plugin (a new primary location for the plugin).

Succeeds if all of the following are true:

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

  • pLocator is null.
Parameters:
pLocator[in] Locator to append
HRESULT IAAFPluginDef::RemoveLocatorAt ( [in] aafUInt32  index)

Removes the locator which exists in this plugin descriptor at the given index.

Locators already existing at indices higher than the named index will be moved down to the next higher index to accommodate.

Succeeds if all of the following are true:

  • index is less than the value returned by CountLocators().
  • the ppLocator 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

  • ppLocator is null.

AAFRESULT_BADINDEX

Parameters:
index[in] index to insert locator
HRESULT IAAFPluginDef::SetCategoryClass ( [in, ref] aafUID_constref  categoryClass)

Sets the Category Class, which is identifies the stored classID of the subclass of AAFPluggableDefinition which references this plugin descriptor.

If this method fails the Category Class property will not 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_NOT_INITIALIZED

Parameters:
categoryClass[in, ref] The Category Class
HRESULT IAAFPluginDef::SetDefinitionObjectID ( [in] aafUID_t  pDef)

Sets the definition object handled by this plugin.

Parameters:
pDef[in] AUID of an AAFDefinitionObject
HRESULT IAAFPluginDef::SetEngine ( [in] aafEngine_constref  engine)

Sets the software engine ID, which identifies the software subsystem used for essence management and playback used by the plugin.

The type aafEngine_t is an extensible enumerated type, and the value given must be either standard or in the type dictionary.

If this method fails the engine property will not 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_NOT_INITIALIZED

Parameters:
engine[in] The software engine
HRESULT IAAFPluginDef::SetEngineMaximumVersion ( [in] aafVersionType_constref  pMaxVersion)

Sets the minimum engine Version property to the maximum useful version of the engine which is associated with this plugin.

This is the maximum version of the engine for which this plugin will function.

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:
pMaxVersion[in] The Minimum Engine Version
HRESULT IAAFPluginDef::SetEngineMinimumVersion ( [in] aafVersionType_constref  minVersion)

Sets the minimum engine Version property to the minimum useful version of the engine which is associated with this plugin.

This is the minimum version of the engine for which this plugin will function.

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:
minVersion[in] The Minimum Engine Version
HRESULT IAAFPluginDef::SetHardwarePlatform ( [in] aafHardwarePlatform_constref  hardwarePlatform)

Sets the hardware platform ID, which identifies the hardware platform which is required to use this plugin.

The type aafHardwarePlatform_t is an extensible enumerated type, and the value given must be either standard or in the type dictionary.

If this method fails the HardwarePlatform property will not 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_NOT_INITIALIZED

Parameters:
hardwarePlatform[in] The Category Class
HRESULT IAAFPluginDef::SetIsAccelerated ( [in] aafBoolean_t  isAccelerated)

Tells whether the given plugin is capable of running with a hardware accelerator.

If the result is AAFTrue, then this plugin may also support software decompression.

If this method fails the IsAccelerated property will not 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_NOT_INITIALIZED

Parameters:
isAccelerated[in] The isAccelerated flag
HRESULT IAAFPluginDef::SetIsSoftwareOnly ( [in] aafBoolean_t  isSoftwareOnly)

Sets whether the given plugin is capable of running in a software-only environment, and returns AAFFalse if any hardware is required.

If isSoftwareOnly is AAFTrue, then this plugin may also support hardware acceleration, as long as it also contains a software method of processing the data. If this method fails the isSoftwareOnly property will not 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_NOT_INITIALIZED

Parameters:
isSoftwareOnly[in] The isSoftwareOnly flag
HRESULT IAAFPluginDef::SetManufacturerID ( [in, ref] aafUID_constref  manufacturerID)

Sets the manufacturer ID, which is identifies the manufacturer of this plugin.

If this method fails the ManufacturerID property will not 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_NOT_INITIALIZED

Parameters:
manufacturerID[in, ref] The Category Class
HRESULT IAAFPluginDef::SetManufacturerInfo ( [in] IAAFNetworkLocator pManufacturerInfo)

This method will set a locator pointing to the location of ManufacturerInfo for this plugin.

If a ManufacturerInfo already exists for this mob slot, it will be discarded.

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:
pManufacturerInfo[in] ManufacturerInfo property value
HRESULT IAAFPluginDef::SetPlatformMaximumVersion ( [in] aafVersionType_constref  maxVersion)

Sets the maximum platform Version properties associated with this plugin descriptor.

This is the maximum version of the platform for which this plugin will function.

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:
maxVersion[in] The Maximum Platform Version
HRESULT IAAFPluginDef::SetPlatformMinimumVersion ( [in] aafVersionType_constref  minVersion)

Sets the maximum platform Version property of this plugin descriptor.

This is the minimum version of the platform for which this plugin will function.

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:
minVersion[in] The Minimum Platform Version
HRESULT IAAFPluginDef::SetPluginAPI ( [in] aafPluginAPI_constref  pluginAPI)

Obtains the manufacturer ID, which identifies the plugin interface supported by the plugin.

The type aafPluginAPI_t is an extensible enumerated type, and the value given must be either standard or in the type dictionary.

If this method fails the PluginAPI property will not 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_NOT_INITIALIZED

Parameters:
pluginAPI[in] The Category Class
HRESULT IAAFPluginDef::SetPluginAPIMaximumVersion ( [in] aafVersionType_constref  maxVersion)

Sets the maximum engine Version property to the maximum useful version of the plugin API which is associated with this plugin.

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:
maxVersion[in] The Maximum Plugin API Version
HRESULT IAAFPluginDef::SetPluginAPIMinimumVersion ( [out] aafVersionType_constref  minVersion)

Sets the minimum plugin API Version property to the minimum useful version of the plugin API which is associated with this plugin.

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:
minVersion[out] The Minimum Plugin API Version
HRESULT IAAFPluginDef::SetPluginManufacturerName ( [in, string] aafCharacter_constptr  pPluginManufacturerName)

Sets the Plugin Manufacturer Name string property.

Set the PluginManufacturerName property to the value specified in pPluginManufacturerName. A copy is made of the data so the caller retains ownership of the *pPluginManufacturerName buffer and is responsible for de-allocating it. There is no pre-set limit to the length of the name, other than available system memory or disk space.

Succeeds if all of the following are true:

  • the pPluginManufacturerName pointer is valid.

If this method fails the PluginManufacturerName property will not 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

  • pPluginManufacturerName arg is NULL.
Parameters:
pPluginManufacturerName[in, string] buffer from which PluginManufacturerName is to be read
HRESULT IAAFPluginDef::SetPluginVersion ( [in] aafVersionType_t *  pVersion)

Sets the plugin version property of this plugin descriptor.

Succeeds if all of the following are true:

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

  • pVersion arg is NULL.
Parameters:
pVersion[in] The plugin Version
HRESULT IAAFPluginDef::SetPluginVersionString ( [in, string] aafCharacter_constptr  pPluginVersionString)

Sets the Plugin Version String property.

Set the PluginVersionString property to the value specified in pPluginVersionString. A copy is made of the data so the caller retains ownership of the *pPluginVersionString buffer and is responsible for de-allocating it. There is no pre-set limit to the length of the name, other than available system memory or disk space.

Succeeds if all of the following are true:

  • the pPluginVersionString pointer is valid.

If this method fails the PluginVersionString property will not 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

  • pPluginVersionString arg is NULL.
Parameters:
pPluginVersionString[in, string] buffer from which PluginVersionString is to be read
HRESULT IAAFPluginDef::SetSupportsAuthentication ( [in] aafBoolean_t  SupportsAuthentication)

Tells whether the given plugin is capable of supporting authentication.

The methods for authenticating a plugin are still <tbd>.

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:
SupportsAuthentication[in] The SupportsAuthentication flag
HRESULT IAAFPluginDef::SupportsAuthentication ( [out] aafBoolean_t *  pSupportsAuthentication)

Tells whether the given plugin is capable of supporting authentication.

The methods for authenticating a plugin are still <tbd>.

Succeeds if all of the following are true:

  • the pSupportsAuthentication pointer is valid.

If this method fails nothing will be written to pSupportsAuthentication.

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

  • pSupportsAuthentication arg is NULL.
Parameters:
pSupportsAuthentication[out] The SupportsAuthentication

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