| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

- Class List
- Class Index
- Class Hierarchy
- Class Members

Loading...
Searching...
No Matches
List of all members | Public Member Functions | Public Attributes
AAX_IEffectParameters Class Reference
AAX SDK Manual » Core AAX Interface » Data model interface

`#include <AAX_IEffectParameters.h>`

Inheritance diagram for AAX_IEffectParameters:
[legend]
Collaboration diagram for AAX_IEffectParameters:
[legend]

## Description

The interface for an AAX Plug-in's data model.

:Implemented by the Plug-In:

The interface for an instance of a plug-in's data model. A plug-in's implementation of this interface is responsible for creating the plug-in's set of parameters and for defining how the plug-in will respond when these parameters are changed via control updates or preset loads. In order for information to be routed from the plug-in's data model to its algorithm, the parameters that are created here must be registered with the host in the plug-in's Description callback.

At initialization, the host provides this interface with a reference to AAX_IController, which provides access from the data model back to the host. This reference provides a means of querying information from the host such as stem format or sample rate, and is also responsible for communication between the data model and the plug-in's (decoupled) algorithm. See Real-time algorithm callback.

You will most likely inherit your implementation of this interface from AAX_CEffectParameters, a default implementation that provides basic data model functionality such as adding custom parameters, setting control values, restoring state, generating coefficients, etc., which you can override and customize as needed.

The following tags appear in the descriptions for methods of this class and its derived classes:

- `CALL:` Components in the plug-in should call this method to get / set data in the data model.

Note
  - This class always inherits from the latest version of the interface and thus requires any subclass to implement all the methods in the latest version of the interface. The current version of AAX_CEffectParameters provides a convenient default implementation for all methods in the latest interface.
  - Except where noted otherwise, the parameter values referenced by the methods in this interface are normalized values. See Parameter Manager for more information.

Legacy Porting Notes:
  In the legacy plug-in SDK, these methods were found in CProcess and `CEffectProcess`. For additional `CProcess` methods, see AAX_IEffectGUI.

# Related classes

Classes related to AAX_IEffectParameters by inheritance or composition
Classes owned as member objects of AAX_CEffectParameters

