From 19986c3023da8096cbe534b85e49380a67f5cbd7 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sun, 1 May 2022 02:09:12 +0100 Subject: [PATCH] Add WhatTheRack Signed-off-by: falkTX --- .gitmodules | 3 +++ README.md | 1 + docs/LICENSES.md | 3 +++ plugins/Makefile | 12 ++++++++++++ plugins/WhatTheRack | 1 + plugins/plugins.cpp | 19 +++++++++++++++++++ src/custom/dep.cpp | 4 ++++ 7 files changed, 43 insertions(+) create mode 160000 plugins/WhatTheRack diff --git a/.gitmodules b/.gitmodules index 7e8625b..88815aa 100644 --- a/.gitmodules +++ b/.gitmodules @@ -197,3 +197,6 @@ path = plugins/Meander url = https://github.com/knchaffin/Meander.git branch = master-V2 +[submodule "plugins/WhatTheRack"] + path = plugins/WhatTheRack + url = https://github.com/korfuri/WhatTheRack.git diff --git a/README.md b/README.md index ed5e2a5..5e42a1c 100644 --- a/README.md +++ b/README.md @@ -165,6 +165,7 @@ At the moment the following 3rd-party modules are provided: - unless_modules - Valley - Voxglitch +- WhatTheRack - ZetaCarinae - ZZC diff --git a/docs/LICENSES.md b/docs/LICENSES.md index 4ad9466..5f6fe4c 100644 --- a/docs/LICENSES.md +++ b/docs/LICENSES.md @@ -71,6 +71,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | unless_modules | GPL-3.0-or-later | | | Valley | GPL-3.0-or-later | | | Voxglitch | GPL-3.0-or-later | | +| WhatTheRack | WTFPL | | | ZetaCarinae | GPL-3.0-or-later | | | ZZC | GPL-3.0-or-later | | @@ -204,6 +205,8 @@ Below is a list of artwork licenses from plugins | ValleyAudio/ShareTechMono-*.ttf | OFL-1.1-RFN | | | voxglitch/* | GPL-3.0-or-later | No artwork specific license provided | | voxglitch/ShareTechMono-Regular.ttf | OFL-1.1-RFN | | +| WhatTheRack/* | WTFPL | | +| WhatTheRack/BoomButton/* | CC-BY-3.0 | | | ZetaCarinaeModules/* | GPL-3.0-or-later | [Same license as source code](https://github.com/mhampton/ZetaCarinaeModules/issues/8) | | ZZC/* | CC-BY-NC-SA-4.0 | | | ZZC/panels/* | CC-BY-NC-SA-4.0 | NOTE: The ZZC Logo is Copyright (c) 2019 Sergey Ukolov and cannot be used in derivative works; Cardinal's use does not officially constitute derivative work. | diff --git a/plugins/Makefile b/plugins/Makefile index 31741b0..9176d69 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -866,6 +866,11 @@ VALLEYAUDIO_CUSTOM_PER_FILE = TempoKnob PLUGIN_FILES += $(filter-out voxglitch/src/plugin.cpp,$(wildcard voxglitch/src/*.cpp)) +# -------------------------------------------------------------- +# WhatTheRack + +PLUGIN_FILES += $(filter-out WhatTheRack/src/plugin.cpp,$(wildcard WhatTheRack/src/*.cpp)) + # modules/types which are present in other plugins VOXGLITCH_CUSTOM = $(DRWAV) AudioFile Looper Readout VOXGLITCH_CUSTOM_PER_FILE = AudioBuffer GateSequencer Grain Sequencer SequencerDisplay VoltageSequencer @@ -1761,6 +1766,13 @@ $(BUILD_DIR)/voxglitch/%.cpp.o: voxglitch/%.cpp -DpluginInstance=pluginInstance__Voxglitch \ -DSKIP_MINGW_FORMAT +$(BUILD_DIR)/WhatTheRack/%.cpp.o: WhatTheRack/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(WHATTHERACK_CUSTOM),$(call custom_module_names,$(m),WhatTheRack)) \ + -DpluginInstance=pluginInstance__WhatTheRack + $(BUILD_DIR)/ZetaCarinaeModules/%.cpp.o: ZetaCarinaeModules/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/WhatTheRack b/plugins/WhatTheRack new file mode 160000 index 0000000..c10856f --- /dev/null +++ b/plugins/WhatTheRack @@ -0,0 +1 @@ +Subproject commit c10856fd0e02c057a11c3c15b345fcea8b0abce3 diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 130c364..49016c5 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -665,6 +665,9 @@ extern Model* modelBlankPanel; #include "voxglitch/src/plugin.hpp" #undef modelLooper +// WhatTheRack +#include "WhatTheRack/src/WhatTheRack.hpp" + // ZetaCarinaeModules #include "ZetaCarinaeModules/src/plugin.hpp" @@ -750,6 +753,7 @@ Plugin* pluginInstance__stocaudio; Plugin* pluginInstance__unless_modules; Plugin* pluginInstance__ValleyAudio; Plugin* pluginInstance__Voxglitch; +Plugin* pluginInstance__WhatTheRack; Plugin* pluginInstance__ZetaCarinaeModules; Plugin* pluginInstance__ZZC; #endif // NOPLUGINS @@ -2487,6 +2491,20 @@ static void initStatic__Voxglitch() } } +static void initStatic__WhatTheRack() +{ + Plugin* p = new Plugin; + pluginInstance__WhatTheRack = p; + + const StaticPluginLoader spl(p, "WhatTheRack"); + if (spl.ok()) + { + p->addModel(modelWhatTheRack); + p->addModel(modelWhatTheMod); + p->addModel(modelWhatTheJack); + } +} + static void initStatic__ZetaCarinaeModules() { Plugin* p = new Plugin; @@ -2591,6 +2609,7 @@ void initStaticPlugins() initStatic__unless_modules(); initStatic__ValleyAudio(); initStatic__Voxglitch(); + initStatic__WhatTheRack(); initStatic__ZetaCarinaeModules(); initStatic__ZZC(); #endif // NOPLUGINS diff --git a/src/custom/dep.cpp b/src/custom/dep.cpp index 6e26b1f..c124d55 100644 --- a/src/custom/dep.cpp +++ b/src/custom/dep.cpp @@ -308,6 +308,10 @@ static const struct { { "/voxglitch/res/wav_bank_front_panel.svg", {}, -1 }, { "/voxglitch/res/wav_bank_mc_front_panel_v2.svg", {}, -1 }, { "/voxglitch/res/xy_front_panel.svg", {}, -1 }, + // WTFPL + { "/WhatTheRack/res/WhatTheJack.svg", {}, -1 }, + { "/WhatTheRack/res/WhatTheMod.svg", {}, -1 }, + { "/WhatTheRack/res/WhatTheRack.svg", {}, -1 }, }; static inline bool invertPaint(NSVGshape* const shape, NSVGpaint& paint, const char* const svgFileToInvert = nullptr)