ASPiK SDK
Loading...
Searching...
No Matches
AAXPluginParameters.h File Reference

interface file for the AAXPluginParameters object; this code is based heavily off of the monolithic plugin example in the AAX SDK but custom fit to include the ASPiK kernel objects in a tight synchronization. More...

#include "AAX_CEffectParameters.h"
#include "AAX_CAtomicQueue.h"
#include "AAX_IParameter.h"
#include "AAX_IMIDINode.h"
#include "AAX_IString.h"
#include "AAX_IEffectDescriptor.h"
#include "AAX_IComponentDescriptor.h"
#include "AAX_IPropertyMap.h"
#include <set>
#include <list>
#include <utility>
#include <vector>
#include "plugincore.h"
#include "customcontrols.h"
#include <windows.h>

Go to the source code of this file.

Classes

struct  pluginCustomData
 Structure of data that is passed to GUI object once at creation time. More...
 
struct  pluginPrivateData
 Back-pointer to the parameters; this is described in detail in Designing Audio Effects in C++ 2nd Ed. by Will Pirkle and is part of the monolithic parameters AAX programming paradigm; this is very well documented in the AAX SDK documentation. More...
 
struct  AAXAlgorithm
 Processing structure; this is described in detail in Designing Audio Effects in C++ 2nd Ed. by Will Pirkle and is part of the monolithic parameters AAX programming paradigm; this is very well documented in the AAX SDK documentation. More...
 
class  AAXPluginParameters
 The AAXPluginParameters object implements the monolithic parameters AAX plugin programming paradigm which is documented in detail in Designing Audio Effects in C++ 2nd Ed. by Will Pirkle as well as the AAX SDK. More...
 
struct  AAXPluginParameters::SParamValList
 See AAX_CMonolithicParameters in SDK; this is part of the strict parameter synchronization in monolithic AAX plugins. More...
 
class  PluginHostConnector
 The PluginHostConnector implements the IPluginHostConnector interface for the plugin shell object. For AAX, this requires implementing only one method, sendHostMessage( ). Only one message is processed for sendGUIUpdate that provides a mechanism to update the GUI controls from the plugin core. Note that this is not an ideal solution for most problems (e.g. linking controls together intelligently) – you should always consider using a custom sub-controller and/or custom view to do this properly. On occasion, a more difficult scenario may arise (e.g. MIDI learn button, that must wait for user input from a MIDI instrument to toggle states) where the sendGUIUpdate method may be appropriate. See the example in the ASPiK SDK for more information. More...
 
class  CustomViewController
 The CustomViewController is part of the safe ICustomView feature in ASPiK. The CustomViewController maintains an ICustomView pointer. When the GUI registers and de-registers custom views during creation or destuction, the plugin shell is responsible for making sure that the original ICustomView pointer registered with the plugin core object never goes out of scope and this object is part of that system. More...
 
class  GUIPluginConnector
 The GUIPluginConnector interface creates a safe message mechanism for the GUI to issue requests to the plugin shell. The following messages are processed via functions: More...
 
class  AAXMIDIEventQueue
 The AAXMIDIEventQueue interface queues incoming MIDI messages and blasts them out during the buffer processing phase. More...
 

Macros

#define AAX_PARAMETERS_H
 
#define kMaxAdditionalMIDINodes   15
 
#define kMaxAuxOutputStems   32
 
#define kSynchronizedParameterQueueSize   64
 This is the maximum size of the plugin-core's parameter list; make sure to adjust itg if your core needs more than 64 slots; part of the monolithic parameters AAX programming paradigm; this is very well documented in the AAX SDK documentation.
 

Typedefs

typedef std::pair< AAX_CParamID const, const AAX_IParameterValue * > TParamValPair
 Defines a parameter-value pair for the monolithic parameters AAX programming paradigm; this is very well documented in the AAX SDK documentation.
 

Variables

const AAX_CTypeID PLUGIN_CUSTOMDATA_ID = 0
 custom data parameter number (we only need one)
 
const AAX_CTypeID GR_MeterID = 'grMT'
 pro tools gr meter id
 
const unsigned int meterTapCount = 1
 number of gr meters (we've only ever seen one on any AVID surface/SW)
 

Detailed Description

interface file for the AAXPluginParameters object; this code is based heavily off of the monolithic plugin example in the AAX SDK but custom fit to include the ASPiK kernel objects in a tight synchronization.

Author
Will Pirkle
Date
17-September-2018