diff --git a/.gitmodules b/.gitmodules index d9226cc..5a17e38 100644 --- a/.gitmodules +++ b/.gitmodules @@ -31,3 +31,6 @@ [submodule "plugins/BogaudioModules"] path = plugins/BogaudioModules url = https://github.com/bogaudio/BogaudioModules.git +[submodule "plugins/Bidoo"] + path = plugins/Bidoo + url = https://github.com/sebastien-bouffier/Bidoo.git diff --git a/plugins/Bidoo b/plugins/Bidoo new file mode 160000 index 0000000..e048935 --- /dev/null +++ b/plugins/Bidoo @@ -0,0 +1 @@ +Subproject commit e048935eef8d292b5ba9d01ee14a5ead7779837e diff --git a/plugins/Makefile b/plugins/Makefile index 300ee30..c2a316f 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -128,6 +128,15 @@ PLUGIN_FILES += AudibleInstruments/eurorack/streams/compressor.cc PLUGIN_FILES += $(filter-out Befaco/src/plugin.cpp,$(wildcard Befaco/src/*.cpp)) PLUGIN_BINARIES += Befaco/src/SpringReverbIR.pcm +# -------------------------------------------------------------- +# Bidoo + +PLUGIN_FILES += $(filter-out Bidoo/src/plugin.cpp Bidoo/src/ANTN.cpp,$(wildcard Bidoo/src/*.cpp)) +PLUGIN_FILES += $(wildcard Bidoo/src/dep/*.cpp) +PLUGIN_FILES += $(wildcard Bidoo/src/dep/filters/*.cpp) +PLUGIN_FILES += $(wildcard Bidoo/src/dep/freeverb/*.cpp) +PLUGIN_FILES += $(wildcard Bidoo/src/dep/lodepng/*.cpp) + # -------------------------------------------------------------- # BogaudioModules @@ -191,7 +200,7 @@ BASE_FLAGS += -I../src/Rack/dep/include # BASE_FLAGS += -I../src/Rack/dep/fuzzysearchdatabase/src BASE_FLAGS += -I../src/Rack/dep/glfw/include BASE_FLAGS += -I../src/Rack/dep/nanosvg/src -# BASE_FLAGS += -I../src/Rack/dep/osdialog +BASE_FLAGS += -I../src/Rack/dep/osdialog BASE_FLAGS += -I../src/Rack/dep/oui-blendish BASE_FLAGS += -I../src/Rack/dep/pffft @@ -275,6 +284,11 @@ $(BUILD_DIR)/Befaco/%.cpp.o: Befaco/%.cpp @echo "Compiling $<" $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DpluginInstance=pluginInstance__Befaco -c -o $@ +$(BUILD_DIR)/Bidoo/%.cpp.o: Bidoo/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DpluginInstance=pluginInstance__Bidoo -IBidoo/src/dep/gverb/include -c -o $@ + $(BUILD_DIR)/BogaudioModules/%.cpp.o: BogaudioModules/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 9915a71..37c6ac5 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -28,6 +28,9 @@ // Befaco #include "Befaco/src/plugin.hpp" +// Bidoo +#include "Bidoo/src/plugin.hpp" + // BogaudioModules #define modelADSR modelBogaudioADSR #define modelLFO modelBogaudioLFO @@ -162,6 +165,7 @@ Plugin* pluginInstance__AnimatedCircuits; Plugin* pluginInstance__AudibleInstruments; Plugin* pluginInstance__Befaco; +Plugin* pluginInstance__Bidoo; Plugin* pluginInstance__BogaudioModules; Plugin* pluginInstance__Fundamental; Plugin* pluginInstance__GrandeModular; @@ -347,6 +351,84 @@ static void initStatic__Befaco() } } +static void initStatic__Bidoo() +{ + Plugin* const p = new Plugin; + pluginInstance__Bidoo = p; + + const StaticPluginLoader spl(p, "Bidoo"); + if (spl.ok()) + { + p->addModel(modelTOCANTE); + p->addModel(modelLATE); + p->addModel(modelDIKTAT); + p->addModel(modelDTROY); + p->addModel(modelBORDL); + p->addModel(modelZOUMAI); + p->addModel(modelMU); + p->addModel(modelCHUTE); + p->addModel(modelLOURDE); + p->addModel(modelACNE); + p->addModel(modelMS); + p->addModel(modelDUKE); + p->addModel(modelMOIRE); + p->addModel(modelPILOT); + p->addModel(modelHUITRE); + p->addModel(modelOUAIVE); + p->addModel(modelPOUPRE); + p->addModel(modelMAGMA); + p->addModel(modelOAI); + p->addModel(modelCANARD); + p->addModel(modelEMILE); + p->addModel(modelFORK); + p->addModel(modelTIARE); + //p->addModel(modelCLACOS); + //p->addModel(modelPENEQUE); + p->addModel(modelLIMONADE); + p->addModel(modelLIMBO); + p->addModel(modelPERCO); + p->addModel(modelBAFIS); + p->addModel(modelFFILTR); + p->addModel(modelBAR); + p->addModel(modelMINIBAR); + p->addModel(modelZINC); + p->addModel(modelFREIN); + p->addModel(modelHCTIP); + //p->addModel(modelCURT); + p->addModel(modelDFUZE); + p->addModel(modelREI); + p->addModel(modelRABBIT); + p->addModel(modelBISTROT); + p->addModel(modelSIGMA); + p->addModel(modelGARCON); + p->addModel(modelVOID); + + // NOTE disabled in Cardinal due to curl usage + // p->addModel(modelANTN); + + // intentionally remove known bad plugin + if (json_t* const modules = json_object_get(spl.rootJ, "modules")) + { + size_t i; + json_t* v; + json_array_foreach(modules, i, v) + { + if (json_t* const slug = json_object_get(v, "slug")) + { + if (const char* const value = json_string_value(slug)) + { + if (std::strcmp(value, "antN") == 0) + { + json_array_remove(modules, i); + break; + } + } + } + } + } + } +} + static void initStatic__BogaudioModules() { Plugin* const p = new Plugin; @@ -581,6 +663,7 @@ void initStaticPlugins() initStatic__AnimatedCircuits(); initStatic__AudibleInstruments(); initStatic__Befaco(); + initStatic__Bidoo(); initStatic__BogaudioModules(); initStatic__Fundamental(); initStatic__GrandeModular();