@@ -21,7 +21,9 @@ | |||||
#include "carla_backend.hpp" | #include "carla_backend.hpp" | ||||
#include "carla_utils.hpp" | #include "carla_utils.hpp" | ||||
#ifndef BUILD_BRIDGE | |||||
#ifdef BUILD_BRIDGE | |||||
struct CarlaOscData; | |||||
#else | |||||
class QProcessEnvironment; | class QProcessEnvironment; | ||||
#endif | #endif | ||||
@@ -1168,13 +1168,13 @@ void CarlaEngine::setOscBridgeData(const CarlaOscData* const oscData) | |||||
// ----------------------------------------------------------------------- | // ----------------------------------------------------------------------- | ||||
// protected calls | // protected calls | ||||
#ifndef BUILD_BRIDGE | |||||
EngineEvent* CarlaEngine::getRackEventBuffer(const bool isInput) | EngineEvent* CarlaEngine::getRackEventBuffer(const bool isInput) | ||||
{ | { | ||||
// TODO | // TODO | ||||
return nullptr; | return nullptr; | ||||
} | } | ||||
#ifndef BUILD_BRIDGE | |||||
void CarlaEngine::processRack(float* inBuf[2], float* outBuf[2], const uint32_t frames) | void CarlaEngine::processRack(float* inBuf[2], float* outBuf[2], const uint32_t frames) | ||||
{ | { | ||||
// initialize outputs (zero) | // initialize outputs (zero) | ||||
@@ -1952,14 +1952,14 @@ void CarlaEngine::osc_send_bridge_set_midi_program(const int32_t index) | |||||
void CarlaEngine::osc_send_bridge_set_custom_data(const char* const type, const char* const key, const char* const value) | void CarlaEngine::osc_send_bridge_set_custom_data(const char* const type, const char* const key, const char* const value) | ||||
{ | { | ||||
qDebug("CarlaEngine::osc_send_bridge_set_custom_data(\"%s\", \"%s\", \"%s\")", type, key, value); | qDebug("CarlaEngine::osc_send_bridge_set_custom_data(\"%s\", \"%s\", \"%s\")", type, key, value); | ||||
CARLA_ASSERT(m_oscData); | |||||
CARLA_ASSERT(fData->oscData); | |||||
if (fData->oscData != nullptr && fData->oscData->target != nullptr) | if (fData->oscData != nullptr && fData->oscData->target != nullptr) | ||||
{ | { | ||||
char target_path[strlen(fData->oscData->path)+24]; | char target_path[strlen(fData->oscData->path)+24]; | ||||
strcpy(target_path, fData->oscData->path); | strcpy(target_path, fData->oscData->path); | ||||
strcat(target_path, "/bridge_set_custom_data"); | strcat(target_path, "/bridge_set_custom_data"); | ||||
lo_send(m_oscData->target, target_path, "sss", type, key, value); | |||||
lo_send(fData->oscData->target, target_path, "sss", type, key, value); | |||||
} | } | ||||
} | } | ||||
@@ -1977,6 +1977,7 @@ void CarlaEngine::osc_send_bridge_set_chunk_data(const char* const chunkFile) | |||||
} | } | ||||
} | } | ||||
#if 0 | |||||
void CarlaEngine::osc_send_bridge_set_inpeak(const int32_t portId) | void CarlaEngine::osc_send_bridge_set_inpeak(const int32_t portId) | ||||
{ | { | ||||
CARLA_ASSERT(fData->oscData != nullptr); | CARLA_ASSERT(fData->oscData != nullptr); | ||||
@@ -1987,7 +1988,7 @@ void CarlaEngine::osc_send_bridge_set_inpeak(const int32_t portId) | |||||
char target_path[strlen(fData->oscData->path)+28]; | char target_path[strlen(fData->oscData->path)+28]; | ||||
strcpy(target_path, fData->oscData->path); | strcpy(target_path, fData->oscData->path); | ||||
strcat(target_path, "/bridge_set_inpeak"); | strcat(target_path, "/bridge_set_inpeak"); | ||||
lo_send(m_oscData->target, target_path, "id", portId, data->insPeak[portId-1]); | |||||
lo_send(fData->oscData->target, target_path, "id", portId, data->insPeak[portId-1]); | |||||
} | } | ||||
} | } | ||||
@@ -2005,5 +2006,6 @@ void CarlaEngine::osc_send_bridge_set_outpeak(const int32_t portId) | |||||
} | } | ||||
} | } | ||||
#endif | #endif | ||||
#endif | |||||
CARLA_BACKEND_END_NAMESPACE | CARLA_BACKEND_END_NAMESPACE |
@@ -569,24 +569,24 @@ public: | |||||
return false; | return false; | ||||
#else | #else | ||||
// open temp client to get initial buffer-size and sample-rate values | // open temp client to get initial buffer-size and sample-rate values | ||||
if (bufferSize == 0 || sampleRate == 0.0) | |||||
if (fBufferSize == 0 || fSampleRate == 0.0) | |||||
{ | { | ||||
m_client = jackbridge_client_open(clientName, JackNullOption, nullptr); | m_client = jackbridge_client_open(clientName, JackNullOption, nullptr); | ||||
if (m_client) | if (m_client) | ||||
{ | { | ||||
bufferSize = jackbridge_get_buffer_size(m_client); | |||||
sampleRate = jackbridge_get_sample_rate(m_client); | |||||
fBufferSize = jackbridge_get_buffer_size(m_client); | |||||
fSampleRate = jackbridge_get_sample_rate(m_client); | |||||
jackbridge_client_close(m_client); | jackbridge_client_close(m_client); | ||||
m_client = nullptr; | m_client = nullptr; | ||||
} | } | ||||
} | } | ||||
name = clientName; | |||||
name.toBasic(); | |||||
fName = clientName; | |||||
fName.toBasic(); | |||||
CarlaEngine::init(name); | |||||
CarlaEngine::init(fName); | |||||
return true; | return true; | ||||
#endif | #endif | ||||
} | } | ||||
@@ -632,7 +632,7 @@ public: | |||||
bool isRunning() const | bool isRunning() const | ||||
{ | { | ||||
#ifdef BUILD_BRIDGE | #ifdef BUILD_BRIDGE | ||||
return bool(m_client || ! hasQuit); | |||||
return bool(m_client || ! m_hasQuit); | |||||
#else | #else | ||||
return bool(m_client); | return bool(m_client); | ||||
#endif | #endif | ||||
@@ -655,8 +655,8 @@ public: | |||||
#ifdef BUILD_BRIDGE | #ifdef BUILD_BRIDGE | ||||
client = m_client = jackbridge_client_open(plugin->name(), JackNullOption, nullptr); | client = m_client = jackbridge_client_open(plugin->name(), JackNullOption, nullptr); | ||||
bufferSize = jackbridge_get_buffer_size(client); | |||||
sampleRate = jackbridge_get_sample_rate(client); | |||||
fBufferSize = jackbridge_get_buffer_size(client); | |||||
fSampleRate = jackbridge_get_sample_rate(client); | |||||
jackbridge_set_buffer_size_callback(client, carla_jack_bufsize_callback, this); | jackbridge_set_buffer_size_callback(client, carla_jack_bufsize_callback, this); | ||||
jackbridge_set_sample_rate_callback(client, carla_jack_srate_callback, this); | jackbridge_set_sample_rate_callback(client, carla_jack_srate_callback, this); | ||||
@@ -785,8 +785,12 @@ void CarlaPlugin::setMidiProgram(int32_t index, const bool sendGui, const bool s | |||||
if (sendGui && index >= 0) | if (sendGui && index >= 0) | ||||
uiMidiProgramChange(index); | uiMidiProgramChange(index); | ||||
#ifndef BUILD_BRIDGE | |||||
// Change default parameter values (sound banks never change defaults) | // Change default parameter values (sound banks never change defaults) | ||||
if (index >= 0 && type() != PLUGIN_GIG && type() != PLUGIN_SF2 && type() != PLUGIN_SFZ) | if (index >= 0 && type() != PLUGIN_GIG && type() != PLUGIN_SF2 && type() != PLUGIN_SFZ) | ||||
#else | |||||
if (index >= 0) | |||||
#endif | |||||
{ | { | ||||
for (uint32_t i=0; i < fData->param.count; i++) | for (uint32_t i=0; i < fData->param.count; i++) | ||||
{ | { | ||||
@@ -839,7 +843,7 @@ void CarlaPlugin::idleGui() | |||||
if (fData->hints & PLUGIN_USES_SINGLE_THREAD) | if (fData->hints & PLUGIN_USES_SINGLE_THREAD) | ||||
{ | { | ||||
// Process postponed events | // Process postponed events | ||||
postEventsRun(); | |||||
//postEventsRun(); | |||||
// Update parameter outputs | // Update parameter outputs | ||||
for (uint32_t i=0; i < fData->param.count; i++) | for (uint32_t i=0; i < fData->param.count; i++) | ||||
@@ -962,8 +966,8 @@ void CarlaPlugin::registerToOscClient() | |||||
#ifdef BUILD_BRIDGE | #ifdef BUILD_BRIDGE | ||||
fData->engine->osc_send_bridge_parameter_info(i, bufName, bufUnit); | fData->engine->osc_send_bridge_parameter_info(i, bufName, bufUnit); | ||||
fData->engine->osc_send_bridge_parameter_data(i, param.data[i].type, param.data[i].rindex, param.data[i].hints, param.data[i].midiChannel, param.data[i].midiCC); | |||||
fData->engine->osc_send_bridge_parameter_ranges(i, param.ranges[i].def, param.ranges[i].min, param.ranges[i].max, param.ranges[i].step, param.ranges[i].stepSmall, param.ranges[i].stepLarge); | |||||
//fData->engine->osc_send_bridge_parameter_data(i, fData->param.data[i].type, fData->param.data[i].rindex, param.data[i].hints, param.data[i].midiChannel, param.data[i].midiCC); | |||||
//fData->engine->osc_send_bridge_parameter_ranges(i, fData->param.ranges[i].def, fData->param.ranges[i].min, param.ranges[i].max, param.ranges[i].step, param.ranges[i].stepSmall, param.ranges[i].stepLarge); | |||||
fData->engine->osc_send_bridge_set_parameter_value(i, getParameterValue(i)); | fData->engine->osc_send_bridge_set_parameter_value(i, getParameterValue(i)); | ||||
#else | #else | ||||
fData->engine->osc_send_control_set_parameter_data(fData->id, i, fData->param.data[i].type, fData->param.data[i].hints, bufName, bufUnit, getParameterValue(i)); | fData->engine->osc_send_control_set_parameter_data(fData->id, i, fData->param.data[i].type, fData->param.data[i].hints, bufName, bufUnit, getParameterValue(i)); | ||||
@@ -999,12 +1003,12 @@ void CarlaPlugin::registerToOscClient() | |||||
if (fData->midiprog.count > 0) | if (fData->midiprog.count > 0) | ||||
{ | { | ||||
#ifdef BUILD_BRIDGE | #ifdef BUILD_BRIDGE | ||||
x_engine->osc_send_bridge_midi_program_count(midiprog.count); | |||||
fData->engine->osc_send_bridge_midi_program_count(fData->midiprog.count); | |||||
for (uint32_t i=0; i < midiprog.count; i++) | |||||
x_engine->osc_send_bridge_midi_program_info(i, midiprog.data[i].bank, midiprog.data[i].program, midiprog.data[i].name); | |||||
for (uint32_t i=0; i < fData->midiprog.count; i++) | |||||
fData->engine->osc_send_bridge_midi_program_info(i, fData->midiprog.data[i].bank, fData->midiprog.data[i].program, fData->midiprog.data[i].name); | |||||
x_engine->osc_send_bridge_set_midi_program(prog.current); | |||||
fData->engine->osc_send_bridge_set_midi_program(fData->midiprog.current); | |||||
#else | #else | ||||
fData->engine->osc_send_control_set_midi_program_count(fData->id, fData->midiprog.count); | fData->engine->osc_send_control_set_midi_program_count(fData->id, fData->midiprog.count); | ||||
@@ -19,8 +19,10 @@ | |||||
#include "carla_bridge_client.hpp" | #include "carla_bridge_client.hpp" | ||||
#include "carla_bridge_toolkit.hpp" | #include "carla_bridge_toolkit.hpp" | ||||
#include "carla_backend_utils.hpp" | |||||
#include "carla_engine.hpp" | |||||
#include "carla_plugin.hpp" | #include "carla_plugin.hpp" | ||||
#include "../carla/Shared.hpp" | |||||
#include "Shared.hpp" | |||||
#include <set> | #include <set> | ||||
#include <QtCore/QDir> | #include <QtCore/QDir> | ||||
@@ -101,8 +103,8 @@ CARLA_BRIDGE_START_NAMESPACE | |||||
// ------------------------------------------------------------------------- | // ------------------------------------------------------------------------- | ||||
class CarlaBridgeToolkitPlugin : public CarlaBridgeToolkit, | |||||
public CarlaBackend::CarlaPluginGUI::Callback | |||||
class CarlaBridgeToolkitPlugin : public CarlaBridgeToolkit //, | |||||
//public CarlaBackend::CarlaPluginGUI::Callback | |||||
{ | { | ||||
public: | public: | ||||
CarlaBridgeToolkitPlugin(CarlaBridgeClient* const client, const char* const uiTitle) | CarlaBridgeToolkitPlugin(CarlaBridgeClient* const client, const char* const uiTitle) | ||||
@@ -111,7 +113,7 @@ public: | |||||
qDebug("CarlaBridgeToolkitPlugin::CarlaBridgeToolkitPlugin(%p, \"%s\")", client, uiTitle); | qDebug("CarlaBridgeToolkitPlugin::CarlaBridgeToolkitPlugin(%p, \"%s\")", client, uiTitle); | ||||
app = nullptr; | app = nullptr; | ||||
gui = nullptr; | |||||
//gui = nullptr; | |||||
m_hasUI = false; | m_hasUI = false; | ||||
m_uiQuit = false; | m_uiQuit = false; | ||||
@@ -124,6 +126,7 @@ public: | |||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::~CarlaBridgeToolkitPlugin()"); | qDebug("CarlaBridgeToolkitPlugin::~CarlaBridgeToolkitPlugin()"); | ||||
#if 0 | |||||
if (gui) | if (gui) | ||||
{ | { | ||||
gui->close(); | gui->close(); | ||||
@@ -131,6 +134,7 @@ public: | |||||
delete gui; | delete gui; | ||||
gui = nullptr; | gui = nullptr; | ||||
} | } | ||||
#endif | |||||
if (app) | if (app) | ||||
{ | { | ||||
@@ -146,18 +150,18 @@ public: | |||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::init()"); | qDebug("CarlaBridgeToolkitPlugin::init()"); | ||||
CARLA_ASSERT(! app); | CARLA_ASSERT(! app); | ||||
CARLA_ASSERT(! gui); | |||||
//CARLA_ASSERT(! gui); | |||||
app = new QApplication(qargc, qargv); | app = new QApplication(qargc, qargv); | ||||
gui = new CarlaBackend::CarlaPluginGUI(nullptr, this); | |||||
//gui = new CarlaBackend::CarlaPluginGUI(nullptr, this); | |||||
} | } | ||||
void exec(const bool showGui) | void exec(const bool showGui) | ||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::exec(%s)", bool2str(showGui)); | qDebug("CarlaBridgeToolkitPlugin::exec(%s)", bool2str(showGui)); | ||||
CARLA_ASSERT(app); | CARLA_ASSERT(app); | ||||
CARLA_ASSERT(gui); | |||||
//CARLA_ASSERT(gui); | |||||
CARLA_ASSERT(client); | CARLA_ASSERT(client); | ||||
if (showGui) | if (showGui) | ||||
@@ -193,12 +197,15 @@ public: | |||||
void resize(const int width, const int height) | void resize(const int width, const int height) | ||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::resize(%i, %i)", width, height); | qDebug("CarlaBridgeToolkitPlugin::resize(%i, %i)", width, height); | ||||
#if 0 | |||||
CARLA_ASSERT(gui); | CARLA_ASSERT(gui); | ||||
if (gui) | if (gui) | ||||
gui->setNewSize(width, height); | gui->setNewSize(width, height); | ||||
#endif | |||||
} | } | ||||
#if 0 | |||||
GuiContainer* getContainer() const | GuiContainer* getContainer() const | ||||
{ | { | ||||
CARLA_ASSERT(gui); | CARLA_ASSERT(gui); | ||||
@@ -218,6 +225,7 @@ public: | |||||
return nullptr; | return nullptr; | ||||
} | } | ||||
#endif | |||||
void setHasUI(const bool hasUI, const bool showUI) | void setHasUI(const bool hasUI, const bool showUI) | ||||
{ | { | ||||
@@ -229,7 +237,7 @@ public: | |||||
protected: | protected: | ||||
QApplication* app; | QApplication* app; | ||||
CarlaBackend::CarlaPluginGUI* gui; | |||||
//CarlaBackend::CarlaPluginGUI* gui; | |||||
private: | private: | ||||
bool m_hasUI; | bool m_hasUI; | ||||
@@ -284,6 +292,7 @@ public: | |||||
if (! plugin) | if (! plugin) | ||||
return; | return; | ||||
#if 0 | |||||
bool guiResizable; | bool guiResizable; | ||||
CarlaBackend::GuiType guiType; | CarlaBackend::GuiType guiType; | ||||
plugin->getGuiInfo(&guiType, &guiResizable); | plugin->getGuiInfo(&guiType, &guiResizable); | ||||
@@ -299,6 +308,7 @@ public: | |||||
{ | { | ||||
plugToolkit->setHasUI(guiType != CarlaBackend::GUI_NONE, false); | plugToolkit->setHasUI(guiType != CarlaBackend::GUI_NONE, false); | ||||
} | } | ||||
#endif | |||||
} | } | ||||
void quit() | void quit() | ||||
@@ -383,6 +393,7 @@ public: | |||||
qDebug("Loading plugin state now..."); | qDebug("Loading plugin state now..."); | ||||
#if 0 | |||||
// --------------------------------------------------------------------- | // --------------------------------------------------------------------- | ||||
// Part 1 - set custom data (except chunks) | // Part 1 - set custom data (except chunks) | ||||
@@ -397,6 +408,7 @@ public: | |||||
plugin->setCustomData(type, key, value, true); | plugin->setCustomData(type, key, value, true); | ||||
} | } | ||||
} | } | ||||
#endif | |||||
// --------------------------------------------------------------------- | // --------------------------------------------------------------------- | ||||
// Part 2 - set program | // Part 2 - set program | ||||
@@ -455,9 +467,9 @@ public: | |||||
for (uint32_t i=0; i < midiProgramCount; i++) | for (uint32_t i=0; i < midiProgramCount; i++) | ||||
{ | { | ||||
const MidiProgramData* const midiProgramData = plugin->midiProgramData(i); | |||||
const MidiProgramData& midiProgramData = plugin->midiProgramData(i); | |||||
if ((int32_t)midiProgramData->bank == content->currentMidiBank && (int32_t)midiProgramData->program == content->currentMidiProgram) | |||||
if ((int32_t)midiProgramData.bank == content->currentMidiBank && (int32_t)midiProgramData.program == content->currentMidiProgram) | |||||
{ | { | ||||
plugin->setMidiProgram(i, true, true, false, true); | plugin->setMidiProgram(i, true, true, false, true); | ||||
break; | break; | ||||
@@ -560,10 +572,10 @@ public: | |||||
// Now set parameter | // Now set parameter | ||||
if (index >= 0) | if (index >= 0) | ||||
{ | { | ||||
const ParameterData* const paramData = plugin->parameterData(index); | |||||
const ParameterData& paramData = plugin->parameterData(index); | |||||
double value = parameter.value; | double value = parameter.value; | ||||
if (paramData->hints & PARAMETER_USES_SAMPLERATE) | |||||
if (paramData.hints & PARAMETER_USES_SAMPLERATE) | |||||
value *= sampleRate; | value *= sampleRate; | ||||
plugin->setParameterValue(index, value, true, true, false); | plugin->setParameterValue(index, value, true, true, false); | ||||
@@ -574,6 +586,7 @@ public: | |||||
qWarning("Could not set parameter data for '%s')", parameter.name.toUtf8().constData()); | qWarning("Could not set parameter data for '%s')", parameter.name.toUtf8().constData()); | ||||
} | } | ||||
#if 0 | |||||
// --------------------------------------------------------------------- | // --------------------------------------------------------------------- | ||||
// Part 5 - set chunk data | // Part 5 - set chunk data | ||||
@@ -588,6 +601,7 @@ public: | |||||
plugin->setCustomData(type, key, value, true); | plugin->setCustomData(type, key, value, true); | ||||
} | } | ||||
} | } | ||||
#endif | |||||
if (! content->chunk.isEmpty()) | if (! content->chunk.isEmpty()) | ||||
plugin->setChunkData(content->chunk.toUtf8().constData()); | plugin->setChunkData(content->chunk.toUtf8().constData()); | ||||
@@ -599,8 +613,8 @@ public: | |||||
{ | { | ||||
CARLA_ASSERT(engine); | CARLA_ASSERT(engine); | ||||
if (engine) | |||||
engine->osc_send_bridge_configure(CarlaBackend::CARLA_BRIDGE_MSG_HIDE_GUI, ""); | |||||
//if (engine) | |||||
// engine->osc_send_bridge_configure(CarlaBackend::CARLA_BRIDGE_MSG_HIDE_GUI, ""); | |||||
} | } | ||||
void showPluginGui(const bool yesNo) | void showPluginGui(const bool yesNo) | ||||
@@ -675,7 +689,7 @@ public: | |||||
if (! plugin) | if (! plugin) | ||||
return; | return; | ||||
plugin->sendMidiSingleNote(channel, note, velo, true, true, false); | |||||
//plugin->sendMidiSingleNote(channel, note, velo, true, true, false); | |||||
} | } | ||||
void noteOff(const uint8_t channel, const uint8_t note) | void noteOff(const uint8_t channel, const uint8_t note) | ||||
@@ -686,7 +700,7 @@ public: | |||||
if (! plugin) | if (! plugin) | ||||
return; | return; | ||||
plugin->sendMidiSingleNote(channel, note, 0, true, true, false); | |||||
//plugin->sendMidiSingleNote(channel, note, 0, true, true, false); | |||||
} | } | ||||
// --------------------------------------------------------------------- | // --------------------------------------------------------------------- | ||||
@@ -705,8 +719,8 @@ public: | |||||
for (uint32_t i=0; i < plugin->customDataCount(); i++) | for (uint32_t i=0; i < plugin->customDataCount(); i++) | ||||
{ | { | ||||
const CarlaBackend::CustomData* const cdata = plugin->customData(i); | |||||
engine->osc_send_bridge_set_custom_data(cdata->type, cdata->key, cdata->value); | |||||
const CarlaBackend::CustomData& cdata = plugin->customData(i); | |||||
engine->osc_send_bridge_set_custom_data(cdata.type, cdata.key, cdata.value); | |||||
} | } | ||||
if (plugin->hints() & CarlaBackend::PLUGIN_USES_CHUNKS) | if (plugin->hints() & CarlaBackend::PLUGIN_USES_CHUNKS) | ||||
@@ -737,7 +751,7 @@ public: | |||||
} | } | ||||
} | } | ||||
engine->osc_send_bridge_configure(CarlaBackend::CARLA_BRIDGE_MSG_SAVED, ""); | |||||
//engine->osc_send_bridge_configure(CarlaBackend::CARLA_BRIDGE_MSG_SAVED, ""); | |||||
} | } | ||||
void setCustomData(const char* const type, const char* const key, const char* const value) | void setCustomData(const char* const type, const char* const key, const char* const value) | ||||
@@ -785,7 +799,7 @@ public: | |||||
// --------------------------------------------------------------------- | // --------------------------------------------------------------------- | ||||
// callback | // callback | ||||
static void callback(void* const ptr, CarlaBackend::CallbackType const action, const unsigned short, const int value1, const int value2, const double value3, const char* const valueStr) | |||||
static void callback(void* const ptr, CarlaBackend::CallbackType const action, const int, const int value1, const int value2, const double value3, const char* const valueStr) | |||||
{ | { | ||||
CARLA_ASSERT(ptr); | CARLA_ASSERT(ptr); | ||||
@@ -857,12 +871,6 @@ protected: | |||||
} | } | ||||
break; | break; | ||||
case CALLBACK_RESIZE_GUI: | |||||
nextWidth = value1; | |||||
nextHeight = value2; | |||||
needsResize = true; | |||||
break; | |||||
case CALLBACK_UPDATE: | case CALLBACK_UPDATE: | ||||
// todo | // todo | ||||
break; | break; | ||||
@@ -929,6 +937,7 @@ protected: | |||||
void CarlaBridgeToolkitPlugin::show() | void CarlaBridgeToolkitPlugin::show() | ||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::show()"); | qDebug("CarlaBridgeToolkitPlugin::show()"); | ||||
#if 0 | |||||
CARLA_ASSERT(gui); | CARLA_ASSERT(gui); | ||||
CarlaPluginClient* const plugClient = (CarlaPluginClient*)client; | CarlaPluginClient* const plugClient = (CarlaPluginClient*)client; | ||||
@@ -937,11 +946,13 @@ void CarlaBridgeToolkitPlugin::show() | |||||
if (gui && m_uiShow) | if (gui && m_uiShow) | ||||
gui->setVisible(true); | gui->setVisible(true); | ||||
#endif | |||||
} | } | ||||
void CarlaBridgeToolkitPlugin::hide() | void CarlaBridgeToolkitPlugin::hide() | ||||
{ | { | ||||
qDebug("CarlaBridgeToolkitPlugin::hide()"); | qDebug("CarlaBridgeToolkitPlugin::hide()"); | ||||
#if 0 | |||||
CARLA_ASSERT(gui); | CARLA_ASSERT(gui); | ||||
CarlaPluginClient* const plugClient = (CarlaPluginClient*)client; | CarlaPluginClient* const plugClient = (CarlaPluginClient*)client; | ||||
@@ -950,6 +961,7 @@ void CarlaBridgeToolkitPlugin::hide() | |||||
gui->setVisible(false); | gui->setVisible(false); | ||||
plugClient->showPluginGui(false); | plugClient->showPluginGui(false); | ||||
#endif | |||||
} | } | ||||
void CarlaBridgeToolkitPlugin::guiClosedCallback() | void CarlaBridgeToolkitPlugin::guiClosedCallback() | ||||
@@ -1102,10 +1114,10 @@ int main(int argc, char* argv[]) | |||||
extraStuff = findDSSIGUI(filename, name, label); | extraStuff = findDSSIGUI(filename, name, label); | ||||
// Init plugin | // Init plugin | ||||
short id = engine->addPlugin(itype, filename, name, label, extraStuff); | |||||
int id = engine->addPlugin(itype, filename, name, label, extraStuff); | |||||
int ret; | int ret; | ||||
if (id >= 0 && id < CarlaBackend::MAX_PLUGINS) | |||||
if (id >= 0 && id < CarlaBackend::MAX_DEFAULT_PLUGINS) | |||||
{ | { | ||||
CarlaBackend::CarlaPlugin* const plugin = engine->getPlugin(id); | CarlaBackend::CarlaPlugin* const plugin = engine->getPlugin(id); | ||||
client.setPlugin(plugin); | client.setPlugin(plugin); | ||||
@@ -1133,7 +1145,7 @@ int main(int argc, char* argv[]) | |||||
if (extraStuff && itype == CarlaBackend::PLUGIN_DSSI) | if (extraStuff && itype == CarlaBackend::PLUGIN_DSSI) | ||||
free((char*)extraStuff); | free((char*)extraStuff); | ||||
engine->aboutToClose(); | |||||
engine->setAboutToClose(); | |||||
engine->removeAllPlugins(); | engine->removeAllPlugins(); | ||||
engine->close(); | engine->close(); | ||||
delete engine; | delete engine; | ||||
@@ -25,76 +25,78 @@ HEADERS = \ | |||||
../carla_bridge_osc.hpp \ | ../carla_bridge_osc.hpp \ | ||||
../carla_bridge_toolkit.hpp \ | ../carla_bridge_toolkit.hpp \ | ||||
# carla | |||||
SOURCES += \ | |||||
../../carla/Shared.cpp | |||||
# common | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla/Shared.hpp | |||||
../../backend/carla_backend.hpp \ | |||||
../../backend/carla_engine.hpp \ | |||||
../../backend/carla_plugin.hpp | |||||
# carla-engine | # carla-engine | ||||
SOURCES += \ | SOURCES += \ | ||||
../../carla-engine/carla_engine.cpp \ | |||||
../../carla-engine/carla_engine_osc.cpp \ | |||||
../../carla-engine/carla_engine_thread.cpp \ | |||||
../../carla-engine/jack.cpp | |||||
../../backend/engine/carla_engine.cpp \ | |||||
../../backend/engine/carla_engine_osc.cpp \ | |||||
../../backend/engine/carla_engine_thread.cpp \ | |||||
../../backend/engine/jack.cpp | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla-engine/carla_engine.hpp \ | |||||
../../carla-engine/carla_engine_osc.hpp \ | |||||
../../carla-engine/carla_engine_thread.hpp \ | |||||
../../backend/engine/carla_engine.hpp \ | |||||
../../backend/engine/carla_engine_osc.hpp \ | |||||
../../backend/engine/carla_engine_thread.hpp \ | |||||
# carla-plugin | # carla-plugin | ||||
SOURCES += \ | SOURCES += \ | ||||
../../carla-plugin/carla_plugin.cpp \ | |||||
../../carla-plugin/carla_plugin_thread.cpp \ | |||||
../../carla-plugin/ladspa.cpp \ | |||||
../../carla-plugin/dssi.cpp \ | |||||
../../carla-plugin/lv2.cpp \ | |||||
../../carla-plugin/vst.cpp | |||||
../../backend/plugin/carla_plugin.cpp | |||||
# ../../backend/plugin/carla_plugin_thread.cpp \ | |||||
# ../../backend/plugin/ladspa.cpp \ | |||||
# ../../backend/plugin/dssi.cpp \ | |||||
# ../../backend/plugin/lv2.cpp \ | |||||
# ../../backend/plugin/vst.cpp | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla-plugin/carla_plugin.hpp \ | |||||
../../carla-plugin/carla_plugin_thread.hpp | |||||
../../backend/plugin/carla_plugin_thread.hpp | |||||
# carla-utils | |||||
SOURCES += \ | |||||
../../backend/utils/Shared.cpp | |||||
# carla-backend | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla-backend/carla_backend.hpp \ | |||||
../../carla-backend/carla_backend_utils.hpp | |||||
../../backend/utils/Shared.hpp | |||||
# carla-includes | |||||
# includes | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla-includes/carla_defines.hpp \ | |||||
../../carla-includes/carla_midi.h \ | |||||
../../carla-includes/ladspa_rdf.hpp \ | |||||
../../carla-includes/lv2_rdf.hpp | |||||
../../includes/carla_defines.hpp \ | |||||
../../includes/carla_midi.h \ | |||||
../../includes/ladspa_rdf.hpp \ | |||||
../../includes/lv2_rdf.hpp | |||||
# carla-utils | |||||
# utils | |||||
HEADERS += \ | HEADERS += \ | ||||
../../carla-utils/carla_lib_utils.hpp \ | |||||
../../carla-utils/carla_osc_utils.hpp \ | |||||
../../carla-utils/carla_ladspa_utils.hpp \ | |||||
../../carla-utils/carla_lv2_utils.hpp \ | |||||
../../carla-utils/carla_vst_utils.hpp | |||||
../../utils/carla_lib_utils.hpp \ | |||||
../../utils/carla_osc_utils.hpp \ | |||||
../../utils/carla_ladspa_utils.hpp \ | |||||
../../utils/carla_lv2_utils.hpp \ | |||||
../../utils/carla_vst_utils.hpp \ | |||||
../../utils/carla_backend_utils.hpp | |||||
INCLUDEPATH = .. \ | INCLUDEPATH = .. \ | ||||
../../carla-backend \ | |||||
../../carla-engine \ | |||||
../../carla-includes \ | |||||
../../carla-jackbridge \ | |||||
../../carla-plugin \ | |||||
../../carla-utils | |||||
../../backend \ | |||||
../../backend/engine \ | |||||
../../backend/plugin \ | |||||
../../backend/utils \ | |||||
../../includes \ | |||||
../../libs \ | |||||
../../utils | |||||
DEFINES = QTCREATOR_TEST | DEFINES = QTCREATOR_TEST | ||||
DEFINES += DEBUG | DEFINES += DEBUG | ||||
#DEFINES += VESTIGE_HEADER | #DEFINES += VESTIGE_HEADER | ||||
DEFINES += BUILD_BRIDGE BUILD_BRIDGE_PLUGIN BRIDGE_PLUGIN | DEFINES += BUILD_BRIDGE BUILD_BRIDGE_PLUGIN BRIDGE_PLUGIN | ||||
DEFINES += CARLA_ENGINE_JACK | |||||
DEFINES += WANT_JACK | |||||
DEFINES += WANT_LADSPA WANT_DSSI WANT_LV2 WANT_VST | DEFINES += WANT_LADSPA WANT_DSSI WANT_LV2 WANT_VST | ||||
LIBS = -ldl \ | LIBS = -ldl \ | ||||
../../carla-lilv/carla_lilv.a \ | |||||
../../carla-rtmempool/carla_rtmempool.a | |||||
../../libs/lilv.a \ | |||||
../../libs/rtmempool.a | |||||
QMAKE_CXXFLAGS *= -std=c++0x | QMAKE_CXXFLAGS *= -std=c++0x |
@@ -55,8 +55,10 @@ const char* PluginType2Str(const PluginType& type) | |||||
{ | { | ||||
case PLUGIN_NONE: | case PLUGIN_NONE: | ||||
return "PLUGIN_NONE"; | return "PLUGIN_NONE"; | ||||
#ifndef BUILD_BRIDGE | |||||
case PLUGIN_INTERNAL: | case PLUGIN_INTERNAL: | ||||
return "PLUGIN_INTERNAL"; | return "PLUGIN_INTERNAL"; | ||||
#endif | |||||
case PLUGIN_LADSPA: | case PLUGIN_LADSPA: | ||||
return "PLUGIN_LADSPA"; | return "PLUGIN_LADSPA"; | ||||
case PLUGIN_DSSI: | case PLUGIN_DSSI: | ||||
@@ -65,12 +67,14 @@ const char* PluginType2Str(const PluginType& type) | |||||
return "PLUGIN_LV2"; | return "PLUGIN_LV2"; | ||||
case PLUGIN_VST: | case PLUGIN_VST: | ||||
return "PLUGIN_VST"; | return "PLUGIN_VST"; | ||||
#ifndef BUILD_BRIDGE | |||||
case PLUGIN_GIG: | case PLUGIN_GIG: | ||||
return "PLUGIN_GIG"; | return "PLUGIN_GIG"; | ||||
case PLUGIN_SF2: | case PLUGIN_SF2: | ||||
return "PLUGIN_SF2"; | return "PLUGIN_SF2"; | ||||
case PLUGIN_SFZ: | case PLUGIN_SFZ: | ||||
return "PLUGIN_SFZ"; | return "PLUGIN_SFZ"; | ||||
#endif | |||||
} | } | ||||
qWarning("CarlaBackend::PluginType2Str(%i) - invalid type", type); | qWarning("CarlaBackend::PluginType2Str(%i) - invalid type", type); | ||||
@@ -231,7 +231,7 @@ private: | |||||
return value; | return value; | ||||
} | } | ||||
LIST_DECLARATIONS(List) | |||||
//LIST_DECLARATIONS(List) | |||||
}; | }; | ||||
template<typename T> | template<typename T> | ||||
@@ -292,7 +292,7 @@ private: | |||||
rtsafe_memory_pool_deallocate(fMemPool, dataPtr); | rtsafe_memory_pool_deallocate(fMemPool, dataPtr); | ||||
} | } | ||||
LIST_DECLARATIONS(RtList) | |||||
//LIST_DECLARATIONS(RtList) | |||||
}; | }; | ||||
template<typename T> | template<typename T> | ||||
@@ -318,7 +318,7 @@ private: | |||||
free(dataPtr); | free(dataPtr); | ||||
} | } | ||||
LIST_DECLARATIONS(NonRtList) | |||||
//LIST_DECLARATIONS(NonRtList) | |||||
}; | }; | ||||
template<typename T> | template<typename T> | ||||
@@ -344,7 +344,7 @@ private: | |||||
delete dataPtr; | delete dataPtr; | ||||
} | } | ||||
LIST_DECLARATIONS(NonRtListNew) | |||||
//LIST_DECLARATIONS(NonRtListNew) | |||||
}; | }; | ||||
// ----------------------------------------------------------------------- | // ----------------------------------------------------------------------- | ||||