AAX SDK  2.4.1
Avid Audio Extensions Development Kit
List of all members
AAX_IACFEffectParameters_V4 Class Referenceabstract

#include <AAX_IACFEffectParameters.h>

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

Description

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

This is a supplemental interface for an instance of a plug-in's data model. This interface gets exposed to the host application. Host applications that support AAX versioned features may call into these methods. See Data model interface.

Note
Your implementation of this interface must inherit from AAX_IEffectParameters.
Todo:
Add documentation for expected error state return values

Public Member Functions

Auxiliary UI methods
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. More...
 
- 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. More...
 
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. More...
 
- Public Member Functions inherited from AAX_IACFEffectParameters_V2
virtual AAX_Result RenderAudio_Hybrid (AAX_SHybridRenderInfo *ioRenderInfo)=0
 Hybrid audio render function. More...
 
virtual AAX_Result UpdateMIDINodes (AAX_CFieldIndex inFieldIndex, AAX_CMidiPacket &iPacket)=0
 MIDI update callback. More...
 
virtual AAX_Result UpdateControlMIDINodes (AAX_CTypeID nodeID, AAX_CMidiPacket &iPacket)=0
 MIDI update callback for control MIDI nodes. More...
 
- 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. More...
 
virtual AAX_Result Uninitialize ()=0
 Main data model uninitialization. More...
 
virtual AAX_Result NotificationReceived (AAX_CTypeID inNotificationType, const void *inNotificationData, uint32_t inNotificationDataSize)=0
 Notification Hook. More...
 
virtual AAX_Result GetNumberOfParameters (int32_t *oNumControls) const =0
 CALL: Retrieves the total number of plug-in parameters. More...
 
virtual AAX_Result GetMasterBypassParameter (AAX_IString *oIDString) const =0
 CALL: Retrieves the ID of the plug-in's Master Bypass parameter. More...
 
virtual AAX_Result GetParameterIsAutomatable (AAX_CParamID iParameterID, AAX_CBoolean *oAutomatable) const =0
 CALL: Retrieves information about a parameter's automatable status. More...
 
virtual AAX_Result GetParameterNumberOfSteps (AAX_CParamID iParameterID, int32_t *oNumSteps) const =0
 CALL: Retrieves the number of discrete steps for a parameter. More...
 
virtual AAX_Result GetParameterName (AAX_CParamID iParameterID, AAX_IString *oName) const =0
 CALL: Retrieves the full name for a parameter. More...
 
virtual AAX_Result GetParameterNameOfLength (AAX_CParamID iParameterID, AAX_IString *oName, int32_t iNameLength) const =0
 CALL: Retrieves an abbreviated name for a parameter. More...
 
virtual AAX_Result GetParameterDefaultNormalizedValue (AAX_CParamID iParameterID, double *oValue) const =0
 CALL: Retrieves default value of a parameter. More...
 
virtual AAX_Result SetParameterDefaultNormalizedValue (AAX_CParamID iParameterID, double iValue)=0
 CALL: Sets the default value of a parameter. More...
 
virtual AAX_Result GetParameterType (AAX_CParamID iParameterID, AAX_EParameterType *oParameterType) const =0
 CALL: Retrieves the type of a parameter. More...
 
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. More...
 
virtual AAX_Result GetParameter (AAX_CParamID iParameterID, AAX_IParameter **oParameter)=0
 CALL: Retrieves an arbitrary setting within a parameter. More...
 
virtual AAX_Result GetParameterIndex (AAX_CParamID iParameterID, int32_t *oControlIndex) const =0
 CALL: Retrieves the index of a parameter. More...
 
virtual AAX_Result GetParameterIDFromIndex (int32_t iControlIndex, AAX_IString *oParameterIDString) const =0
 CALL: Retrieves the ID of a parameter. More...
 
virtual AAX_Result GetParameterValueInfo (AAX_CParamID iParameterID, int32_t iSelector, int32_t *oValue) const =0
 CALL: Retrieves a property of a parameter. More...
 
virtual AAX_Result GetParameterValueFromString (AAX_CParamID iParameterID, double *oValue, const AAX_IString &iValueString) const =0
 CALL: Converts a value string to a value. More...
 
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. More...
 
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. More...
 
virtual AAX_Result GetParameterNormalizedValue (AAX_CParamID iParameterID, double *oValuePtr) const =0
 CALL: Retrieves a parameter's current value. More...
 
