ASPiK SDK
Loading...
Searching...
No Matches
AAX-Shell

Classes

class  AAXPluginGUI
 The AAXPluginGUI is the GUI object for AAX. It creates and destroys the ASPiK GUI. It also synchronizes GUI and parameters as described in detail in the book source below. More...
 
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  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...
 
class  AntiLogTaperDelegate< T, RealPrecision >
 The AntiLogTaperDelegate object encapsulates an anti-log parameter. Note that the standard log potentiometer in electronics is actually anti-log! This is used in the construction of AAX parameters. More...
 
class  LogTaperDelegate< T, RealPrecision >
 The LogTaperDelegate object encapsulates a log parameter. Note that the standard log potentiometer in electronics is actually anti-log! This is used in the construction of AAX parameters. More...
 

Macros

#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.
 

Functions

void DescribeAlgComponent (AAX_EStemFormat inStemFormat, AAX_IComponentDescriptor &outDesc, AAX_EStemFormat outStemFormat, PluginCore *plugin)
 one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.
 
AAX_Result GetASPiKPlugInDescription (AAX_IEffectDescriptor &outDescriptor, PluginCore *plugin)
 setup channel I/O algorithms and other core-specific stuff
 
AAX_Result GetEffectDescriptions (AAX_ICollection *outDescriptions)
 one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.
 
AAX_EStemFormat getAAXStemFormatForChannelFormat (uint32_t format)
 convert an ASPiK channel format enumeration into an AAX_EStemFormat version
 

Variables

const AAX_CTypeID kPluginCore_PlugInID_Native_Mono = 'PCMR'
 AAX_CTypeID constants for channel enumerations.
 

Detailed Description

The AAX plugin shell consists of the following files:

Macro Definition Documentation

◆ kSynchronizedParameterQueueSize

#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.

@kSynchronizedParameterQueueSize

Typedef Documentation

◆ TParamValPair

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.

@TParamValPair

Function Documentation

◆ DescribeAlgComponent()

void DescribeAlgComponent ( AAX_EStemFormat  inStemFormat,
AAX_IComponentDescriptor &  outDesc,
AAX_EStemFormat  outStemFormat,
PluginCore plugin 
)

one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.

@DescribeAlgComponent

one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.

NOTES:

  • see Designing Audio Effects in C++ 2nd Ed. by Will Pirkle for more information and an AAX Programming Guide
  • see AAX SDK for more information on this function and its parameters

◆ getAAXStemFormatForChannelFormat()

AAX_EStemFormat getAAXStemFormatForChannelFormat ( uint32_t  format)
inline

convert an ASPiK channel format enumeration into an AAX_EStemFormat version

@getAAXStemFormatForChannelFormat

NOTES:

  • see Designing Audio Effects in C++ 2nd Ed. by Will Pirkle for more information and an AAX Programming Guide
  • see AAX SDK for more information on this function and its parameters

◆ GetASPiKPlugInDescription()

AAX_Result GetASPiKPlugInDescription ( AAX_IEffectDescriptor &  outDescriptor,
PluginCore plugin 
)

setup channel I/O algorithms and other core-specific stuff

@GetASPiKPlugInDescription

setup channel I/O algorithms and other core-specific stuff

NOTES:

  • see Designing Audio Effects in C++ 2nd Ed. by Will Pirkle for more information and an AAX Programming Guide
  • see AAX SDK for more information on this function and its parameters

◆ GetEffectDescriptions()

AAX_Result GetEffectDescriptions ( AAX_ICollection *  outCollection)

one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.

@GetASPiKPlugInDescription

one of two parts of the static AAX Parameters declaration; this is detailed in the book source below.

NOTES:

  • see Designing Audio Effects in C++ 2nd Ed. by Will Pirkle for more information and an AAX Programming Guide
  • see AAX SDK for more information on this function and its parameters

Variable Documentation

◆ kPluginCore_PlugInID_Native_Mono

const AAX_CTypeID kPluginCore_PlugInID_Native_Mono = 'PCMR'

AAX_CTypeID constants for channel enumerations.

@AAX_CTypeID constants

NOTES:

  • currently support one mixed I/O combo: mono-in, stereo-out
  • if you need to add some strange I/O combo, make your own ID and add here
  • these channel fomrats are all selected as the closest matching/overlapping of the same variables and values for AU and VST; you can add AAX specific IDs here too
  • see Designing Audio Effects in C++ 2nd Ed. by Will Pirkle for more information and an AAX Programming Guide
  • see AAX SDK for more information on this function and its parameters AAX_CTypeID channel I/O constant