Signed-off-by: falkTX <falktx@falktx.com>tags/v1.0
@@ -88,6 +88,7 @@ jobs: | |||
env: | |||
PKG_CONFIG_PATH: /usr/lib/arm-linux-gnueabihf/pkgconfig | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh linux-armhf | |||
- name: Build linux armhf cross-compiled | |||
run: | | |||
@@ -129,6 +130,7 @@ jobs: | |||
env: | |||
PKG_CONFIG_PATH: /usr/lib/i386-linux-gnu/pkgconfig | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh linux-i686 | |||
- name: Build linux i686 | |||
run: | | |||
@@ -162,6 +164,7 @@ jobs: | |||
sudo apt-get install -yqq libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev | |||
- name: Build extra dependencies | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh linux | |||
- name: Build linux x86_64 | |||
run: | | |||
@@ -195,6 +198,7 @@ jobs: | |||
sudo xcode-select -s "/Applications/Xcode_12.3.app" | |||
- name: Build extra dependencies | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh macos-universal | |||
- name: Build macOS universal | |||
run: | | |||
@@ -241,6 +245,7 @@ jobs: | |||
sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386 | |||
- name: Build extra dependencies | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh win32 | |||
- name: Build win32 cross-compiled | |||
run: | | |||
@@ -281,6 +286,7 @@ jobs: | |||
sudo apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable | |||
- name: Build extra dependencies | |||
run: | | |||
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git | |||
./PawPaw/bootstrap-cardinal.sh win64 | |||
- name: Build win64 cross-compiled | |||
run: | | |||
@@ -19,6 +19,7 @@ | |||
#include "CarlaNativePlugin.h" | |||
#include "DistrhoPlugin.hpp" | |||
#include "extra/Mutex.hpp" | |||
// generates a warning if this is defined as anything else | |||
#define CARLA_API | |||
@@ -27,15 +28,11 @@ START_NAMESPACE_DISTRHO | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
// static Mutex sPluginInfoLoadMutex; | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
class IldaeilBasePlugin : public Plugin | |||
{ | |||
// SharedResourcePointer<JuceInitializer> juceInitializer; | |||
public: | |||
static Mutex sPluginInfoLoadMutex; | |||
const NativePluginDescriptor* fCarlaPluginDescriptor; | |||
NativePluginHandle fCarlaPluginHandle; | |||
@@ -57,4 +54,10 @@ public: | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
void ildaeilProjectLoadedFromDSP(void* ui); | |||
void ildaeilParameterChangeForUI(void* ui, uint32_t index, float value); | |||
const char* ildaeilOpenFileForUI(void* ui, bool isDir, const char* title, const char* filter); | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
END_NAMESPACE_DISTRHO |
@@ -25,7 +25,9 @@ START_NAMESPACE_DISTRHO | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
using namespace CarlaBackend; | |||
Mutex IldaeilBasePlugin::sPluginInfoLoadMutex; | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
static uint32_t host_get_buffer_size(NativeHostHandle); | |||
static double host_get_sample_rate(NativeHostHandle); | |||
@@ -42,10 +44,7 @@ static intptr_t host_dispatcher(NativeHostHandle handle, NativeHostDispatcherOpc | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
void ildaeilParameterChangeForUI(void* ui, uint32_t index, float value); | |||
const char* ildaeilOpenFileForUI(void* ui, bool isDir, const char* title, const char* filter); | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
using namespace CarlaBackend; | |||
class IldaeilPlugin : public IldaeilBasePlugin | |||
{ | |||
@@ -321,12 +320,12 @@ protected: | |||
water::XmlDocument xml(value); | |||
{ | |||
// const MutexLocker cml(sPluginInfoLoadMutex); | |||
const MutexLocker cml(sPluginInfoLoadMutex); | |||
engine->loadProjectInternal(xml, true); | |||
} | |||
// xx cardinal | |||
// projectLoadedFromDSP(fUI); | |||
if (fUI != nullptr) | |||
ildaeilProjectLoadedFromDSP(fUI); | |||
} | |||
} | |||
@@ -47,10 +47,6 @@ START_NAMESPACE_DISTRHO | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
void ildaeilParameterChangeForUI(void* ui, uint32_t index, float value); | |||
const char* ildaeilOpenFileForUI(void* ui, bool isDir, const char* title, const char* filter); | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
using namespace CarlaBackend; | |||
class IldaeilUI : public UI, | |||
@@ -455,8 +451,7 @@ public: | |||
carla_set_engine_option(handle, ENGINE_OPTION_PREFER_PLUGIN_BRIDGES, fPluginWillRunInBridgeMode, nullptr); | |||
// xx cardinal | |||
// const MutexLocker cml(sPluginInfoLoadMutex); | |||
const MutexLocker cml(fPlugin->sPluginInfoLoadMutex); | |||
if (carla_add_plugin(handle, BINARY_NATIVE, fPluginType, nullptr, nullptr, | |||
label, 0, 0x0, PLUGIN_OPTIONS_NULL)) | |||
@@ -622,12 +617,15 @@ protected: | |||
fPluginCount = 0; | |||
delete[] fPlugins; | |||
// xx cardinal | |||
// const MutexLocker cml(sPluginInfoLoadMutex); | |||
uint count; | |||
{ | |||
const MutexLocker cml(fPlugin->sPluginInfoLoadMutex); | |||
d_stdout("Will scan plugins now..."); | |||
const uint count = carla_get_cached_plugin_count(fPluginType, path); | |||
d_stdout("Scanning found %u plugins", count); | |||
d_stdout("Will scan plugins now..."); | |||
count = carla_get_cached_plugin_count(fPluginType, path); | |||
d_stdout("Scanning found %u plugins", count); | |||
} | |||
if (fDrawingState == kDrawingLoading) | |||
{ | |||
@@ -641,6 +639,8 @@ protected: | |||
for (uint i=0, j; i < count && ! shouldThreadExit(); ++i) | |||
{ | |||
const MutexLocker cml(fPlugin->sPluginInfoLoadMutex); | |||
const CarlaCachedPluginInfo* const info = carla_get_cached_plugin_info(fPluginType, i); | |||
DISTRHO_SAFE_ASSERT_CONTINUE(info != nullptr); | |||
@@ -1102,6 +1102,13 @@ private: | |||
// -------------------------------------------------------------------------------------------------------------------- | |||
void ildaeilProjectLoadedFromDSP(void* const ui) | |||
{ | |||
DISTRHO_SAFE_ASSERT_RETURN(ui != nullptr,); | |||
static_cast<IldaeilUI*>(ui)->projectLoadedFromDSP(); | |||
} | |||
void ildaeilParameterChangeForUI(void* const ui, const uint32_t index, const float value) | |||
{ | |||
DISTRHO_SAFE_ASSERT_RETURN(ui != nullptr,); | |||