@@ -569,7 +569,7 @@ void CarlaEngine::setOscBridgeData(const CarlaOscData* const oscData) | |||
// ----------------------------------------------------------------------- | |||
// protected calls | |||
void CarlaEngine::bufferSizeChanged(uint32_t newBufferSize) | |||
void CarlaEngine::bufferSizeChanged(const uint32_t newBufferSize) | |||
{ | |||
qDebug("CarlaEngine::bufferSizeChanged(%i)", newBufferSize); | |||
@@ -585,12 +585,11 @@ void CarlaEngine::bufferSizeChanged(uint32_t newBufferSize) | |||
// ------------------------------------------------------------------------------------------------------------------- | |||
// Carla Engine Client | |||
CarlaEngineClient::CarlaEngineClient(const CarlaEngineType& type_, const CarlaEngineClientNativeHandle& handle_) | |||
: type(type_), | |||
handle(handle_) | |||
CarlaEngineClient::CarlaEngineClient(const CarlaEngineClientNativeHandle& handle_) | |||
: handle(handle_) | |||
{ | |||
qDebug("CarlaEngineClient::CarlaEngineClient()"); | |||
CARLA_ASSERT(type != CarlaEngineTypeNull); | |||
CARLA_ASSERT(handle.type != CarlaEngineTypeNull); | |||
m_active = false; | |||
} | |||
@@ -681,11 +680,11 @@ bool CarlaEngineClient::isOk() const | |||
#endif | |||
{ | |||
#ifdef CARLA_ENGINE_JACK | |||
if (type == CarlaEngineTypeJack) | |||
if (handle.type == CarlaEngineTypeJack) | |||
return bool(handle.jackClient); | |||
#endif | |||
#ifdef CARLA_ENGINE_RTAUDIO | |||
if (type == CarlaEngineTypeRtAudio) | |||
if (handle.type == CarlaEngineTypeRtAudio) | |||
return bool(handle.rtAudioPtr); | |||
#endif | |||
} | |||
@@ -695,7 +694,7 @@ bool CarlaEngineClient::isOk() const | |||
const CarlaEngineBasePort* CarlaEngineClient::addPort(const CarlaEnginePortType portType, const char* const name, const bool isInput) | |||
{ | |||
qDebug("CarlaEngineClient::addPort(%i, \"%s\", %s)", type, name, bool2str(isInput)); | |||
qDebug("CarlaEngineClient::addPort(%i, \"%s\", %s)", portType, name, bool2str(isInput)); | |||
CarlaEnginePortNativeHandle portHandle; | |||
#ifdef CARLA_ENGINE_JACK | |||
@@ -707,7 +706,7 @@ const CarlaEngineBasePort* CarlaEngineClient::addPort(const CarlaEnginePortType | |||
#endif | |||
{ | |||
#ifdef CARLA_ENGINE_JACK | |||
if (type == CarlaEngineTypeJack) | |||
if (handle.type == CarlaEngineTypeJack) | |||
{ | |||
switch (portType) | |||
{ | |||
@@ -723,7 +722,7 @@ const CarlaEngineBasePort* CarlaEngineClient::addPort(const CarlaEnginePortType | |||
#endif | |||
#ifdef CARLA_ENGINE_RTAUDIO | |||
if (type == CarlaEngineTypeRtAudio) | |||
if (handle.type == CarlaEngineTypeRtAudio) | |||
{ | |||
// TODO | |||
} | |||
@@ -740,7 +739,7 @@ const CarlaEngineBasePort* CarlaEngineClient::addPort(const CarlaEnginePortType | |||
return new CarlaEngineMidiPort(portHandle, isInput); | |||
} | |||
qCritical("CarlaEngineClient::addPort(%i, \"%s\", %s) - invalid type", type, name, bool2str(isInput)); | |||
qCritical("CarlaEngineClient::addPort(%i, \"%s\", %s) - invalid type", portType, name, bool2str(isInput)); | |||
return nullptr; | |||
} | |||
@@ -52,7 +52,9 @@ const uint32_t CarlaEngineTimeBBT = 0x1; | |||
enum CarlaEngineType { | |||
CarlaEngineTypeNull, | |||
CarlaEngineTypeJack, | |||
CarlaEngineTypeRtAudio | |||
CarlaEngineTypeRtAudio, | |||
CarlaEngineTypePluginLv2, | |||
CarlaEngineTypePluginVst | |||
}; | |||
enum CarlaEnginePortType { | |||
@@ -96,7 +98,7 @@ struct CarlaEngineMidiEvent { | |||
size(0), | |||
data{0} {} | |||
#else | |||
size(0) { memset(data, 0, sizeof(uint8_t)*4); } | |||
size(0) { data[0] = data[1] = data[2] = data[3] = 0; } | |||
#endif | |||
}; | |||
@@ -136,6 +138,7 @@ struct CarlaTimeInfo { | |||
}; | |||
struct CarlaEngineClientNativeHandle { | |||
CarlaEngineType type; | |||
#ifdef CARLA_ENGINE_JACK | |||
jack_client_t* jackClient; | |||
#endif | |||
@@ -145,6 +148,7 @@ struct CarlaEngineClientNativeHandle { | |||
CarlaEngineClientNativeHandle() | |||
{ | |||
type = CarlaEngineTypeNull; | |||
#ifdef CARLA_ENGINE_JACK | |||
jackClient = nullptr; | |||
#endif | |||
@@ -374,7 +378,7 @@ protected: | |||
double sampleRate; | |||
CarlaTimeInfo timeInfo; | |||
void bufferSizeChanged(uint32_t newBufferSize); | |||
void bufferSizeChanged(const uint32_t newBufferSize); | |||
private: | |||
CarlaCheckThread m_checkThread; | |||
@@ -404,7 +408,7 @@ private: | |||
class CarlaEngineClient | |||
{ | |||
public: | |||
CarlaEngineClient(const CarlaEngineType& type, const CarlaEngineClientNativeHandle& handle); | |||
CarlaEngineClient(const CarlaEngineClientNativeHandle& handle); | |||
~CarlaEngineClient(); | |||
void activate(); | |||
@@ -417,7 +421,6 @@ public: | |||
private: | |||
bool m_active; | |||
const CarlaEngineType type; | |||
const CarlaEngineClientNativeHandle handle; | |||
}; | |||
@@ -489,7 +492,6 @@ public: | |||
bool init(const char* const clientName); | |||
bool close(); | |||
bool isOnAudioThread(); | |||
bool isOffline(); | |||
bool isRunning(); | |||
@@ -227,6 +227,7 @@ bool CarlaEngineJack::isRunning() | |||
CarlaEngineClient* CarlaEngineJack::addClient(CarlaPlugin* const plugin) | |||
{ | |||
CarlaEngineClientNativeHandle handle; | |||
handle.type = type; | |||
#ifndef BUILD_BRIDGE | |||
if (carlaOptions.processMode == PROCESS_MODE_SINGLE_CLIENT) | |||
@@ -243,7 +244,7 @@ CarlaEngineClient* CarlaEngineJack::addClient(CarlaPlugin* const plugin) | |||
//{ | |||
//} | |||
return new CarlaEngineClient(CarlaEngineTypeJack, handle); | |||
return new CarlaEngineClient(handle); | |||
} | |||
// ------------------------------------------------------------------------------------------------------------------- | |||
@@ -143,6 +143,7 @@ bool CarlaEngineRtAudio::isRunning() | |||
CarlaEngineClient* CarlaEngineRtAudio::addClient(CarlaPlugin* const plugin) | |||
{ | |||
CarlaEngineClientNativeHandle handle; | |||
handle.type = type; | |||
// unsigned int rtBufferFrames = getBufferSize(); | |||
@@ -163,7 +164,7 @@ CarlaEngineClient* CarlaEngineRtAudio::addClient(CarlaPlugin* const plugin) | |||
// return false; | |||
// } | |||
return new CarlaEngineClient(CarlaEngineTypeRtAudio, handle); | |||
return new CarlaEngineClient(handle); | |||
Q_UNUSED(plugin); | |||
} | |||
@@ -15,7 +15,7 @@ VERSION = 0.5.0 | |||
SOURCES = \ | |||
../carla_backend_standalone.cpp \ | |||
# ../carla_backend_lv2.cpp \ | |||
../carla_backend_vst.cpp \ | |||
../carla_bridge.cpp \ | |||
../carla_engine.cpp \ | |||
../carla_engine_jack.cpp \ | |||
@@ -73,6 +73,7 @@ DEFINES += DEBUG NDEBUG | |||
DEFINES += CARLA_ENGINE_JACK | |||
DEFINES += CARLA_ENGINE_RTAUDIO HAVE_GETTIMEOFDAY __LINUX_ALSA__ __LINUX_ALSASEQ__ __LINUX_PULSE__ __RTAUDIO_DEBUG__ __RTMIDI_DEBUG__ | |||
DEFINES += CARLA_ENGINE_LV2 | |||
DEFINES += CARLA_ENGINE_VST | |||
DEFINES += HAVE_SUIL | |||
DEFINES += WANT_LADSPA WANT_DSSI WANT_LV2 WANT_VST | |||
DEFINES += WANT_FLUIDSYNTH WANT_LINUXSAMPLER | |||