ASPiK SDK
|
Classes | |
union | attributeValue |
Attribute value smashed down into a union. More... | |
Macros | |
#define | FLT_EPSILON_PLUS 1.192092896e-07 |
/* smallest such that 1.0+FLT_EPSILON != 1.0 */ | |
#define | FLT_EPSILON_MINUS -1.192092896e-07 |
/* smallest such that 1.0-FLT_EPSILON != 1.0 */ | |
#define | FLT_MIN_PLUS 1.175494351e-38 |
/* min positive value */ | |
#define | FLT_MIN_MINUS -1.175494351e-38 |
/* min negative value */ | |
Enumerations | |
enum | VSTGUI::mouseAction { mouseDirUpAndDown, mouseDirUp, mouseDirDown } |
Use this enum to set the mouse behavior for kick button. More... | |
enum | VSTGUI::spectrumViewWindowType { kRectWindow, kHannWindow, kBlackmanHarrisWindow } |
Use this strongly typed enum to easily set the window type for the spectrum view. More... | |
enum | smoothingMethod { kLinearSmoother, kLPFSmoother } |
Use this strongly typed enum to easily set the smoothing type. More... | |
enum | taper { kLinearTaper, kLogTaper, kAntiLogTaper, kVoltOctaveTaper } |
Use this strongly typed enum to easily set the control taper. More... | |
enum | meterCal { kLinearMeter, kLogMeter } |
Use this strongly typed enum to easily set meter calibration. More... | |
enum | controlVariableType { kFloat, kDouble, kInt, kTypedEnumStringList, kMeter, kNonVariableBoundControl } |
Use this strongly typed enum to easily set the control's behavior; this tells the PluginParameter object how to interpret the control information (e.g. as float versus int). Note that you can set a PluginParameter as kNonVariableBoundControl to indicate that it is not bound to any variable. More... | |
enum | boundVariableType { kFloat, kDouble, kInt, kUInt } |
Use this strongly typed enum to easily set the control's linked variable datatype (for automatic variable binding). More... | |
enum | pluginType { kFXPlugin, kSynthPlugin } |
Use this enum to identify the plugin category. More... | |
enum | aaxPlugInCategory { aaxPlugInCategory_None = 0x00000000, aaxPlugInCategory_EQ = 0x00000001, aaxPlugInCategory_Dynamics = 0x00000002, aaxPlugInCategory_PitchShift = 0x00000004, aaxPlugInCategory_Reverb = 0x00000008, aaxPlugInCategory_Delay = 0x00000010, aaxPlugInCategory_Modulation = 0x00000020, aaxPlugInCategory_Harmonic = 0x00000040, aaxPlugInCategory_NoiseReduction = 0x00000080, aaxPlugInCategory_Dither = 0x00000100, aaxPlugInCategory_SoundField = 0x00000200, aaxPlugInCategory_HWGenerators = 0x00000400, aaxPlugInCategory_SWGenerators = 0x00000800, aaxPlugInCategory_WrappedPlugin = 0x00001000, aaxPlugInCategory_Effect = 0x00002000 } |
Use this enum to identify the AAX plugin category. More... | |
enum | channelFormat { kCFNone, kCFMono, kCFStereo, kCFLCR, kCFLCRS, kCFQuad, kCF5p0, kCF5p1, kCF6p0, kCF6p1, kCF7p0Sony, kCF7p0DTS, kCF7p1Sony, kCF7p1DTS, kCF7p1Proximity, kCF8p1, kCF9p0, kCF9p1, kCF10p0, kCF10p1, kCF10p2, kCF11p0, kCF11p1, kCF12p2, kCF13p0, kCF13p1, kCF22p2 } |
Use this enum to identify plugin channel formats. Steinberg calls these "speaker arrangements". More... | |
enum | auxGUIIdentifier { GUIKnobGraphic, GUI2SSButtonStyle, EnableMIDIControl, MIDIControlChannel, MIDIControlIndex, midiControlData, guiControlData } |
Identifier enum for aux parameter information. Not used in ASPiK though is used for RAFX plugins (not-exported) More... | |
enum | hostMessage { sendGUIUpdate, sendRAFXStatusWndText } |
Use this enum to identify a message to send to the plugin shell (host) More... | |
enum | messageType { PLUGINGUI_DIDOPEN, PLUGINGUI_WILLCLOSE, PLUGINGUI_TIMERPING, PLUGINGUI_REGISTER_CUSTOMVIEW, PLUGINGUI_DE_REGISTER_CUSTOMVIEW, PLUGINGUI_REGISTER_SUBCONTROLLER, PLUGINGUI_DE_REGISTER_SUBCONTROLLER, PLUGINGUI_QUERY_HASUSERCUSTOM, PLUGINGUI_USER_CUSTOMOPEN, PLUGINGUI_USER_CUSTOMCLOSE, PLUGINGUI_USER_CUSTOMSYNC, PLUGINGUI_EXTERNAL_SET_NORMVALUE, PLUGINGUI_EXTERNAL_SET_ACTUALVALUE, PLUGINGUI_EXTERNAL_GET_NORMVALUE, PLUGINGUI_EXTERNAL_GET_ACTUALVALUE, PLUGINGUI_PARAMETER_CHANGED, PLUGIN_QUERY_DESCRIPTION, PLUGIN_QUERY_PARAMETER, PLUGIN_QUERY_TRACKPAD_X, PLUGIN_QUERY_TRACKPAD_Y } |
Message identifier for ASPiK Core messaging system. More... | |
enum | attributeType { isFloatAttribute, isDoubleAttribute, isIntAttribute, isUintAttribute, isBoolAttribute, isVoidPtrAttribute, isStringAttribute } |
AttributeType identifier for ASPiK PluginParameter auxilliary storage system. You are free to implement your own mechanism; this is an example. More... | |
enum | brickwallFilter { kBrickLPF, kBrickHPF, kBrickBPF, kBrickBSF } |
Use this strongly typed enum to easily set brickwall filter type for functions that need it. More... | |
enum | edgeTransition { kFallingEdge, kRisingEdge } |
Use this strongly typed enum to easily set the edge direction (rising or falling) of a transition band. More... | |
enum | analogFilter { kLPF1, kHPF1, kLPF2, kHPF2, kBPF2, kBSF2 } |
Use this strongy typed enum to set the analog filter type for the AnalogMagData structure. More... | |
enum | filterCoeff { a0, a1, a2, b1, b2, c0, d0, numCoeffs } |
Use this enum to easily access coefficents inside of arrays. More... | |
enum | stateReg { x_z1, x_z2, y_z1, y_z2, numStates } |
Use this enum to easily access z^-1 state values inside of arrays. For some structures, fewer storage units are needed. They are divided as follows: More... | |
enum | biquadAlgorithm { kDirect, kCanonical, kTransposeDirect, kTransposeCanonical } |
Use this strongly typed enum to easily set the biquad calculation type. More... | |
enum | filterAlgorithm { kLPF1P, kLPF1, kHPF1, kLPF2, kHPF2, kBPF2, kBSF2, kButterLPF2, kButterHPF2, kButterBPF2, kButterBSF2, kMMALPF2, kMMALPF2B, kLowShelf, kHiShelf, kNCQParaEQ, kCQParaEQ, kLWRLPF2, kLWRHPF2, kAPF1, kAPF2, kResonA, kResonB, kMatchLP2A, kMatchLP2B, kMatchBP2A, kMatchBP2B, kImpInvLP1, kImpInvLP2 } |
Use this strongly typed enum to easily set the filter algorithm for the AudioFilter object or any other object that requires filter definitions. More... | |
enum | dynamicsProcessorType { kCompressor, kDownwardExpander } |
Use this strongly typed enum to set the dynamics processor type. More... | |
enum | delayAlgorithm { kNormal, kPingPong } |
Use this strongly typed enum to easily set the delay algorithm. More... | |
enum | delayUpdateType { kLeftAndRight, kLeftPlusRatio } |
Use this strongly typed enum to easily set the delay update type; this varies depending on the designer's choice of GUI controls. See the book reference for more details. More... | |
enum | generatorWaveform { kTriangle, kSin, kSaw } |
Use this strongly typed enum to easily set the oscillator waveform. More... | |
enum | DFOscillatorCoeffs { df_b1, df_b2, numDFOCoeffs } |
Use this non-typed enum to easily access the direct form oscillator coefficients. More... | |
enum | DFOscillatorStates { df_yz1, df_yz2, numDFOStates } |
Use this non-typed enum to easily access the direct form oscillator state registers. More... | |
enum | modDelaylgorithm { kFlanger, kChorus, kVibrato } |
Use this strongly typed enum to easily set modulated delay algorithm. More... | |
enum | reverbDensity { kThick, kSparse } |
Use this strongly typed enum to easily set the density in the reverb object. More... | |
enum | vaFilterAlgorithm { kLPF1, kHPF1, kAPF1, kSVF_LP, kSVF_HP, kSVF_BP, kSVF_BS } |
Use this strongly typed enum to easily set the virtual analog filter algorithm. More... | |
enum | distortionModel { kSoftClip, kArcTan, kFuzzAsym } |
Use this strongly typed enum to easily set the waveshaper model for the Triode objects. More... | |
enum | wdfComponent { R, L, C, seriesLC, parallelLC, seriesRL, parallelRL, seriesRC, parallelRC } |
Use this strongly typed enum to easily set the wdfComponent type. More... | |
enum | windowType { kNoWindow, kRectWindow, kHannWindow, kBlackmanHarrisWindow, kHammingWindow } |
Use this strongly typed enum to easily set the windowing type for FFT algorithms that use it. More... | |
enum | rateConversionRatio { k2x, k4x } |
Use this strongly typed enum to easily set up or down sampling ratios. More... | |
Variables | |
const double | kCTCoefficient = 5.0 / 12.0 |
concave and/or convex transform correction factor More... | |
const double | kCTCorrFactorZero = pow(10.0, (-1.0/kCTCoefficient)) |
concave/convex transform correction factor at x = 0 More... | |
const double | kCTCorrFactorAnitZero = 1.0 / (1.0 - kCTCorrFactorZero) |
inverse concave/convex transform factor at x = 0 More... | |
const double | kCTCorrFactorUnity = 1.0 / (1.0 + kCTCoefficient*log10(1.0 + kCTCorrFactorZero)) |
concave/convex transform correction factor at x = 1 More... | |
const double | kCTCorrFactorAntiUnity = 1.0 / (1.0 + (-pow(10.0, (-1.0/kCTCoefficient)))) |
inverse concave/convex transform correction factor at x = 1 More... | |
const double | kCTCorrFactorAntiLog = kCTCoefficient*log10(1.0 + kCTCorrFactorZero) |
concave/convex transform correction factor More... | |
const double | kCTCorrFactorAntiLogScale = 1.0 / (-kCTCoefficient*log10(kCTCorrFactorZero) + kCTCorrFactorAntiLog) |
concave/convex transform scaling factor More... | |
const double | kPi = 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899 |
pi to 80 decimal places More... | |
const double | kTwoPi = 2.0*3.14159265358979323846264338327950288419716939937510582097494459230781640628620899 |
2pi to 80 decimal places More... | |
const float | GUI_METER_UPDATE_INTERVAL_MSEC = 50.f |
repaint interval; larger = slower More... | |
Audio Detector Constants | |
const uint32_t | ENVELOPE_DETECT_MODE_PEAK = 0 |
|x| More... | |
const uint32_t | ENVELOPE_DETECT_MODE_MS = 1 |
(1/N)|x|^2 | |
const uint32_t | ENVELOPE_DETECT_MODE_RMS = 2 |
SQRT((1/N)|x|^2) | |
const uint32_t | ENVELOPE_DETECT_MODE_NONE = 3 |
not used | |
const float | ENVELOPE_DIGITAL_TC = -4.6051701859880913680359829093687 |
ln(1%) | |
const float | ENVELOPE_ANALOG_TC = -1.0023934309275667804345424248947 |
ln(36.7%) | |
Blurbnbb
enum aaxPlugInCategory |
Use this enum to identify the AAX plugin category.
|
strong |
Use this strongy typed enum to set the analog filter type for the AnalogMagData structure.
enum attributeType |
AttributeType identifier for ASPiK PluginParameter auxilliary storage system. You are free to implement your own mechanism; this is an example.
enum auxGUIIdentifier |
Identifier enum for aux parameter information. Not used in ASPiK though is used for RAFX plugins (not-exported)
|
strong |
Use this strongly typed enum to easily set the biquad calculation type.
|
strong |
Use this strongly typed enum to easily set the control's linked variable datatype (for automatic variable binding).
|
strong |
Use this strongly typed enum to easily set brickwall filter type for functions that need it.
enum channelFormat |
Use this enum to identify plugin channel formats. Steinberg calls these "speaker arrangements".
|
strong |
Use this strongly typed enum to easily set the control's behavior; this tells the PluginParameter object how to interpret the control information (e.g. as float versus int).
Note that you can set a PluginParameter as kNonVariableBoundControl to indicate that it is not bound to any variable.
|
strong |
Use this strongly typed enum to easily set the delay algorithm.
|
strong |
Use this strongly typed enum to easily set the delay update type; this varies depending on the designer's choice of GUI controls. See the book reference for more details.
enum DFOscillatorCoeffs |
Use this non-typed enum to easily access the direct form oscillator coefficients.
enum DFOscillatorStates |
Use this non-typed enum to easily access the direct form oscillator state registers.
|
strong |
Use this strongly typed enum to easily set the waveshaper model for the Triode objects.
|
strong |
Use this strongly typed enum to set the dynamics processor type.
|
strong |
Use this strongly typed enum to easily set the edge direction (rising or falling) of a transition band.
|
strong |
Use this strongly typed enum to easily set the filter algorithm for the AudioFilter object or any other object that requires filter definitions.
enum filterCoeff |
Use this enum to easily access coefficents inside of arrays.
|
strong |
Use this strongly typed enum to easily set the oscillator waveform.
enum hostMessage |
Use this enum to identify a message to send to the plugin shell (host)
enum messageType |
Message identifier for ASPiK Core messaging system.
|
strong |
Use this strongly typed enum to easily set meter calibration.
|
strong |
Use this strongly typed enum to easily set modulated delay algorithm.
enum VSTGUI::mouseAction |
Use this enum to set the mouse behavior for kick button.
enum pluginType |
Use this enum to identify the plugin category.
|
strong |
Use this strongly typed enum to easily set up or down sampling ratios.
|
strong |
Use this strongly typed enum to easily set the density in the reverb object.
|
strong |
Use this strongly typed enum to easily set the smoothing type.
|
strong |
Use this strongly typed enum to easily set the window type for the spectrum view.
enum stateReg |
Use this enum to easily access z^-1 state values inside of arrays. For some structures, fewer storage units are needed. They are divided as follows:
|
strong |
Use this strongly typed enum to easily set the control taper.
|
strong |
Use this strongly typed enum to easily set the virtual analog filter algorithm.
|
strong |
Use this strongly typed enum to easily set the wdfComponent type.
|
strong |
Use this strongly typed enum to easily set the windowing type for FFT algorithms that use it.
const uint32_t ENVELOPE_DETECT_MODE_PEAK = 0 |
|x|
@{
const float GUI_METER_UPDATE_INTERVAL_MSEC = 50.f |
repaint interval; larger = slower
@{
const double kCTCoefficient = 5.0 / 12.0 |
concave and/or convex transform correction factor
const double kCTCorrFactorAnitZero = 1.0 / (1.0 - kCTCorrFactorZero) |
inverse concave/convex transform factor at x = 0
const double kCTCorrFactorAntiLog = kCTCoefficient*log10(1.0 + kCTCorrFactorZero) |
concave/convex transform correction factor
const double kCTCorrFactorAntiLogScale = 1.0 / (-kCTCoefficient*log10(kCTCorrFactorZero) + kCTCorrFactorAntiLog) |
concave/convex transform scaling factor
const double kCTCorrFactorAntiUnity = 1.0 / (1.0 + (-pow(10.0, (-1.0/kCTCoefficient)))) |
inverse concave/convex transform correction factor at x = 1
const double kCTCorrFactorUnity = 1.0 / (1.0 + kCTCoefficient*log10(1.0 + kCTCorrFactorZero)) |
concave/convex transform correction factor at x = 1
const double kCTCorrFactorZero = pow(10.0, (-1.0/kCTCoefficient)) |
concave/convex transform correction factor at x = 0
const double kPi = 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899 |
pi to 80 decimal places
const double kTwoPi = 2.0*3.14159265358979323846264338327950288419716939937510582097494459230781640628620899 |
2pi to 80 decimal places