## Public Member Functions
| ACF_DECLARE_STANDARD_UNKNOWN () ACFMETHOD(InternalQueryInterface)(const acfIID &riid
| AAX_DELETE (AAX_IEffectParameters &operator=(const AAX_IEffectParameters &))
Public Member Functions inherited from AAX_IACFEffectParameters_V4
virtual AAX_Result | UpdatePageTable (uint32_t inTableType, int32_t inTablePageSize, IACFUnknown *iHostUnknown, IACFUnknown *ioPageTableUnknown) const =0
| Allow the plug-in to update its page tables.
Public Member Functions inherited from AAX_IACFEffectParameters_V3
virtual AAX_Result | GetCurveDataMeterIds (AAX_CTypeID iCurveType, uint32_t *oXMeterId, uint32_t *oYMeterId) const =0
| Indicates which meters correspond to the X and Y axes of the EQ or Dynamics graph.
virtual AAX_Result | GetCurveDataDisplayRange (AAX_CTypeID iCurveType, float *oXMin, float *oXMax, float *oYMin, float *oYMax) const =0
| Determines the range of the graph shown by the plug-in.
Public Member Functions inherited from AAX_IACFEffectParameters_V2
virtual AAX_Result | RenderAudio_Hybrid (AAX_SHybridRenderInfo *ioRenderInfo)=0
| Hybrid audio render function.
virtual AAX_Result | UpdateMIDINodes (AAX_CFieldIndex inFieldIndex, AAX_CMidiPacket &iPacket)=0
| MIDI update callback.
virtual AAX_Result | UpdateControlMIDINodes (AAX_CTypeID nodeID, AAX_CMidiPacket &iPacket)=0
| MIDI update callback for control MIDI nodes.
Public Member Functions inherited from AAX_IACFEffectParameters
virtual AAX_Result | Initialize (IACFUnknown *iController)=0
| Main data model initialization. Called when plug-in instance is first instantiated.
virtual AAX_Result | Uninitialize ()=0
| Main data model uninitialization.
virtual AAX_Result | NotificationReceived (AAX_CTypeID inNotificationType, const void *inNotificationData, uint32_t inNotificationDataSize)=0
| Notification Hook.
virtual AAX_Result | GetNumberOfParameters (int32_t *oNumControls) const =0
| CALL: Retrieves the total number of plug-in parameters.
virtual AAX_Result | GetMasterBypassParameter (AAX_IString *oIDString) const =0
| CALL: Retrieves the ID of the plug-in's Master Bypass parameter.
virtual AAX_Result | GetParameterIsAutomatable (AAX_CParamID iParameterID, AAX_CBoolean *oAutomatable) const =0
| CALL: Retrieves information about a parameter's automatable status.
virtual AAX_Result | GetParameterNumberOfSteps (AAX_CParamID iParameterID, int32_t *oNumSteps) const =0
| CALL: Retrieves the number of discrete steps for a parameter.
virtual AAX_Result | GetParameterName (AAX_CParamID iParameterID, AAX_IString *oName) const =0
| CALL: Retrieves the full name for a parameter.
virtual AAX_Result | GetParameterNameOfLength (AAX_CParamID iParameterID, AAX_IString *oName, int32_t iNameLength) const =0
| CALL: Retrieves an abbreviated name for a parameter.
virtual AAX_Result | GetParameterDefaultNormalizedValue (AAX_CParamID iParameterID, double *oValue) const =0
| CALL: Retrieves default value of a parameter.
virtual AAX_Result | SetParameterDefaultNormalizedValue (AAX_CParamID iParameterID, double iValue)=0
| CALL: Sets the default value of a parameter.
virtual AAX_Result | GetParameterType (AAX_CParamID iParameterID, AAX_EParameterType *oParameterType) const =0
| CALL: Retrieves the type of a parameter.
virtual AAX_Result | GetParameterOrientation (AAX_CParamID iParameterID, AAX_EParameterOrientation *oParameterOrientation) const =0
| CALL: Retrieves the orientation that should be applied to a parameter's controls.
virtual AAX_Result | GetParameter (AAX_CParamID iParameterID, AAX_IParameter **oParameter)=0
| CALL: Retrieves an arbitrary setting within a parameter.
virtual AAX_Result | GetParameterIndex (AAX_CParamID iParameterID, int32_t *oControlIndex) const =0
| CALL: Retrieves the index of a parameter.
virtual AAX_Result | GetParameterIDFromIndex (int32_t iControlIndex, AAX_IString *oParameterIDString) const =0
| CALL: Retrieves the ID of a parameter.
virtual AAX_Result | GetParameterValueInfo (AAX_CParamID iParameterID, int32_t iSelector, int32_t *oValue) const =0
| CALL: Retrieves a property of a parameter.
virtual AAX_Result | GetParameterValueFromString (AAX_CParamID iParameterID, double *oValue, const AAX_IString &iValueString) const =0
| CALL: Converts a value string to a value.
virtual AAX_Result | GetParameterStringFromValue (AAX_CParamID iParameterID, double iValue, AAX_IString *oValueString, int32_t iMaxLength) const =0
| CALL: Converts a normalized parameter value into a string representing its corresponding real value.
virtual AAX_Result | GetParameterValueString (AAX_CParamID iParameterID, AAX_IString *oValueString, int32_t iMaxLength) const =0
| CALL: Retrieves the value string associated with a parameter's current value.
virtual AAX_Result | GetParameterNormalizedValue (AAX_CParamID iParameterID, double *oValuePtr) const =0
| CALL: Retrieves a parameter's current value.
virtual AAX_Result | SetParameterNormalizedValue (AAX_CParamID iParameterID, double iValue)=0
| CALL: Sets the specified parameter to a new value.
virtual AAX_Result | SetParameterNormalizedRelative (AAX_CParamID iParameterID, double iValue)=0
| CALL: Sets the specified parameter to a new value relative to its current value.
virtual AAX_Result | TouchParameter (AAX_CParamID iParameterID)=0
| "Touches" (locks) a parameter in the automation system to a particular control in preparation for updates
virtual AAX_Result | ReleaseParameter (AAX_CParamID iParameterID)=0
| Releases a parameter from a "touched" state.
virtual AAX_Result | UpdateParameterTouch (AAX_CParamID iParameterID, AAX_CBoolean iTouchState)=0
| Sets a "touched" state on a parameter.
virtual AAX_Result | UpdateParameterNormalizedValue (AAX_CParamID iParameterID, double iValue, AAX_EUpdateSource iSource)=0
| Updates a single parameter's state to its current value.
virtual AAX_Result | UpdateParameterNormalizedRelative (AAX_CParamID iParameterID, double iValue)=0
| Updates a single parameter's state to its current value, as a difference with the parameter's previous value.
virtual AAX_Result | GenerateCoefficients ()=0
| Generates and dispatches new coefficient packets.
virtual AAX_Result | ResetFieldData (AAX_CFieldIndex inFieldIndex, void *oData, uint32_t inDataSize) const =0
| Called by the host to reset a private data field in the plug-in's algorithm.
virtual AAX_Result | GetNumberOfChunks (int32_t *oNumChunks) const =0
| Retrieves the number of chunks used by this plug-in.
virtual AAX_Result | GetChunkIDFromIndex (int32_t iIndex, AAX_CTypeID *oChunkID) const =0
| Retrieves the ID associated with a chunk index.
virtual AAX_Result | GetChunkSize (AAX_CTypeID iChunkID, uint32_t *oSize) const =0
| Get the size of the data structure that can hold all of a chunk's information.
virtual AAX_Result | GetChunk (AAX_CTypeID iChunkID, AAX_SPlugInChunk *oChunk) const =0
| Fills a block of data with chunk information representing the plug-in's current state.
virtual AAX_Result | SetChunk (AAX_CTypeID iChunkID, const AAX_SPlugInChunk *iChunk)=0
| Restores a set of plug-in parameters based on chunk information.
virtual AAX_Result | CompareActiveChunk (const AAX_SPlugInChunk *iChunkP, AAX_CBoolean *oIsEqual) const =0
| Determine if a chunk represents settings that are equivalent to the plug-in's current state.
virtual AAX_Result | GetNumberOfChanges (int32_t *oNumChanges) const =0
| Retrieves the number of parameter changes made since the plug-in's creation.
virtual AAX_Result | TimerWakeup ()=0
| Periodic wakeup callback for idle-time operations.
virtual AAX_Result | GetCurveData (AAX_CTypeID iCurveType, const float *iValues, uint32_t iNumValues, float *oValues) const =0
| Generate a set of output values based on a set of given input values.
virtual AAX_Result | GetCustomData (AAX_CTypeID iDataBlockID, uint32_t inDataSize, void *oData, uint32_t *oDataWritten) const =0
| An optional interface hook for getting custom data from another module.
virtual AAX_Result | SetCustomData (AAX_CTypeID iDataBlockID, uint32_t inDataSize, const void *iData)=0
| An optional interface hook for setting custom data for use by another module.
virtual AAX_Result | DoMIDITransfers ()=0
| MIDI update callback.
Public Member Functions inherited from IACFUnknown
virtual BEGIN_ACFINTERFACE ACFRESULT ACFMETHODCALLTYPE | QueryInterface (const acfIID &iid, void **ppOut)=0
| Returns pointers to supported interfaces.
virtual acfUInt32 ACFMETHODCALLTYPE | AddRef (void)=0
| Increments reference count.
virtual acfUInt32 ACFMETHODCALLTYPE | Release (void)=0
| Decrements reference count.

## Public Attributes
void **ppvObjOut | override

## Member Function Documentation

## ◆ ACF_DECLARE_STANDARD_UNKNOWN()

AAX_IEffectParameters::ACF_DECLARE_STANDARD_UNKNOWN | ( |  | ) | const &

## ◆ AAX_DELETE()

AAX_IEffectParameters::AAX_DELETE | ( | AAX_IEffectParameters & | operator = `(const AAX_IEffectParameters &)` | ) |

## Member Data Documentation

## ◆ override

void** ppvObjOut AAX_IEffectParameters::override

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

- AAX_IEffectParameters.h