AAX SDK  2.1.1
Avid Audio Extensions Development Kit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions
AAX_IEffectDescriptor Class Referenceabstract

#include <AAX_IEffectDescriptor.h>

Inheritance diagram for AAX_IEffectDescriptor:
Inheritance graph
[legend]

Description

Description interface for an effect's (plug-in type's) components.

:Implemented by the AAX Host:

Each Effect represents a different "type" of plug-in. The host will present different Effects to the user as separate products, even if they are derived from the same AAX_ICollection description.

Public Member Functions

virtual ~AAX_IEffectDescriptor ()
 
virtual AAX_IComponentDescriptorNewComponentDescriptor ()=0
 Create an instance of a component descriptor. More...
 
virtual AAX_Result AddComponent (AAX_IComponentDescriptor *iComponentDescriptor)=0
 Add a component to an instance of a component descriptor. More...
 
virtual AAX_Result AddName (const char *iPlugInName)=0
 Add a name to the Effect. More...
 
virtual AAX_Result AddCategory (uint32_t iCategory)=0
 Add a category to your plug-in. See AAX_EPlugInCategory. More...
 
virtual AAX_Result AddCategoryBypassParameter (uint32_t iCategory, AAX_CParamID iParamID)=0
 Add a category to your plug-in. See AAX_EPlugInCategory. More...
 
virtual AAX_Result AddProcPtr (void *iProcPtr, AAX_CProcPtrID iProcID)=0
 Add a process pointer. More...
 
virtual AAX_IPropertyMapNewPropertyMap ()=0
 Create a new property map. More...
 
virtual AAX_Result SetProperties (AAX_IPropertyMap *iProperties)=0
 Set the properties of a new property map. More...
 
virtual AAX_Result AddResourceInfo (AAX_EResourceType iResourceType, const char *iInfo)=0
 Set resource file info. More...
 
virtual AAX_Result AddMeterDescription (AAX_CTypeID iMeterID, const char *iMeterName, AAX_IPropertyMap *iProperties)=0
 Add name and property map to meter with given ID. More...
 
virtual AAX_Result AddControlMIDINode (AAX_CTypeID iNodeID, AAX_EMIDINodeType iNodeType, const char iNodeName[], uint32_t iChannelMask)=0
 Add control MIDI node. More...
 

Constructor & Destructor Documentation

virtual AAX_IEffectDescriptor::~AAX_IEffectDescriptor ( )
inlinevirtual

Member Function Documentation

virtual AAX_IComponentDescriptor* AAX_IEffectDescriptor::NewComponentDescriptor ( )
pure virtual

Create an instance of a component descriptor.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddComponent ( AAX_IComponentDescriptor iComponentDescriptor)
pure virtual

Add a component to an instance of a component descriptor.

Unlike with AAX_ICollection::AddEffect(), the AAX_IEffectDescriptor does not take ownership of the AAX_IComponentDescriptor that is passed to it in this method. The host copies out the contents of this descriptor, and thus the plug-in may re-use the same descriptor object when creating additional similar components.

Parameters
[in]iComponentDescriptor

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddName ( const char *  iPlugInName)
pure virtual

Add a name to the Effect.

May be called multiple times to add abbreviated Effect names.

Note
Every Effect must include at least one name variant with 31 or fewer characters, plus a null terminating character
Parameters
[in]iPlugInNameThe name assigned to the plug-in.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddCategory ( uint32_t  iCategory)
pure virtual

Add a category to your plug-in. See AAX_EPlugInCategory.

Parameters
[in]iCategoryOne of the categories for the plug-in.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddCategoryBypassParameter ( uint32_t  iCategory,
AAX_CParamID  iParamID 
)
pure virtual

Add a category to your plug-in. See AAX_EPlugInCategory.

Parameters
[in]iCategoryOne of the categories for the plug-in.
[in]iParamIDThe parameter ID of the parameter used to bypass the category seciont of the plug-in.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddProcPtr ( void *  iProcPtr,
AAX_CProcPtrID  iProcID 
)
pure virtual

Add a process pointer.

Parameters
[in]iProcPtrA process pointer.
[in]iProcIDA process ID.

Implemented in AAX_VEffectDescriptor.

virtual AAX_IPropertyMap* AAX_IEffectDescriptor::NewPropertyMap ( )
pure virtual

Create a new property map.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::SetProperties ( AAX_IPropertyMap iProperties)
pure virtual

Set the properties of a new property map.

Parameters
[in]iPropertiesDescription

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddResourceInfo ( AAX_EResourceType  iResourceType,
const char *  iInfo 
)
pure virtual

Set resource file info.

Parameters
[in]iResourceTypeSee AAX_EResourceType.
[in]iInfoDefinition varies on the resource type.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddMeterDescription ( AAX_CTypeID  iMeterID,
const char *  iMeterName,
AAX_IPropertyMap iProperties 
)
pure virtual

Add name and property map to meter with given ID.

Parameters
[in]iMeterIDThe ID of the meter being described.
[in]iMeterNameThe name of the meter.
[in]iPropertiesThe property map containing meter related data such as meter type, orientation, etc.

Implemented in AAX_VEffectDescriptor.

virtual AAX_Result AAX_IEffectDescriptor::AddControlMIDINode ( AAX_CTypeID  iNodeID,
AAX_EMIDINodeType  iNodeType,
const char  iNodeName[],
uint32_t  iChannelMask 
)
pure virtual

Add control MIDI node.

Parameters
[in]iNodeIDThe ID for the new control MIDI node.
[in]iNodeTypeThe type of the node.
[in]iNodeNameThe name of the node.
[in]iChannelMaskThe bit mask for required nodes channels (up to 16) or required global events for global node.

Implemented in AAX_VEffectDescriptor.


The documentation for this class was generated from the following file: