13 #ifndef _pluginstructures_h 14 #define _pluginstructures_h 17 #define MAX_CHANNEL_COUNT 128 24 #include "readerwriterqueue.h" 25 #include "atomicops.h" 32 #import <CoreFoundation/CoreFoundation.h> 33 #import <AudioUnit/AudioUnit.h> 34 #import <AudioToolbox/AudioToolbox.h> 83 aaxPlugInCategory_None = 0x00000000,
84 aaxPlugInCategory_EQ = 0x00000001,
85 aaxPlugInCategory_Dynamics = 0x00000002,
86 aaxPlugInCategory_PitchShift = 0x00000004,
87 aaxPlugInCategory_Reverb = 0x00000008,
88 aaxPlugInCategory_Delay = 0x00000010,
89 aaxPlugInCategory_Modulation = 0x00000020,
90 aaxPlugInCategory_Harmonic = 0x00000040,
91 aaxPlugInCategory_NoiseReduction = 0x00000080,
92 aaxPlugInCategory_Dither = 0x00000100,
93 aaxPlugInCategory_SoundField = 0x00000200,
94 aaxPlugInCategory_HWGenerators = 0x00000400,
95 aaxPlugInCategory_SWGenerators = 0x00000800,
96 aaxPlugInCategory_WrappedPlugin = 0x00001000,
97 aaxPlugInCategory_Effect = 0x00002000,
284 , vectorBDMix(0.0) {}
286 VectorJoystickData(
double _vectorA,
double _vectorB,
double _vectorC,
double _vectorD,
double _vectorACMix,
double _vectorBDMix)
291 , vectorACMix(_vectorACMix)
292 , vectorBDMix(_vectorBDMix) {}
299 vectorA = vsData.vectorA;
300 vectorB = vsData.vectorB;
301 vectorC = vsData.vectorC;
302 vectorD = vsData.vectorD;
304 vectorACMix = vsData.vectorACMix;
305 vectorBDMix = vsData.vectorBDMix;
310 double vectorA = 0.0;
311 double vectorB = 0.0;
312 double vectorC = 0.0;
313 double vectorD = 0.0;
315 double vectorACMix = 0.0;
316 double vectorBDMix = 0.0;
408 PresetInfo(uint32_t _presetIndex,
const char* _name)
496 guiParameter = data.guiParameter;
497 guiUpdateData = data.guiUpdateData;
498 rafxStatusWndText = data.rafxStatusWndText;
508 std::string rafxStatusWndText;
530 uint32_t _outputChannelFormat)
563 midiEvent(uint32_t _midiMessage, uint32_t _midiChannel, uint32_t _midiData1, uint32_t _midiData2, uint32_t _midiSampleOffset)
581 midiEvent(uint32_t _midiMessage, uint32_t _midiChannel, uint32_t _midiData1, uint32_t _midiData2, uint32_t _midiSampleOffset,
double _audioTimeStamp)
674 PLUGINGUI_REGISTER_CUSTOMVIEW,
675 PLUGINGUI_DE_REGISTER_CUSTOMVIEW,
676 PLUGINGUI_REGISTER_SUBCONTROLLER,
677 PLUGINGUI_DE_REGISTER_SUBCONTROLLER,
678 PLUGINGUI_QUERY_HASUSERCUSTOM,
679 PLUGINGUI_USER_CUSTOMOPEN,
680 PLUGINGUI_USER_CUSTOMCLOSE,
681 PLUGINGUI_USER_CUSTOMSYNC,
682 PLUGINGUI_EXTERNAL_SET_NORMVALUE,
683 PLUGINGUI_EXTERNAL_SET_ACTUALVALUE,
684 PLUGINGUI_EXTERNAL_GET_NORMVALUE,
685 PLUGINGUI_EXTERNAL_GET_ACTUALVALUE,
686 PLUGINGUI_PARAMETER_CHANGED,
687 PLUGIN_QUERY_DESCRIPTION,
688 PLUGIN_QUERY_PARAMETER,
689 PLUGIN_QUERY_TRACKPAD_X,
690 PLUGIN_QUERY_TRACKPAD_Y,
887 enum attributeType { isFloatAttribute, isDoubleAttribute, isIntAttribute, isUintAttribute, isBoolAttribute, isVoidPtrAttribute, isStringAttribute };
943 void setFloatAttribute(
float f) {
value.f = f; }
944 void setDoubleAttribute(
double d) {
value.d = d; }
945 void setIntAttribute(
int n) {
value.n = n; }
946 void setUintAttribute(
unsigned int u) {
value.u = u; }
947 void setBoolAttribute(
bool b) {
value.b = b; }
948 void setVoidPtrAttribute(
void* vp) {
value.vp = vp; }
950 float getFloatAttribute( ) {
return value.f; }
951 double getDoubleAttribute( ) {
return value.d; }
952 int getIntAttribute( ) {
return value.n; }
953 unsigned int getUintAttribute( ) {
return value.u; }
954 bool getBoolAttribute( ) {
return value.b; }
955 void* getVoidPtrAttribute( ) {
return value.vp; }
993 bool enableVSTSampleAccurateAutomation =
false;
1203 , supportedIOCombinations(0)
1205 , supportedAuxIOCombinations(0)
1231 switch(channelCount)
1303 case kCF7p1Proximity:
1354 if (
this == &aControl)
1435 virtual bool setWindowFrameSize(
double left = 0,
double top = 0,
double right = 0,
double bottom = 0) = 0;
1438 virtual bool getWindowFrameSize(
double& left,
double& top,
double& right,
double& bottom) = 0;
1508 virtual void checkSendUpdateGUI(
int tag,
float actualValue,
bool loadingPreset,
void* data1 = 0,
void* data2 = 0) {}
1511 virtual void parameterChanged(int32_t controlID,
double actualValue,
double normalizedValue) {}
1592 virtual bool getValueAtOffset(
long int _sampleOffset,
double _previousValue,
double& _nextValue) = 0;
1613 std::ostringstream strm;
1615 std::string str = strm.str();
1630 std::ostringstream strm;
1632 std::string str = strm.str();
1647 std::ostringstream strm;
1649 std::string str = strm.str();
1664 std::ostringstream strm;
1666 std::string str = strm.str();
1681 std::string returnString;
1682 if (value) returnString.assign(
"true");
1683 else returnString.assign(
"false");
1684 return returnString;
1688 #endif //_pluginstructures_h virtual bool getWindowFrameSize(double &left, double &top, double &right, double &bottom)=0
virtual double getActualPluginParameter(int32_t controlID)
Definition: pluginstructures.h:1520
uint32_t aaxManufacturerID
aax manu ID
Definition: pluginstructures.h:244
uint32_t numSupportedIOCombinations
should support at least main 3 combos
Definition: pluginstructures.h:1222
std::string shortPluginName
name (up to 15 chars)
Definition: pluginstructures.h:1210
Information package about the current DAW session. Sample rate and bit-depth of audio.
Definition: pluginstructures.h:1151
bool boundVariableUpdate
bound variable is being udpated
Definition: pluginstructures.h:871
bool bTransportStateChanged
only notifies a change, but not what was changed to...
Definition: pluginstructures.h:1007
std::string auBundleName
AU bundle name /* MacOS only: this MUST match the bundle name which is the same as the project name *...
Definition: pluginstructures.h:261
Information that includes the message code as well as the message data.
Definition: pluginstructures.h:705
Attribute value smashed down into a union.
Definition: pluginstructures.h:900
int32_t auxIntData1
aux data (INT)
Definition: pluginstructures.h:648
uint32_t guiUpdateCode
unused
Definition: pluginstructures.h:458
std::string vst3BundleID
VST bundle ID /* MacOS only: this MUST match the bundle identifier in your info.plist file */...
Definition: pluginstructures.h:257
double dBPM
beats per minute, aka "tempo"
Definition: pluginstructures.h:978
double continousTimeSamples
project time, without loop (optional)
Definition: pluginstructures.h:987
double cycleStartMusic
Definition: pluginstructures.h:990
const char * pathToDLL
complete path to the DLL (component) without trailing backslash
Definition: pluginstructures.h:767
uint32_t midiControlCommand
MIDI CC type.
Definition: pluginstructures.h:1371
bool bIsPlayingAU
notorously incorrect in Logic - once set to true, stays stuck there
Definition: pluginstructures.h:1006
bool hasCustomGUI
default on
Definition: pluginstructures.h:1217
bool bufferProcUpdate
update at top of buffer process
Definition: pluginstructures.h:872
float ** auxInputs
aux (sidechain) input buffers
Definition: pluginstructures.h:1078
bool useCustomData
custom data flag (reserved for future use)
Definition: pluginstructures.h:354
uint32_t numAudioInChannels
audio input channel count
Definition: pluginstructures.h:1080
double actualValue
value
Definition: pluginstructures.h:392
virtual void setNormalizedPluginParameter(int32_t controlID, double value)
Definition: pluginstructures.h:1517
uint32_t pluginTypeCode
FX or synth.
Definition: pluginstructures.h:1212
Interface for VST3 parameter value update queue (sample accurate automation)
Definition: pluginstructures.h:1584
bool wantsMIDI
want MIDI (don't need to actually use it)
Definition: pluginstructures.h:1216
Information package that arrives with each new audio frame; called internally from the buffer process...
Definition: pluginstructures.h:1111
std::vector< GUIParameter > guiParameters
list of updates
Definition: pluginstructures.h:461
attributeType
AttributeType identifier for ASPiK PluginParameter auxilliary storage system. You are free to impleme...
Definition: pluginstructures.h:887
int fourCharCode
the mystic and ancient 4-character code (oooh)
Definition: pluginstructures.h:251
double projectTimeMusic
musical position in quarter notes (1.0 equals 1 quarter note)
Definition: pluginstructures.h:988
ChannelIOConfig channelIOConfig
input/output channel I/O configuration pair
Definition: pluginstructures.h:1125
virtual void setActualPluginParameter(int32_t controlID, double value)
Definition: pluginstructures.h:1523
uint32_t vst3SampleAccurateGranularity
sample accuracy granularity (update interval)
Definition: pluginstructures.h:256
uint32_t numControlSignalOutputs
num control signals out (reserved for future use)
Definition: pluginstructures.h:1093
uint32_t midiData1
BYTE data 1 as UINT.
Definition: pluginstructures.h:643
uint32_t getChannelCountForChannelIOConfig(uint32_t format)
Definition: pluginstructures.h:1271
PluginInfo & operator=(const PluginInfo &data)
Definition: pluginstructures.h:757
uint32_t bitDepth
wav file bit depth (not supported in all APIs)
Definition: pluginstructures.h:1173
bool enableVST3SampleAccurateAutomation
flag for sample accurate automation
Definition: pluginstructures.h:255
ChannelIOConfig auxChannelIOConfig
aux input/output channel I/O configuration pair
Definition: pluginstructures.h:1087
virtual bool guiTimerPing()=0
int32_t trackpadIndex
trackpad or joystick index
Definition: pluginstructures.h:1369
uint32_t numAuxAudioOutChannels
audio input channel count
Definition: pluginstructures.h:1123
messageType
Message identifier for ASPiK Core messaging system.
Definition: pluginstructures.h:670
float * controlSignalOutputs
control signals out (reserved for future use)
Definition: pluginstructures.h:1091
uint32_t controlID
ID value.
Definition: pluginstructures.h:352
uint32_t presetIndex
preset index
Definition: pluginstructures.h:424
std::vector< PresetParameter > presetParameters
list of parameters for this preset
Definition: pluginstructures.h:427
float * controlSignalInputs
control signals in (reserved for future use)
Definition: pluginstructures.h:1090
virtual bool getValueAtOffset(long int _sampleOffset, double _previousValue, double &_nextValue)=0
int midiPitchBendValue
midi pitch bend value (14-bit)
Definition: pluginstructures.h:652
std::string pluginName
name (up to 31 chars)
Definition: pluginstructures.h:1209
bool enableParamSmoothing
param smoothing on joystick (can be CPU abusive)
Definition: pluginstructures.h:1376
bool processFrames
want frames (default)
Definition: pluginstructures.h:1215
unsigned long long uAbsoluteFrameBufferIndex
the sample index at top of buffer
Definition: pluginstructures.h:976
double joystickValue
joystick value as a double
Definition: pluginstructures.h:1374
Information that defines a preset value as a control_ID::value data pair.
Definition: pluginstructures.h:371
attributeValue value
value in union form
Definition: pluginstructures.h:957
std::string vendorName
manufacturer name
Definition: pluginstructures.h:1211
virtual bool checkNonBoundValueChange(int tag, float normalizedValue)
Definition: pluginstructures.h:1505
uint32_t numControlSignalInputs
num control signals in (reserved for future use)
Definition: pluginstructures.h:1092
bool bIsPlayingAAX
flag if playing
Definition: pluginstructures.h:1016
virtual void enableGUIDesigner(bool enable)
Definition: pluginstructures.h:1441
float * audioInputFrame
audio input frame (array)
Definition: pluginstructures.h:1115
Information about a paraemeter being updated. Used when bound variables are updated. Multiple advanced uses.
Definition: pluginstructures.h:834
virtual bool guiWillClose()=0
Sample rate and bit-depth information that is passed during the reset( ) function.
Definition: pluginstructures.h:180
void * outMessageData
outgoing message data (interpretation depends on message)
Definition: pluginstructures.h:734
bool isVSTSampleAccurateUpdate
param updated with VST sample accurate automation
Definition: pluginstructures.h:869
double sampleRate
sample rate
Definition: pluginstructures.h:1172
uint32_t samplesToNextClock
MIDI Clock Resolution (24 Per Quarter Note), can be negative (nearest)
Definition: pluginstructures.h:992
uint32_t numAudioOutChannels
audio input channel count
Definition: pluginstructures.h:1121
virtual void endParameterChangeGesture(int controlTag)
Definition: pluginstructures.h:1529
float ** auxOutputs
aux outputs - for future use
Definition: pluginstructures.h:1079
uint32_t numAuxAudioInChannels
audio input channel count
Definition: pluginstructures.h:1122
uint32_t midiMessage
BYTE message as UINT.
Definition: pluginstructures.h:641
uint32_t latencyInSamples
latency
Definition: pluginstructures.h:1218
virtual bool deRregisterSubcontroller(ICustomView *customViewConnector)
Definition: pluginstructures.h:1496
uint32_t numAuxAudioInChannels
aux input channel count
Definition: pluginstructures.h:1082
float ** outputs
audio output buffers
Definition: pluginstructures.h:1077
double width
GUI width in pixels.
Definition: pluginstructures.h:819
uint32_t message
message code
Definition: pluginstructures.h:732
pluginType
Use this enum to identify the plugin category.
Definition: pluginstructures.h:61
uint32_t inputChannelFormat
input format for this I/O pair
Definition: pluginstructures.h:545
Information package that arrives with each new audio buffer process cycle. Contains everything needed...
Definition: pluginstructures.h:1057
virtual bool getNextValue(double &_nextValue)=0
Information about a GUI update message; this is for sending GUI control information from the plugin c...
Definition: pluginstructures.h:443
virtual void checkSendUpdateGUI(int tag, float actualValue, bool loadingPreset, void *data1=0, void *data2=0)
Definition: pluginstructures.h:1508
Custom interface so that GUI can pass information to plugin shell in a thread-safe manner...
Definition: pluginstructures.h:1474
float fTimeSigNumerator
time signature numerator
Definition: pluginstructures.h:979
uint32_t uTimeSigDenomintor
time signature denominator
Definition: pluginstructures.h:980
std::string presetName
preset name
Definition: pluginstructures.h:425
bool midiControl
MIDI enabled.
Definition: pluginstructures.h:1370
bool bLooping
looping flag
Definition: pluginstructures.h:1018
Custom View interface to allow plugin core to create safe communication channels with GUI custom view...
Definition: pluginstructures.h:1396
IMidiEventQueue * midiEventQueue
MIDI event queue.
Definition: pluginstructures.h:1097
ChannelIOConfig channelIOConfig
input/output channel I/O configuration pair
Definition: pluginstructures.h:1086
uint32_t state
a combination of the values from StatesAndFlags; use to decode validity of other VST3 items in this s...
Definition: pluginstructures.h:985
int32_t auxIntData2
aux data (INT)
Definition: pluginstructures.h:649
uint32_t nDeltaSampleOffsetToNextBeat
samples to next beat
Definition: pluginstructures.h:1008
bool applyTaper
add tapering to udpate
Definition: pluginstructures.h:873
Incoming data from a vector joystick.
Definition: pluginstructures.h:276
virtual void parameterChanged(int32_t controlID, double actualValue, double normalizedValue)
Definition: pluginstructures.h:1511
double audioTimeStamp
time stamp (not all APIs)
Definition: pluginstructures.h:655
hostMessage
Use this enum to identify a message to send to the plugin shell (host)
Definition: pluginstructures.h:483
IGUIWindowFrame * guiWindowFrame
GUI-to-frame interface (resizing)
Definition: pluginstructures.h:816
aaxPlugInCategory
Use this enum to identify the AAX plugin category.
Definition: pluginstructures.h:81
Information package about the plugin itself, consisting mainly of simple strings and ID values...
Definition: pluginstructures.h:1188
double sampleRate
sample rate
Definition: pluginstructures.h:191
long long nTickPosition
"Tick" is represented here as 1/960000 of a quarter note
Definition: pluginstructures.h:1017
Definition: pluginstructures.h:485
uint32_t midiSampleOffset
sample offset of midi event within audio buffer
Definition: pluginstructures.h:645
uint32_t controlID
ID.
Definition: pluginstructures.h:391
Double buffered queue for MIDI messages.
Definition: pluginstructures.h:1562
void * customData
unused
Definition: pluginstructures.h:464
double dCycleEndBeat
loop end
Definition: pluginstructures.h:1012
Definition: pluginstructures.h:406
uint32_t midiChannel
BYTE channel as UINT.
Definition: pluginstructures.h:642
bool loadingPreset
a preset is being loaded
Definition: pluginstructures.h:870
double auxDoubleData1
aux data (double)
Definition: pluginstructures.h:650
IGUIPluginConnector * guiPluginConnector
GUI-to-plugin-shell interface.
Definition: pluginstructures.h:815
virtual uint32_t getParameterIndex()=0
bool midiIsDirty
dirty flag
Definition: pluginstructures.h:654
HostInfo * hostInfo
pointer to host data for this buffer
Definition: pluginstructures.h:1096
bool hasSidechain
sidechain flag
Definition: pluginstructures.h:1214
virtual void beginParameterChangeGesture(int controlTag)
Definition: pluginstructures.h:1526
long long systemTime
system time in nanoseconds (optional)
Definition: pluginstructures.h:986
virtual double getNormalizedPluginParameter(int32_t controlID)
Definition: pluginstructures.h:1514
float * audioOutputFrame
audio output frame (array)
Definition: pluginstructures.h:1116
Structure of a pair of channel format enumerators that set an input/output channel I/O capability...
Definition: pluginstructures.h:523
uint32_t numAudioInChannels
audio input channel count
Definition: pluginstructures.h:1120
virtual uint32_t getEventCount()=0
Identifiers, GUIDs and other strings and number id values, API specific.
Definition: pluginstructures.h:206
void * inMessageData
incoming message data (interpretation depends on message)
Definition: pluginstructures.h:733
float ** inputs
audio input buffers
Definition: pluginstructures.h:1076
uint32_t aaxProductID
aax ID
Definition: pluginstructures.h:245
float * controlSignalOutputs
control signals out (reserved for future use)
Definition: pluginstructures.h:1131
double tailTimeInMSec
tail time
Definition: pluginstructures.h:1219
uint32_t numAuxAudioOutChannels
aux output channel count (not used)
Definition: pluginstructures.h:1083
std::string vst3FUID
VST GUID.
Definition: pluginstructures.h:254
float * controlSignalInputs
control signals in (reserved for future use)
Definition: pluginstructures.h:1130
Information about auxilliary parameter details - purely customizeable. This uses the attributeValue u...
Definition: pluginstructures.h:922
ChannelIOConfig auxChannelIOConfig
aux input/output channel I/O configuration pair
Definition: pluginstructures.h:1126
float * auxAudioInputFrame
aux input frame (array)
Definition: pluginstructures.h:1117
uint32_t bitDepth
bit depth (not available in all APIs)
Definition: pluginstructures.h:192
channelFormat
Use this enum to identify plugin channel formats. Steinberg calls these "speaker arrangements".
Definition: pluginstructures.h:114
std::string boolToStdString(bool value)
converts bool value to std::string
Definition: pluginstructures.h:1679
uint32_t numControlSignalInputs
num control signals in (reserved for future use)
Definition: pluginstructures.h:1132
uint32_t attributeID
attribute ID
Definition: pluginstructures.h:958
uint32_t numAudioOutChannels
audio output channel count
Definition: pluginstructures.h:1081
uint32_t midiData2
BYTE data 2 as UINT.
Definition: pluginstructures.h:644
uint32_t midiControlName
MIDI CC.
Definition: pluginstructures.h:1372
virtual bool registerSubcontroller(std::string subcontrollerName, ICustomView *customViewConnector)
Definition: pluginstructures.h:1493
double auxDoubleData2
aux data (double)
Definition: pluginstructures.h:651
virtual bool deRegisterCustomView(ICustomView *customViewConnector)=0
double barPositionMusic
last bar start position, in quarter notes
Definition: pluginstructures.h:989
double cycleEndMusic
cycle end in quarter notes
Definition: pluginstructures.h:991
virtual void sendMessage(void *data)
Definition: pluginstructures.h:1417
uint32_t numControlSignalOutputs
num control signals out (reserved for future use)
Definition: pluginstructures.h:1133
void * window
window handle or NSView*
Definition: pluginstructures.h:814
Information that defines a single GUI parameter's possible values and ID.
Definition: pluginstructures.h:331
Information package a joystick or trackpad GUI interaction.
Definition: pluginstructures.h:1349
long long nLoopStartTick
start tick for loop
Definition: pluginstructures.h:1019
std::string aaxBundleID
AAX bundle /* MacOS only: this MUST match the bundle identifier in your info.plist file */...
Definition: pluginstructures.h:247
Structure that is used during GUI creation to safely pass information about the GUI size and interfac...
Definition: pluginstructures.h:782
double dCurrentMeasureDownBeat
current downbeat
Definition: pluginstructures.h:1009
virtual void setGUIWindowFrame(IGUIWindowFrame *frame)=0
auxGUIIdentifier
Identifier enum for aux parameter information. Not used in ASPiK though is used for RAFX plugins (not...
Definition: pluginstructures.h:158
std::string aaxEffectID
aax Effect ID
Definition: pluginstructures.h:246
float * auxAudioOutputFrame
aux output frame (array) for future use
Definition: pluginstructures.h:1118
virtual bool registerCustomView(std::string customViewName, ICustomView *customViewConnector)=0
Custom interface to allow resizing of GUI window; this is mainly used for the GUI designer...
Definition: pluginstructures.h:1455
Custom interface to allow resizing of GUI window; this is mainly used for the GUI designer...
Definition: pluginstructures.h:1431
Structure that is used during the base class initilize( ) funciton call, after object instantiation i...
Definition: pluginstructures.h:753
uint32_t outputChannelFormat
output format for this I/O pair
Definition: pluginstructures.h:546
virtual uint32_t getNextNonBoundVariableTag(int startTag)
Definition: pluginstructures.h:1502
double dCurrentBeat
current DAW beat value
Definition: pluginstructures.h:1005
double actualValue
actual value
Definition: pluginstructures.h:353
Information from the host that is updated on each buffer process cycle; includes BPM, time signature, SMPTE and other data. The values in the stock structure are consistent across most APIs, however others may be added (commnted out here)
Definition: pluginstructures.h:973
double smoothingTimeInMs
JS smoothing time.
Definition: pluginstructures.h:1377
bool infiniteTailVST3
VST3 infinite tail flag.
Definition: pluginstructures.h:1220
uint32_t aaxPluginCategoryCode
aax plugin category
Definition: pluginstructures.h:248
uint32_t getDefaultChannelIOConfigForChannelCount(uint32_t channelCount)
Definition: pluginstructures.h:1229
virtual void updateView()=0
double dCycleStartBeat
loop start
Definition: pluginstructures.h:1011
virtual void sendHostMessage(const HostMessageInfo &hostMessageInfo)=0
std::string inMessageString
incoming message data as a std::string (interpretation depends on message)
Definition: pluginstructures.h:736
uint32_t numFramesToProcess
frame count in this buffer
Definition: pluginstructures.h:1085
Custom interface to send the plugin shell a message from plugin core.
Definition: pluginstructures.h:1544
HostInfo * hostInfo
pointer to host data for this buffer
Definition: pluginstructures.h:1136
std::string outMessageString
outgoing message data as a std::string (interpretation depends on message)
Definition: pluginstructures.h:737
virtual uint32_t getNonBoundVariableCount()
Definition: pluginstructures.h:1499
bool korgVectorJoystickOrientation
vector joystick orientation
Definition: pluginstructures.h:1375
std::string numberToString(unsigned int number)
converts unsigned int value to std::string
Definition: pluginstructures.h:1611
double height
GUI height in pixels.
Definition: pluginstructures.h:820
float midiNormalizedPitchBendValue
normalized bitch bend value
Definition: pluginstructures.h:653
bool bIsCycling
looping
Definition: pluginstructures.h:1010
uint32_t midiControlChannel
MIDI CC Channel.
Definition: pluginstructures.h:1373
uint32_t currentFrame
index of this frame
Definition: pluginstructures.h:1127
std::string auBundleID
AU bundle ID /* MacOS only: this MUST match the bundle identifier in your info.plist file */...
Definition: pluginstructures.h:260
IMidiEventQueue * midiEventQueue
MIDI event queue.
Definition: pluginstructures.h:1137
uint32_t numSupportedAuxIOCombinations
should support at least main 3 combos
Definition: pluginstructures.h:1225
void * customData
custom data (reserved for future use)
Definition: pluginstructures.h:357
virtual bool setWindowFrameSize(double left=0, double top=0, double right=0, double bottom=0)=0
virtual void pushDataValue(double data)
Definition: pluginstructures.h:1407
virtual bool guiDidOpen()=0
uint32_t auxUintData1
aux data (UINT)
Definition: pluginstructures.h:646
long long nLoopEndTick
end tick for loop
Definition: pluginstructures.h:1020
virtual bool fireMidiEvents(uint32_t uSampleOffset)=0
uint32_t auxUintData2
aux data (UINT)
Definition: pluginstructures.h:647
Information about a MIDI event.
Definition: pluginstructures.h:561
bool isSmoothing
param is being (bulk) smoothed
Definition: pluginstructures.h:868
bool useCustomData
unused
Definition: pluginstructures.h:467
double dAbsoluteFrameBufferTime
the time in seconds of the sample index at top of buffer
Definition: pluginstructures.h:977