From b16f95580211ca7217e212938f6fc432ee4d5eed Mon Sep 17 00:00:00 2001 From: dreamer <1185977+dromer@users.noreply.github.com> Date: Thu, 9 Dec 2021 00:46:38 +0100 Subject: [PATCH] add Prism (#75) * add Prism * add _CUSTOM types --- .gitmodules | 3 +++ doc/LICENSES.md | 1 + plugins/Makefile | 16 ++++++++++++++++ plugins/Prism | 1 + plugins/plugins.cpp | 19 +++++++++++++++++++ plugins/res/Prism | 1 + plugins/todo.txt | 3 --- 7 files changed, 41 insertions(+), 3 deletions(-) create mode 160000 plugins/Prism create mode 120000 plugins/res/Prism diff --git a/.gitmodules b/.gitmodules index a855507..2db72a0 100644 --- a/.gitmodules +++ b/.gitmodules @@ -109,3 +109,6 @@ [submodule "plugins/LittleUtils"] path = plugins/LittleUtils url = https://github.com/CardinalModules/Little-Utils.git +[submodule "plugins/Prism"] + path = plugins/Prism + url = https://github.com/SteveRussell33/Prism.git diff --git a/doc/LICENSES.md b/doc/LICENSES.md index 4870ada..2638471 100644 --- a/doc/LICENSES.md +++ b/doc/LICENSES.md @@ -39,6 +39,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | MindMeld | GPL-3.0-or-later | | | Mog | CC0-1.0 | | | mscHack | BSD-3-Clause | | +| Prism | BSD-3-Clause | | | Rackwindows | MIT | | | repelzen | GPL-3.0-or-later | | | Sonus Modular | GPL-3.0-or-later | | diff --git a/plugins/Makefile b/plugins/Makefile index 2dad725..a3965f6 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -517,6 +517,15 @@ PLUGIN_FILES += $(wildcard mscHack/src/*.cpp) # modules/types which are present in other plugins MSCHACK_CUSTOM_PER_FILE = MAIN_SYNC_CLOCK FILTER_STRUCT FILTER_PARAM_STRUCT OSC_PARAM_STRUCT PHRASE_CHANGE_STRUCT +# -------------------------------------------------------------- +# Prism + +PLUGIN_FILES += $(filter-out Prism/src/plugin.cpp, $(wildcard Prism/src/*.cpp)) +PLUGIN_FILES += $(wildcard Prism/src/scales/*.cpp) + +# modules/types which are present in other plugins +PRISM_CUSTOM = bogaudio Scale FilterSetting + # -------------------------------------------------------------- # rackwindows @@ -1123,6 +1132,13 @@ $(BUILD_DIR)/mscHack/%.cpp.o: mscHack/%.cpp -Wno-non-c-typedef-for-linkage \ -Wno-unused-but-set-variable +$(BUILD_DIR)/Prism/%.cpp.o: Prism/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(PRISM_CUSTOM),$(call custom_module_names,$(m),Prism)) \ + -DpluginInstance=pluginInstance__Prism \ + $(BUILD_DIR)/rackwindows/%.cpp.o: rackwindows/%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/Prism b/plugins/Prism new file mode 160000 index 0000000..6b2510c --- /dev/null +++ b/plugins/Prism @@ -0,0 +1 @@ +Subproject commit 6b2510c601db8bd3b57cd5eef8c2924cb8badfc7 diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index 6609a05..86d7400 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -419,6 +419,9 @@ extern Model *modelAlienz; extern Model *modelOSC_WaveMorph_3; extern Model *modelMaude_221; +// Prism +# include "Prism/src/plugin.hpp" + // rackwindows #include "rackwindows/src/plugin.hpp" @@ -489,6 +492,7 @@ Plugin* pluginInstance__Lyrae; extern Plugin* pluginInstance__MindMeld; Plugin* pluginInstance__Mog; extern Plugin* pluginInstance__mscHack; +Plugin* pluginInstance__Prism; Plugin* pluginInstance__rackwindows; Plugin* pluginInstance__repelzen; Plugin* pluginInstance__sonusmodular; @@ -1568,6 +1572,20 @@ static void initStatic__mscHack() } } +static void initStatic__Prism() +{ + Plugin* const p = new Plugin; + pluginInstance__Prism = p; + + const StaticPluginLoader spl(p, "Prism"); + if (spl.ok()) + { + p->addModel(modelRainbow); + p->addModel(modelRainbowScaleExpander); + p->addModel(modelDroplet); + } +} + static void initStatic__rackwindows() { Plugin* const p = new Plugin; @@ -1751,6 +1769,7 @@ void initStaticPlugins() initStatic__MindMeld(); initStatic__Mog(); initStatic__mscHack(); + initStatic__Prism(); initStatic__rackwindows(); initStatic__repelzen(); initStatic__sonusmodular(); diff --git a/plugins/res/Prism b/plugins/res/Prism new file mode 120000 index 0000000..260e905 --- /dev/null +++ b/plugins/res/Prism @@ -0,0 +1 @@ +../Prism/res/ \ No newline at end of file diff --git a/plugins/todo.txt b/plugins/todo.txt index 18121f2..a81d657 100644 --- a/plugins/todo.txt +++ b/plugins/todo.txt @@ -25,9 +25,6 @@ LindenbergResearch 43959.0 (not opensource?) Geodesics 42761.0 https://github.com/MarcBoule/Geodesics -HetrickCV 42077.0 -https://github.com/mhetrick/hetrickcv - Alikins 41798.0 https://github.com/alikins/Alikins-rack-plugins