From faf57ff09612b3b504710c87046f931151868104 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 4 Dec 2021 19:41:30 +0000 Subject: [PATCH] Add Sonus Modular Signed-off-by: falkTX --- .gitmodules | 3 +++ README.md | 1 + doc/LICENSES.md | 1 + plugins/Makefile | 12 +++++++++++ plugins/plugins.cpp | 43 ++++++++++++++++++++++++++++++++++++++++ plugins/res/BaconPlugs | 1 + plugins/res/FehlerFabrik | 1 + plugins/res/sonusmodular | 1 + plugins/sonusmodular | 1 + 9 files changed, 64 insertions(+) create mode 120000 plugins/res/BaconPlugs create mode 120000 plugins/res/FehlerFabrik create mode 120000 plugins/res/sonusmodular create mode 160000 plugins/sonusmodular diff --git a/.gitmodules b/.gitmodules index 6b08b75..cdf1161 100644 --- a/.gitmodules +++ b/.gitmodules @@ -88,3 +88,6 @@ [submodule "plugins/FehlerFabrik"] path = plugins/FehlerFabrik url = https://github.com/RCameron93/FehlerFabrik.git +[submodule "plugins/sonusmodular"] + path = plugins/sonusmodular + url = https://gitlab.com/sonusdept/sonusmodular.git diff --git a/README.md b/README.md index ed1a2d3..39a321f 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,7 @@ At the moment the following 3rd-party modules are provided: - mscHack - Rackwindows - repelzen +- Sonus Modular - Valley - ZZC (*) - ZetaCarinae diff --git a/doc/LICENSES.md b/doc/LICENSES.md index 182e5d6..d514192 100644 --- a/doc/LICENSES.md +++ b/doc/LICENSES.md @@ -36,6 +36,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | mscHack | BSD-3-Clause | | | Rackwindows | MIT | | | repelzen | GPL-3.0-or-later | | +| Sonus Modular | GPL-3.0-or-later | | | Valley | GPL-3.0-or-later | | | ZZC | GPL-3.0-only | GPLv3+ change request https://github.com/zezic/ZZC/issues/86 | | ZetaCarinae | GPL-3.0-or-later | | diff --git a/plugins/Makefile b/plugins/Makefile index aa432eb..f003a0f 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -482,6 +482,11 @@ PLUGIN_FILES += $(filter-out repelzen/src/repelzen.cpp,$(wildcard repelzen/src/* # modules/types which are present in other plugins REPELZEN_CUSTOM = Blank Mixer tanh_pade +# -------------------------------------------------------------- +# sonusmodular + +PLUGIN_FILES += $(filter-out sonusmodular/src/sonusmodular,$(wildcard sonusmodular/src/*.cpp)) + # -------------------------------------------------------------- # ValleyAudio @@ -1014,6 +1019,13 @@ $(BUILD_DIR)/repelzen/%.cpp.o: repelzen/%.cpp $(foreach m,$(REPELZEN_CUSTOM),$(call custom_module_names,$(m),repelzen)) \ -DpluginInstance=pluginInstance__repelzen +$(BUILD_DIR)/sonusmodular/%.cpp.o: sonusmodular/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(SONUSMODULAR_CUSTOM),$(call custom_module_names,$(m),sonusmodular)) \ + -DpluginInstance=pluginInstance__sonusmodular + $(BUILD_DIR)/ValleyAudio/%.cpp.o: ValleyAudio/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index bdcbfe4..cdb6b0a 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -335,6 +335,9 @@ extern Model *modelMaude_221; #undef modelMixer #undef tanh_pade +// sonusmodular +#include "sonusmodular/src/sonusmodular.hpp" + // ValleyAudio #include "ValleyAudio/src/Valley.hpp" @@ -384,6 +387,7 @@ extern Plugin* pluginInstance__MindMeld; extern Plugin* pluginInstance__mscHack; Plugin* pluginInstance__rackwindows; Plugin* pluginInstance__repelzen; +Plugin* pluginInstance__sonusmodular; Plugin* pluginInstance__ValleyAudio; Plugin* pluginInstance__ZetaCarinaeModules; Plugin* pluginInstance__ZZC; @@ -1359,6 +1363,44 @@ static void initStatic__repelzen() } } +static void initStatic__sonusmodular() +{ + Plugin* const p = new Plugin; + pluginInstance__sonusmodular = p; + + const StaticPluginLoader spl(p, "sonusmodular"); + if (spl.ok()) + { + p->addModel(modelAddiction); + p->addModel(modelBitter); + p->addModel(modelBymidside); + p->addModel(modelCampione); + p->addModel(modelChainsaw); + p->addModel(modelCtrl); + p->addModel(modelDeathcrush); + p->addModel(modelFraction); + p->addModel(modelHarmony); + p->addModel(modelLadrone); + p->addModel(modelLuppolo); + p->addModel(modelLuppolo3); + p->addModel(modelMicromacro); + p->addModel(modelMrcheb); + p->addModel(modelMultimulti); + p->addModel(modelNeurosc); + p->addModel(modelOktagon); + p->addModel(modelOsculum); + p->addModel(modelParamath); + p->addModel(modelPiconoise); + p->addModel(modelPith); + p->addModel(modelPusher); + p->addModel(modelRingo); + p->addModel(modelScramblase); + p->addModel(modelTropicana); + p->addModel(modelTwoff); + p->addModel(modelYabp); + } +} + static void initStatic__ValleyAudio() { Plugin* const p = new Plugin; @@ -1447,6 +1489,7 @@ void initStaticPlugins() initStatic__mscHack(); initStatic__rackwindows(); initStatic__repelzen(); + initStatic__sonusmodular(); initStatic__ValleyAudio(); initStatic__ZetaCarinaeModules(); initStatic__ZZC(); diff --git a/plugins/res/BaconPlugs b/plugins/res/BaconPlugs new file mode 120000 index 0000000..acd2b06 --- /dev/null +++ b/plugins/res/BaconPlugs @@ -0,0 +1 @@ +../BaconPlugs/res/ \ No newline at end of file diff --git a/plugins/res/FehlerFabrik b/plugins/res/FehlerFabrik new file mode 120000 index 0000000..1abc5ce --- /dev/null +++ b/plugins/res/FehlerFabrik @@ -0,0 +1 @@ +../FehlerFabrik/res \ No newline at end of file diff --git a/plugins/res/sonusmodular b/plugins/res/sonusmodular new file mode 120000 index 0000000..25a657b --- /dev/null +++ b/plugins/res/sonusmodular @@ -0,0 +1 @@ +../sonusmodular/res \ No newline at end of file diff --git a/plugins/sonusmodular b/plugins/sonusmodular new file mode 160000 index 0000000..b63a685 --- /dev/null +++ b/plugins/sonusmodular @@ -0,0 +1 @@ +Subproject commit b63a685c6c68be188f5a3d5d9f6582eb94d62e53