@@ -163,3 +163,6 @@ | |||||
[submodule "plugins/LilacLoop"] | [submodule "plugins/LilacLoop"] | ||||
path = plugins/LilacLoop | path = plugins/LilacLoop | ||||
url = https://github.com/grough/lilac-loop-vcv.git | url = https://github.com/grough/lilac-loop-vcv.git | ||||
[submodule "plugins/kocmoc"] | |||||
path = plugins/kocmoc | |||||
url = https://github.com/janne808/kocmoc-rack-modules.git |
@@ -130,6 +130,7 @@ At the moment the following 3rd-party modules are provided: | |||||
- ihtsyn | - ihtsyn | ||||
- Impromptu | - Impromptu | ||||
- JW-Modules | - JW-Modules | ||||
- kocmoc | |||||
- LifeFormModular | - LifeFormModular | ||||
- Lilac Loop | - Lilac Loop | ||||
- Little Utils | - Little Utils | ||||
@@ -41,6 +41,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule | |||||
| ihtsyn | GPL-3.0-or-later | | | | ihtsyn | GPL-3.0-or-later | | | ||||
| Impromptu | GPL-3.0-or-later | | | | Impromptu | GPL-3.0-or-later | | | ||||
| JW-Modules | BSD-3-Clause | | | | JW-Modules | BSD-3-Clause | | | ||||
| kocmoc | GPL-3.0-or-later | | | |||||
| LifeFormModular | MIT | | | | LifeFormModular | MIT | | | ||||
| Lilac Loop | GPL-3.0-or-later | | | | Lilac Loop | GPL-3.0-or-later | | | ||||
| Little Utils | EUPL-1.2 | | | | Little Utils | EUPL-1.2 | | | ||||
@@ -133,6 +134,7 @@ Below is a list of artwork licenses from plugins | |||||
| ImpromptuModular/res/comp/complib/* | CC-BY-NC-4.0 | | | | ImpromptuModular/res/comp/complib/* | CC-BY-NC-4.0 | | | ||||
| JW-Modules/* | BSD-3-Clause | No artwork specific license provided | | | JW-Modules/* | BSD-3-Clause | No artwork specific license provided | | ||||
| JW-Modules/DejaVuSansMono.ttf | Bitstream-Vera | Unused in Cardinal | | | JW-Modules/DejaVuSansMono.ttf | Bitstream-Vera | Unused in Cardinal | | ||||
| kocmoc/* | GPL-3.0-or-later | No artwork specific license provided | | |||||
| LifeFormModular/* | MIT | No artwork specific license provided | | | LifeFormModular/* | MIT | No artwork specific license provided | | ||||
| LilacLoop/* | GPL-3.0-or-later | No artwork specific license provided | | | LilacLoop/* | GPL-3.0-or-later | No artwork specific license provided | | ||||
| LittleUtils/* | EUPL-1.2 | Same license as source code | | | LittleUtils/* | EUPL-1.2 | Same license as source code | | ||||
@@ -569,6 +569,11 @@ endif | |||||
# modules/types which are present in other plugins | # modules/types which are present in other plugins | ||||
JW_CUSTOM = PlayHead Quantizer | JW_CUSTOM = PlayHead Quantizer | ||||
# -------------------------------------------------------------- | |||||
# kocmoc | |||||
PLUGIN_FILES += $(wildcard kocmoc/src/*.cpp) | |||||
# -------------------------------------------------------------- | # -------------------------------------------------------------- | ||||
# LifeFormModular | # LifeFormModular | ||||
@@ -1415,6 +1420,13 @@ $(BUILD_DIR)/JW-Modules/%.cpp.o: JW-Modules/%.cpp | |||||
-Wno-unused-but-set-variable \ | -Wno-unused-but-set-variable \ | ||||
-Wno-unused-result | -Wno-unused-result | ||||
$(BUILD_DIR)/kocmoc/%.cpp.o: kocmoc/%.cpp | |||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | |||||
@echo "Compiling $<" | |||||
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ | |||||
$(foreach m,$(KOCMOC_CUSTOM),$(call custom_module_names,$(m),kocmoc)) \ | |||||
-DpluginInstance=pluginInstance__kocmoc | |||||
$(BUILD_DIR)/LifeFormModular/%.cpp.o: LifeFormModular/%.cpp | $(BUILD_DIR)/LifeFormModular/%.cpp.o: LifeFormModular/%.cpp | ||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" | ||||
@echo "Compiling $<" | @echo "Compiling $<" | ||||
@@ -0,0 +1 @@ | |||||
Subproject commit f2a8c19f8aa81769e13d085d69a44de5afaacfaa |
@@ -410,6 +410,9 @@ extern Model* modelBlankPanel; | |||||
#include "JW-Modules/src/JWModules.hpp" | #include "JW-Modules/src/JWModules.hpp" | ||||
#undef modelQuantizer | #undef modelQuantizer | ||||
// kocmoc | |||||
#include "kocmoc/src/plugin.hpp" | |||||
// LifeFormModular | // LifeFormModular | ||||
/* NOTE too much noise in original include, do this a different way | /* NOTE too much noise in original include, do this a different way | ||||
// #include "LifeFormModular/src/plugin.hpp" | // #include "LifeFormModular/src/plugin.hpp" | ||||
@@ -659,6 +662,7 @@ Plugin* pluginInstance__HetrickCV; | |||||
extern Plugin* pluginInstance__ImpromptuModular; | extern Plugin* pluginInstance__ImpromptuModular; | ||||
Plugin* pluginInstance__ihtsyn; | Plugin* pluginInstance__ihtsyn; | ||||
Plugin* pluginInstance__JW; | Plugin* pluginInstance__JW; | ||||
Plugin* pluginInstance__kocmoc; | |||||
Plugin* pluginInstance__LifeFormModular; | Plugin* pluginInstance__LifeFormModular; | ||||
Plugin* pluginInstance__LilacLoop; | Plugin* pluginInstance__LilacLoop; | ||||
Plugin* pluginInstance__LittleUtils; | Plugin* pluginInstance__LittleUtils; | ||||
@@ -1770,6 +1774,25 @@ static void initStatic__JW() | |||||
} | } | ||||
} | } | ||||
static void initStatic__kocmoc() | |||||
{ | |||||
Plugin* const p = new Plugin; | |||||
pluginInstance__kocmoc= p; | |||||
const StaticPluginLoader spl(p, "kocmoc"); | |||||
if (spl.ok()) | |||||
{ | |||||
p->addModel(modelSVF_1); | |||||
p->addModel(modelTRG); | |||||
p->addModel(modelLADR); | |||||
p->addModel(modelOP); | |||||
p->addModel(modelPHASR); | |||||
p->addModel(modelMUL); | |||||
p->addModel(modelSKF); | |||||
p->addModel(modelDDLY); | |||||
} | |||||
} | |||||
static void initStatic__LifeFormModular() | static void initStatic__LifeFormModular() | ||||
{ | { | ||||
Plugin* const p = new Plugin; | Plugin* const p = new Plugin; | ||||
@@ -2278,6 +2301,7 @@ void initStaticPlugins() | |||||
initStatic__ImpromptuModular(); | initStatic__ImpromptuModular(); | ||||
initStatic__ihtsyn(); | initStatic__ihtsyn(); | ||||
initStatic__JW(); | initStatic__JW(); | ||||
initStatic__kocmoc(); | |||||
initStatic__LifeFormModular(); | initStatic__LifeFormModular(); | ||||
initStatic__LilacLoop(); | initStatic__LilacLoop(); | ||||
initStatic__LittleUtils(); | initStatic__LittleUtils(); | ||||
@@ -243,6 +243,15 @@ static const struct { | |||||
{ "/LittleUtils/res/PulseGenerator.svg", {}, -1 }, | { "/LittleUtils/res/PulseGenerator.svg", {}, -1 }, | ||||
{ "/LittleUtils/res/TeleportIn.svg", {}, -1 }, | { "/LittleUtils/res/TeleportIn.svg", {}, -1 }, | ||||
{ "/LittleUtils/res/TeleportOut.svg", {}, -1 }, | { "/LittleUtils/res/TeleportOut.svg", {}, -1 }, | ||||
// GPL-3.0-or-later | |||||
{ "/kocmoc/res/DDLY.svg", {}, -1 }, | |||||
{ "/kocmoc/res/LADR.svg", {}, -1 }, | |||||
{ "/kocmoc/res/MUL.svg", {}, -1 }, | |||||
{ "/kocmoc/res/OP.svg", {}, -1 }, | |||||
{ "/kocmoc/res/PHASR.svg", {}, -1 }, | |||||
{ "/kocmoc/res/SKF.svg", {}, -1 }, | |||||
{ "/kocmoc/res/SVF.svg", {}, -1 }, | |||||
{ "/kocmoc/res/TRG.svg", {}, -1 }, | |||||
}; | }; | ||||
static inline bool invertPaint(NSVGpaint& paint, const char* const svgFileToInvert = nullptr) | static inline bool invertPaint(NSVGpaint& paint, const char* const svgFileToInvert = nullptr) | ||||