virtual AAX_Result SetParameterNormalizedValue (AAX_CParamID iParameterID, double iValue)=0
 CALL: Sets the specified parameter to a new value. More...
 
virtual AAX_Result SetParameterNormalizedRelative (AAX_CParamID iParameterID, double iValue)=0
 CALL: Sets the specified parameter to a new value relative to its current value. More...
 
virtual AAX_Result TouchParameter (AAX_CParamID iParameterID)=0
 "Touches" (locks) a parameter in the automation system to a particular control in preparation for updates More...
 
virtual AAX_Result ReleaseParameter (AAX_CParamID iParameterID)=0
 Releases a parameter from a "touched" state. More...
 
virtual AAX_Result UpdateParameterTouch (AAX_CParamID iParameterID, AAX_CBoolean iTouchState)=0
 Sets a "touched" state on a parameter. More...
 
virtual AAX_Result UpdateParameterNormalizedValue (AAX_CParamID iParameterID, double iValue, AAX_EUpdateSource iSource)=0
 Updates a single parameter's state to its current value. More...
 
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. More...
 
virtual AAX_Result GenerateCoefficients ()=0
 Generates and dispatches new coefficient packets. More...
 
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. More...
 
virtual AAX_Result GetNumberOfChunks (int32_t *oNumChunks) const =0
 Retrieves the number of chunks used by this plug-in. More...
 
virtual AAX_Result GetChunkIDFromIndex (int32_t iIndex, AAX_CTypeID *oChunkID) const =0
 Retrieves the ID associated with a chunk index. More...
 
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. More...
 
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. More...
 
virtual AAX_Result SetChunk (AAX_CTypeID iChunkID, const AAX_SPlugInChunk *iChunk)=0
 Restores a set of plug-in parameters based on chunk information. More...
 
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. More...
 
virtual AAX_Result GetNumberOfChanges (int32_t *oNumChanges) const =0
 Retrieves the number of parameter changes made since the plug-in's creation. More...
 
virtual AAX_Result TimerWakeup ()=0
 Periodic wakeup callback for idle-time operations. More...
 
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. More...
 
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. More...
 
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. More...
 
virtual AAX_Result DoMIDITransfers ()=0
 MIDI update callback. More...
 
- Public Member Functions inherited from IACFUnknown
virtual BEGIN_ACFINTERFACE ACFRESULT ACFMETHODCALLTYPE QueryInterface (const acfIID &iid, void **ppOut)=0
 Returns pointers to supported interfaces. More...
 
virtual acfUInt32 ACFMETHODCALLTYPE AddRef (void)=0
 Increments reference count. More...
 
virtual acfUInt32 ACFMETHODCALLTYPE Release (void)=0
 Decrements reference count. More...
 

Member Function Documentation

◆ UpdatePageTable()

virtual AAX_Result AAX_IACFEffectParameters_V4::UpdatePageTable ( uint32_t  inTableType,
int32_t  inTablePageSize,
IACFUnknown iHostUnknown,
IACFUnknown ioPageTableUnknown 
) const
pure virtual

Allow the plug-in to update its page tables.

Called by the plug-in host, usually in response to a AAX_eNotificationEvent_ParameterMappingChanged notification sent from the plug-in.

Use this method to change the page table mapping for the plug-in instance or to apply other changes to auxiliary UIs which use the plug-in page tables, such as setting focus to a new page.

See Page Table Guide for more information about page tables.

Parameters
[in]inTableTypeFour-char type identifier for the table type (e.g. 'PgTL', 'Av81', etc.)
[in]inTablePageSizePage size for the table
[in]iHostUnknown

Unknown interface from the host which may support interfaces providing additional features or information.

All interfaces queried from this unknown will be valid only within the scope of this UpdatePageTable() execution and will be relevant for only the current plug-in instance.

[in,out]ioPageTableUnknownUnknown interface which supports AAX_IPageTable. This object represents the page table data which is currently stored by the host for this plug-in instance for the given table type and page size. This data and may be edited within the scope of UpdatePageTable() to change the page table mapping for this plug-in instance.
Returns
This method should return AAX_ERROR_UNIMPLEMENTED if the plug-in does not implement it or when no change is requested by the plug-in. This allows optimizations to be used in the host when no UI update is required following this call.
See also
AAX_eNotificationEvent_ParameterMappingChanged

Implemented in AAX_CEffectParameters.


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