ASPiK SDK
plugincore.h
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------
2 // ASPiK Plugin Kernel File: plugincore.h
3 //
12 // -----------------------------------------------------------------------------
13 #ifndef __pluginCore_h__
14 #define __pluginCore_h__
15 
16 #include "pluginbase.h"
17 
18 // **--0x7F1F--**
19 
20 
21 // **--0x0F1F--**
22 
43 class PluginCore : public PluginBase
44 {
45 public:
46  PluginCore();
47 
49  virtual ~PluginCore(){}
50 
51  // --- PluginBase Overrides ---
52  //
54  bool initPluginParameters();
55 
57  virtual bool reset(ResetInfo& resetInfo);
58 
59  // --- preProcess: sync GUI parameters here; override if you don't want to use automatic variable-binding
60  virtual bool preProcessAudioBuffers(ProcessBufferInfo& processInfo);
61 
63  virtual bool processAudioFrame(ProcessFrameInfo& processFrameInfo);
64 
65  // --- uncomment and override this for buffer processing; see base class implementation for
66  // help on breaking up buffers and getting info from processBufferInfo
67  //virtual bool processAudioBuffers(ProcessBufferInfo& processBufferInfo);
68 
70  virtual bool postProcessAudioBuffers(ProcessBufferInfo& processInfo);
71 
73  virtual bool updatePluginParameter(int32_t controlID, double controlValue, ParameterUpdateInfo& paramInfo);
74 
76  virtual bool updatePluginParameterNormalized(int32_t controlID, double normalizedValue, ParameterUpdateInfo& paramInfo);
77 
79  virtual bool postUpdatePluginParameter(int32_t controlID, double controlValue, ParameterUpdateInfo& paramInfo);
80 
82  virtual bool guiParameterChanged(int32_t controlID, double actualValue);
83 
85  virtual bool processMessage(MessageInfo& messageInfo);
86 
88  virtual bool processMIDIEvent(midiEvent& event);
89 
91  virtual bool setVectorJoystickParameters(const VectorJoystickData& vectorJoysickData);
92 
94  bool initPluginPresets();
95 
96  // --- BEGIN USER VARIABLES AND FUNCTIONS -------------------------------------- //
97  // Add your variables and methods here
98 
99 
100 
101  // --- END USER VARIABLES AND FUNCTIONS -------------------------------------- //
102 
103 private:
104  // **--0x07FD--**
105 
106  // **--0x1A7F--**
107  // --- end member variables
108 
109 public:
114  static const char* getPluginName();
115 
120  static const char* getShortPluginName();
121 
126  static const char* getVendorName();
127 
132  static const char* getVendorURL();
133 
138  static const char* getVendorEmail();
139 
144  static const char* getAUCocoaViewFactoryName();
145 
150  static pluginType getPluginType();
151 
156  static const char* getVSTFUID();
157 
162  static int32_t getFourCharCode();
163 
165  bool initPluginDescriptors();
166 
167 };
168 
169 
170 
171 
172 #endif /* defined(__pluginCore_h__) */
Information that includes the message code as well as the message data.
Definition: pluginstructures.h:545
static const char * getShortPluginName()
Definition: plugincore.cpp:478
bool initPluginDescriptors()
setup the plugin description strings, flags and codes; this is ordinarily done through the ASPiKreato...
Definition: plugincore.cpp:440
static int32_t getFourCharCode()
Definition: plugincore.cpp:485
Information package that arrives with each new audio frame; called internally from the buffer process...
Definition: pluginstructures.h:866
static const char * getAUCocoaViewFactoryName()
Definition: plugincore.cpp:482
bool initPluginPresets()
use this method to add new presets to the list
Definition: plugincore.cpp:426
virtual bool processMIDIEvent(midiEvent &event)
process a MIDI event
Definition: plugincore.cpp:395
virtual bool setVectorJoystickParameters(const VectorJoystickData &vectorJoysickData)
(for future use - NOT linked to RackAFX either!)
Definition: plugincore.cpp:411
virtual bool processAudioFrame(ProcessFrameInfo &processFrameInfo)
frame-processing method
Definition: plugincore.cpp:132
The PluginBase object is the base class for the Plugin Core object.
Definition: pluginbase.h:236
virtual bool processMessage(MessageInfo &messageInfo)
For Custom View and Custom Sub-Controller Operations.
Definition: plugincore.cpp:335
Information about a paraemeter being updated. Used when bound variables are updated. Multiple advanced uses.
Definition: pluginstructures.h:615
static const char * getPluginName()
Definition: plugincore.cpp:477
Sample rate and bit-depth information that is passed during the reset( ) function.
Definition: pluginstructures.h:180
virtual bool updatePluginParameterNormalized(int32_t controlID, double normalizedValue, ParameterUpdateInfo &paramInfo)
update the PluginParameter's value based on normlaized GUI control, preset, or data smoothing (thread...
Definition: plugincore.cpp:246
bool initPluginParameters()
create all of your plugin parameters here
Definition: plugincore.cpp:60
PluginCore()
PluginCore constructor is launching pad for object initialization.
Definition: plugincore.cpp:25
pluginType
Use this enum to identify the plugin category.
Definition: pluginstructures.h:61
Information package that arrives with each new audio buffer process cycle. Contains everything needed...
Definition: pluginstructures.h:812
virtual bool updatePluginParameter(int32_t controlID, double controlValue, ParameterUpdateInfo &paramInfo)
update the PluginParameter's value based on GUI control, preset, or data smoothing (thread-safe) ...
Definition: plugincore.cpp:222
Incoming data from a vector joystick.
Definition: pluginstructures.h:253
virtual bool guiParameterChanged(int32_t controlID, double actualValue)
has nothing to do with actual variable or updated variable (binding)
Definition: plugincore.cpp:306
virtual ~PluginCore()
Definition: plugincore.h:49
virtual bool preProcessAudioBuffers(ProcessBufferInfo &processInfo)
do anything needed prior to arrival of audio buffers
Definition: plugincore.cpp:111
virtual bool postUpdatePluginParameter(int32_t controlID, double controlValue, ParameterUpdateInfo &paramInfo)
perform any operations after the plugin parameter has been updated; this is one paradigm for transfer...
Definition: plugincore.cpp:270
The PluginCore object is the default PluginBase derived object for ASPiK projects. Note that you are fre to change the name of this object (as long as you change it in the compiler settings, etc...)
Definition: plugincore.h:43
static const char * getVendorEmail()
Definition: plugincore.cpp:481
static pluginType getPluginType()
Definition: plugincore.cpp:483
virtual bool postProcessAudioBuffers(ProcessBufferInfo &processInfo)
do anything needed prior to arrival of audio buffers
Definition: plugincore.cpp:200
static const char * getVSTFUID()
Definition: plugincore.cpp:484
static const char * getVendorURL()
Definition: plugincore.cpp:480
base class interface file for ASPiK pluginbase object
virtual bool reset(ResetInfo &resetInfo)
initialize object for a new run of audio; called just before audio streams
Definition: plugincore.cpp:86
static const char * getVendorName()
Definition: plugincore.cpp:479
Information about a MIDI event.
Definition: pluginstructures.h:449