@@ -35,20 +35,20 @@ | |||||
START_NAMESPACE_DISTRHO | START_NAMESPACE_DISTRHO | ||||
/** | /** | ||||
@defgroup dpf DISTRHO Plugin Framework | |||||
@mainpage DISTRHO %Plugin Framework | |||||
A plugin framework designed to make development of new plugins an easy and enjoyable task.@n | |||||
DISTRHO %Plugin Framework (or @b DPF for short) | |||||
is a plugin framework designed to make development of new plugins an easy and enjoyable task.@n | |||||
It allows developers to create plugins with custom UIs using a simple C++ API. | It allows developers to create plugins with custom UIs using a simple C++ API. | ||||
@section Macros | @section Macros | ||||
You start by creating a "DistrhoPluginInfo.h" file describing the plugin via macros, see PluginMacros. | |||||
You start by creating a "DistrhoPluginInfo.h" file describing the plugin via macros, see @ref PluginMacros. | |||||
@section Plugin | @section Plugin | ||||
TODO | TODO | ||||
@section Parameters | @section Parameters | ||||
describe input and output, automable and rt safe, boolean etc, cv | describe input and output, automable and rt safe, boolean etc, cv | ||||
@{ | |||||
*/ | */ | ||||
/* ------------------------------------------------------------------------------------------------------------ | /* ------------------------------------------------------------------------------------------------------------ | ||||
@@ -104,7 +104,7 @@ START_NAMESPACE_DISTRHO | |||||
#define DISTRHO_PLUGIN_URI "urn:distrho:name" | #define DISTRHO_PLUGIN_URI "urn:distrho:name" | ||||
/** | /** | ||||
Wherever the plugin has a custom UI. | |||||
Wherever the plugin has a custom %UI. | |||||
@see DISTRHO_UI_USE_NANOVG | @see DISTRHO_UI_USE_NANOVG | ||||
@see UI | @see UI | ||||
*/ | */ | ||||
@@ -118,18 +118,18 @@ START_NAMESPACE_DISTRHO | |||||
/** | /** | ||||
Wherever the plugin is a synth.@n | Wherever the plugin is a synth.@n | ||||
@ref DISTRHO_PLUGIN_WANTS_MIDI_INPUT is automatically enabled when this is too. | |||||
@see DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
@ref DISTRHO_PLUGIN_WANT_MIDI_INPUT is automatically enabled when this is too. | |||||
@see DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
*/ | */ | ||||
#define DISTRHO_PLUGIN_IS_SYNTH 1 | #define DISTRHO_PLUGIN_IS_SYNTH 1 | ||||
/** | /** | ||||
Enable direct access between the UI and plugin code. | |||||
Enable direct access between the %UI and plugin code. | |||||
@see UI::d_getPluginInstancePointer() | @see UI::d_getPluginInstancePointer() | ||||
@note DO NOT USE THIS UNLESS STRICTLY NECESSARY!! | @note DO NOT USE THIS UNLESS STRICTLY NECESSARY!! | ||||
Try to avoid it at all costs! | Try to avoid it at all costs! | ||||
*/ | */ | ||||
#define DISTRHO_PLUGIN_WANT_DIRECT_ACCESS 1 | |||||
#define DISTRHO_PLUGIN_WANT_DIRECT_ACCESS 0 | |||||
/** | /** | ||||
Wherever the plugin introduces latency during audio or midi processing. | Wherever the plugin introduces latency during audio or midi processing. | ||||
@@ -141,13 +141,13 @@ START_NAMESPACE_DISTRHO | |||||
Wherever the plugin wants MIDI input.@n | Wherever the plugin wants MIDI input.@n | ||||
This is automatically enabled if @ref DISTRHO_PLUGIN_IS_SYNTH is true. | This is automatically enabled if @ref DISTRHO_PLUGIN_IS_SYNTH is true. | ||||
*/ | */ | ||||
#define DISTRHO_PLUGIN_WANTS_MIDI_INPUT 1 | |||||
#define DISTRHO_PLUGIN_WANT_MIDI_INPUT 1 | |||||
/** | /** | ||||
Wherever the plugin wants MIDI output. | Wherever the plugin wants MIDI output. | ||||
@see Plugin::d_writeMidiEvent(const MidiEvent&) | @see Plugin::d_writeMidiEvent(const MidiEvent&) | ||||
*/ | */ | ||||
#define DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT 1 | |||||
#define DISTRHO_PLUGIN_WANT_MIDI_OUTPUT 1 | |||||
/** | /** | ||||
Wherever the plugin provides its own internal programs. | Wherever the plugin provides its own internal programs. | ||||
@@ -170,14 +170,14 @@ START_NAMESPACE_DISTRHO | |||||
#define DISTRHO_PLUGIN_WANT_TIMEPOS 1 | #define DISTRHO_PLUGIN_WANT_TIMEPOS 1 | ||||
/** | /** | ||||
Wherever the UI uses NanoVG for drawing instead of the default raw OpenGL calls.@n | |||||
When enabled your UI instance will subclass @ref NanoWidget instead of @ref Widget. | |||||
Wherever the %UI uses NanoVG for drawing instead of the default raw OpenGL calls.@n | |||||
When enabled your %UI instance will subclass @ref NanoWidget instead of @ref Widget. | |||||
*/ | */ | ||||
#define DISTRHO_UI_USE_NANOVG 1 | #define DISTRHO_UI_USE_NANOVG 1 | ||||
/** | /** | ||||
The UI URI when exporting in LV2 format.@n | |||||
By default this is set as @ref DISTRHO_PLUGIN_URI with "#UI" as suffix. | |||||
The %UI URI when exporting in LV2 format.@n | |||||
By default this is set to @ref DISTRHO_PLUGIN_URI with "#UI" as suffix. | |||||
*/ | */ | ||||
#define DISTRHO_UI_URI DISTRHO_PLUGIN_URI "#UI" | #define DISTRHO_UI_URI DISTRHO_PLUGIN_URI "#UI" | ||||
@@ -564,7 +564,7 @@ struct TimePosition { | |||||
DISTRHO_PLUGIN_WANT_STATE activates internal state features. | DISTRHO_PLUGIN_WANT_STATE activates internal state features. | ||||
When enabled you need to implement d_initStateKey() and d_setState(). | When enabled you need to implement d_initStateKey() and d_setState(). | ||||
The process function d_run() changes wherever DISTRHO_PLUGIN_WANTS_MIDI_INPUT is enabled or not. | |||||
The process function d_run() changes wherever DISTRHO_PLUGIN_WANT_MIDI_INPUT is enabled or not. | |||||
When enabled it provides midi input events. | When enabled it provides midi input events. | ||||
*/ | */ | ||||
class Plugin | class Plugin | ||||
@@ -620,7 +620,7 @@ public: | |||||
void d_setLatency(uint32_t frames) noexcept; | void d_setLatency(uint32_t frames) noexcept; | ||||
#endif | #endif | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
/** | /** | ||||
Write a MIDI output event. | Write a MIDI output event. | ||||
This function must only be called during d_run(). | This function must only be called during d_run(). | ||||
@@ -741,7 +741,7 @@ protected: | |||||
*/ | */ | ||||
virtual void d_deactivate() {} | virtual void d_deactivate() {} | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
/** | /** | ||||
Run/process function for plugins with MIDI input. | Run/process function for plugins with MIDI input. | ||||
@note: Some parameters might be null if there are no audio inputs/outputs or MIDI events. | @note: Some parameters might be null if there are no audio inputs/outputs or MIDI events. | ||||
@@ -793,8 +793,6 @@ private: | |||||
*/ | */ | ||||
extern Plugin* createPlugin(); | extern Plugin* createPlugin(); | ||||
/** @} */ | |||||
// ----------------------------------------------------------------------------------------------------------- | // ----------------------------------------------------------------------------------------------------------- | ||||
END_NAMESPACE_DISTRHO | END_NAMESPACE_DISTRHO | ||||
@@ -96,7 +96,7 @@ void Plugin::d_setLatency(const uint32_t frames) noexcept | |||||
} | } | ||||
#endif | #endif | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
bool Plugin::d_writeMidiEvent(const MidiEvent& /*midiEvent*/) noexcept | bool Plugin::d_writeMidiEvent(const MidiEvent& /*midiEvent*/) noexcept | ||||
{ | { | ||||
// TODO | // TODO | ||||
@@ -61,8 +61,8 @@ | |||||
# define DISTRHO_PLUGIN_WANT_LATENCY 0 | # define DISTRHO_PLUGIN_WANT_LATENCY 0 | ||||
#endif | #endif | ||||
#ifndef DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
# define DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT 0 | |||||
#ifndef DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
# define DISTRHO_PLUGIN_WANT_MIDI_OUTPUT 0 | |||||
#endif | #endif | ||||
#ifndef DISTRHO_PLUGIN_WANT_PROGRAMS | #ifndef DISTRHO_PLUGIN_WANT_PROGRAMS | ||||
@@ -98,9 +98,9 @@ | |||||
// ----------------------------------------------------------------------- | // ----------------------------------------------------------------------- | ||||
// Enable MIDI input if synth, test if midi-input disabled when synth | // Enable MIDI input if synth, test if midi-input disabled when synth | ||||
#ifndef DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# define DISTRHO_PLUGIN_WANTS_MIDI_INPUT DISTRHO_PLUGIN_IS_SYNTH | |||||
#elif DISTRHO_PLUGIN_IS_SYNTH && ! DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#ifndef DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
# define DISTRHO_PLUGIN_WANT_MIDI_INPUT DISTRHO_PLUGIN_IS_SYNTH | |||||
#elif DISTRHO_PLUGIN_IS_SYNTH && ! DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
# error Synths need MIDI input to work! | # error Synths need MIDI input to work! | ||||
#endif | #endif | ||||
@@ -16,7 +16,7 @@ | |||||
#include "DistrhoPluginInternal.hpp" | #include "DistrhoPluginInternal.hpp" | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
# error Cannot use MIDI Output with LADSPA or DSSI | # error Cannot use MIDI Output with LADSPA or DSSI | ||||
#endif | #endif | ||||
@@ -24,7 +24,7 @@ | |||||
# include "dssi/dssi.h" | # include "dssi/dssi.h" | ||||
#else | #else | ||||
# include "ladspa/ladspa.h" | # include "ladspa/ladspa.h" | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
# error Cannot use MIDI with LADSPA | # error Cannot use MIDI with LADSPA | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANT_STATE | # if DISTRHO_PLUGIN_WANT_STATE | ||||
@@ -190,7 +190,7 @@ public: | |||||
} | } | ||||
} | } | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
// Get MIDI Events | // Get MIDI Events | ||||
uint32_t midiEventCount = 0; | uint32_t midiEventCount = 0; | ||||
MidiEvent midiEvents[eventCount]; | MidiEvent midiEvents[eventCount]; | ||||
@@ -271,7 +271,7 @@ public: | |||||
updateParameterOutputs(); | updateParameterOutputs(); | ||||
#if defined(DISTRHO_PLUGIN_TARGET_DSSI) && ! DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if defined(DISTRHO_PLUGIN_TARGET_DSSI) && ! DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
return; // unused | return; // unused | ||||
(void)events; (void)eventCount; | (void)events; (void)eventCount; | ||||
#endif | #endif | ||||
@@ -435,7 +435,7 @@ static void dssi_select_program(LADSPA_Handle instance, ulong bank, ulong progra | |||||
} | } | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
static void dssi_run_synth(LADSPA_Handle instance, ulong sampleCount, snd_seq_event_t* events, ulong eventCount) | static void dssi_run_synth(LADSPA_Handle instance, ulong sampleCount, snd_seq_event_t* events, ulong eventCount) | ||||
{ | { | ||||
instancePtr->dssi_run_synth(sampleCount, events, eventCount); | instancePtr->dssi_run_synth(sampleCount, events, eventCount); | ||||
@@ -490,7 +490,7 @@ static DSSI_Descriptor sDssiDescriptor = { | |||||
/* select_program */ nullptr, | /* select_program */ nullptr, | ||||
# endif | # endif | ||||
/* get_midi_controller_for_port */ nullptr, | /* get_midi_controller_for_port */ nullptr, | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
dssi_run_synth, | dssi_run_synth, | ||||
# else | # else | ||||
/* run_synth */ nullptr, | /* run_synth */ nullptr, | ||||
@@ -44,8 +44,8 @@ | |||||
# warning LV2 TimePos still TODO | # warning LV2 TimePos still TODO | ||||
#endif | #endif | ||||
#define DISTRHO_LV2_USE_EVENTS_IN (DISTRHO_PLUGIN_WANTS_MIDI_INPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_OUT (DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_IN (DISTRHO_PLUGIN_WANT_MIDI_INPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_OUT (DISTRHO_PLUGIN_WANT_MIDI_OUTPUT || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
START_NAMESPACE_DISTRHO | START_NAMESPACE_DISTRHO | ||||
@@ -271,7 +271,7 @@ public: | |||||
} | } | ||||
#if DISTRHO_LV2_USE_EVENTS_IN | #if DISTRHO_LV2_USE_EVENTS_IN | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
uint32_t midiEventCount = 0; | uint32_t midiEventCount = 0; | ||||
# endif | # endif | ||||
LV2_ATOM_SEQUENCE_FOREACH(fPortEventsIn, event) | LV2_ATOM_SEQUENCE_FOREACH(fPortEventsIn, event) | ||||
@@ -279,7 +279,7 @@ public: | |||||
if (event == nullptr) | if (event == nullptr) | ||||
break; | break; | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
if (event->body.type == fURIDs.midiEvent) | if (event->body.type == fURIDs.midiEvent) | ||||
{ | { | ||||
if (midiEventCount >= kMaxMidiEvents) | if (midiEventCount >= kMaxMidiEvents) | ||||
@@ -477,7 +477,7 @@ public: | |||||
fPlugin.setTimePosition(fTimePosition); | fPlugin.setTimePosition(fTimePosition); | ||||
# endif | # endif | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
fPlugin.run(fPortAudioIns, fPortAudioOuts, sampleCount, fMidiEvents, midiEventCount); | fPlugin.run(fPortAudioIns, fPortAudioOuts, sampleCount, fMidiEvents, midiEventCount); | ||||
#else | #else | ||||
fPlugin.run(fPortAudioIns, fPortAudioOuts, sampleCount); | fPlugin.run(fPortAudioIns, fPortAudioOuts, sampleCount); | ||||
@@ -529,7 +529,7 @@ public: | |||||
uint32_t size, offset = 0; | uint32_t size, offset = 0; | ||||
LV2_Atom_Event* aev; | LV2_Atom_Event* aev; | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
// TODO | // TODO | ||||
# endif | # endif | ||||
# if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | # if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | ||||
@@ -783,7 +783,7 @@ private: | |||||
// Temporary data | // Temporary data | ||||
float* fLastControlValues; | float* fLastControlValues; | ||||
double fSampleRate; | double fSampleRate; | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
MidiEvent fMidiEvents[kMaxMidiEvents]; | MidiEvent fMidiEvents[kMaxMidiEvents]; | ||||
#endif | #endif | ||||
#if DISTRHO_PLUGIN_WANT_TIMEPOS | #if DISTRHO_PLUGIN_WANT_TIMEPOS | ||||
@@ -49,8 +49,8 @@ | |||||
# define DISTRHO_PLUGIN_HAS_UI 0 | # define DISTRHO_PLUGIN_HAS_UI 0 | ||||
#endif | #endif | ||||
#define DISTRHO_LV2_USE_EVENTS_IN (DISTRHO_PLUGIN_WANTS_MIDI_INPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_OUT (DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_IN (DISTRHO_PLUGIN_WANT_MIDI_INPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
#define DISTRHO_LV2_USE_EVENTS_OUT (DISTRHO_PLUGIN_WANT_MIDI_OUTPUT || (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI)) | |||||
// ----------------------------------------------------------------------- | // ----------------------------------------------------------------------- | ||||
@@ -255,7 +255,7 @@ void lv2_generate_ttl(const char* const basename) | |||||
# if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | # if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | ||||
pluginString += " atom:supports <" LV2_ATOM__String "> ;\n"; | pluginString += " atom:supports <" LV2_ATOM__String "> ;\n"; | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
pluginString += " atom:supports <" LV2_MIDI__MidiEvent "> ;\n"; | pluginString += " atom:supports <" LV2_MIDI__MidiEvent "> ;\n"; | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANT_TIMEPOS | # if DISTRHO_PLUGIN_WANT_TIMEPOS | ||||
@@ -276,7 +276,7 @@ void lv2_generate_ttl(const char* const basename) | |||||
# if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | # if (DISTRHO_PLUGIN_WANT_STATE && DISTRHO_PLUGIN_HAS_UI) | ||||
pluginString += " atom:supports <" LV2_ATOM__String "> ;\n"; | pluginString += " atom:supports <" LV2_ATOM__String "> ;\n"; | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
pluginString += " atom:supports <" LV2_MIDI__MidiEvent "> ;\n"; | pluginString += " atom:supports <" LV2_MIDI__MidiEvent "> ;\n"; | ||||
# endif | # endif | ||||
pluginString += " ] ;\n\n"; | pluginString += " ] ;\n\n"; | ||||
@@ -202,7 +202,7 @@ protected: | |||||
void sendNote(const uint8_t channel, const uint8_t note, const uint8_t velocity) | void sendNote(const uint8_t channel, const uint8_t note, const uint8_t velocity) | ||||
{ | { | ||||
#if 0 //DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if 0 //DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
// TODO | // TODO | ||||
#else | #else | ||||
return; // unused | return; // unused | ||||
@@ -278,7 +278,7 @@ public: | |||||
std::memset(fProgramName, 0, sizeof(char)*(32+1)); | std::memset(fProgramName, 0, sizeof(char)*(32+1)); | ||||
std::strcpy(fProgramName, "Default"); | std::strcpy(fProgramName, "Default"); | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
fMidiEventCount = 0; | fMidiEventCount = 0; | ||||
#endif | #endif | ||||
@@ -390,7 +390,7 @@ public: | |||||
if (value != 0) | if (value != 0) | ||||
{ | { | ||||
fPlugin.activate(); | fPlugin.activate(); | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
fMidiEventCount = 0; | fMidiEventCount = 0; | ||||
#endif | #endif | ||||
} | } | ||||
@@ -548,7 +548,7 @@ public: | |||||
} | } | ||||
#endif // DISTRHO_PLUGIN_WANT_STATE | #endif // DISTRHO_PLUGIN_WANT_STATE | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
case effProcessEvents: | case effProcessEvents: | ||||
if (const VstEvents* const events = (const VstEvents*)ptr) | if (const VstEvents* const events = (const VstEvents*)ptr) | ||||
{ | { | ||||
@@ -586,7 +586,7 @@ public: | |||||
} | } | ||||
break; | break; | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT || DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || DISTRHO_OS_MAC | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT || DISTRHO_PLUGIN_WANT_MIDI_OUTPUT || DISTRHO_PLUGIN_WANT_TIMEPOS || DISTRHO_OS_MAC | |||||
case effCanDo: | case effCanDo: | ||||
if (const char* const canDo = (const char*)ptr) | if (const char* const canDo = (const char*)ptr) | ||||
{ | { | ||||
@@ -597,13 +597,13 @@ public: | |||||
return 0xbeef0000; | return 0xbeef0000; | ||||
} | } | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
if (std::strcmp(canDo, "receiveVstEvents") == 0) | if (std::strcmp(canDo, "receiveVstEvents") == 0) | ||||
return 1; | return 1; | ||||
if (std::strcmp(canDo, "receiveVstMidiEvent") == 0) | if (std::strcmp(canDo, "receiveVstMidiEvent") == 0) | ||||
return 1; | return 1; | ||||
# endif | # endif | ||||
# if DISTRHO_PLUGIN_WANTS_MIDI_OUTPUT | |||||
# if DISTRHO_PLUGIN_WANT_MIDI_OUTPUT | |||||
if (std::strcmp(canDo, "sendVstEvents") == 0) | if (std::strcmp(canDo, "sendVstEvents") == 0) | ||||
return 1; | return 1; | ||||
if (std::strcmp(canDo, "sendVstMidiEvent") == 0) | if (std::strcmp(canDo, "sendVstMidiEvent") == 0) | ||||
@@ -690,7 +690,7 @@ public: | |||||
} | } | ||||
#endif | #endif | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
fPlugin.run(inputs, outputs, sampleFrames, fMidiEvents, fMidiEventCount); | fPlugin.run(inputs, outputs, sampleFrames, fMidiEvents, fMidiEventCount); | ||||
fMidiEventCount = 0; | fMidiEventCount = 0; | ||||
#else | #else | ||||
@@ -724,7 +724,7 @@ private: | |||||
// Temporary data | // Temporary data | ||||
char fProgramName[32+1]; | char fProgramName[32+1]; | ||||
#if DISTRHO_PLUGIN_WANTS_MIDI_INPUT | |||||
#if DISTRHO_PLUGIN_WANT_MIDI_INPUT | |||||
uint32_t fMidiEventCount; | uint32_t fMidiEventCount; | ||||
MidiEvent fMidiEvents[kMaxMidiEvents]; | MidiEvent fMidiEvents[kMaxMidiEvents]; | ||||
#endif | #endif | ||||
@@ -47,7 +47,7 @@ LOOKUP_CACHE_SIZE = 0 | |||||
#--------------------------------------------------------------------------- | #--------------------------------------------------------------------------- | ||||
# Build related configuration options | # Build related configuration options | ||||
#--------------------------------------------------------------------------- | #--------------------------------------------------------------------------- | ||||
EXTRACT_ALL = YES | |||||
EXTRACT_ALL = NO | |||||
EXTRACT_PRIVATE = NO | EXTRACT_PRIVATE = NO | ||||
EXTRACT_STATIC = YES | EXTRACT_STATIC = YES | ||||
EXTRACT_LOCAL_CLASSES = YES | EXTRACT_LOCAL_CLASSES = YES | ||||
@@ -242,14 +242,22 @@ SEARCH_INCLUDES = YES | |||||
INCLUDE_PATH = | INCLUDE_PATH = | ||||
INCLUDE_FILE_PATTERNS = | INCLUDE_FILE_PATTERNS = | ||||
PREDEFINED = DOXYGEN \ | PREDEFINED = DOXYGEN \ | ||||
DISTRHO_PLUGIN_HAS_MIDI_INPUT \ | |||||
DISTRHO_PLUGIN_HAS_MIDI_OUTPUT \ | |||||
DISTRHO_PLUGIN_WANT_DIRECT_ACCESS \ | |||||
DISTRHO_PLUGIN_WANT_LATENCY \ | |||||
DISTRHO_PLUGIN_WANT_PROGRAMS \ | |||||
DISTRHO_PLUGIN_WANT_STATE \ | |||||
DISTRHO_PLUGIN_WANT_TIMEPOS | |||||
EXPAND_AS_DEFINED = | |||||
DISTRHO_PLUGIN_NAME="Plugin Name" \ | |||||
DISTRHO_PLUGIN_NUM_INPUTS=2 \ | |||||
DISTRHO_PLUGIN_NUM_OUTPUTS=2 \ | |||||
DISTRHO_PLUGIN_URI="urn:distrho:name" \ | |||||
DISTRHO_PLUGIN_HAS_UI=1 \ | |||||
DISTRHO_PLUGIN_IS_RT_SAFE=1 \ | |||||
DISTRHO_PLUGIN_IS_SYNTH=1 \ | |||||
DISTRHO_PLUGIN_WANT_DIRECT_ACCESS=1 \ | |||||
DISTRHO_PLUGIN_WANT_LATENCY=1 \ | |||||
DISTRHO_PLUGIN_WANT_MIDI_INPUT=1 \ | |||||
DISTRHO_PLUGIN_WANT_MIDI_OUTPUT=1 \ | |||||
DISTRHO_PLUGIN_WANT_PROGRAMS=1 \ | |||||
DISTRHO_PLUGIN_WANT_STATE=1 \ | |||||
DISTRHO_PLUGIN_WANT_TIMEPOS=1 \ | |||||
DISTRHO_UI_USE_NANOVG=1 | |||||
EXPAND_AS_DEFINED = YES | |||||
SKIP_FUNCTION_MACROS = YES | SKIP_FUNCTION_MACROS = YES | ||||
#--------------------------------------------------------------------------- | #--------------------------------------------------------------------------- | ||||
# Configuration::additions related to external references | # Configuration::additions related to external references | ||||