diff --git a/.gitmodules b/.gitmodules index be904bc..bce4d7c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -100,3 +100,6 @@ [submodule "plugins/GlueTheGiant"] path = plugins/GlueTheGiant url = https://github.com/gluethegiant/gtg-rack.git +[submodule "plugins/HetrickCV"] + path = plugins/HetrickCV + url = https://github.com/mhetrick/hetrickcv.git diff --git a/plugins/HetrickCV b/plugins/HetrickCV new file mode 160000 index 0000000..2fc83df --- /dev/null +++ b/plugins/HetrickCV @@ -0,0 +1 @@ +Subproject commit 2fc83df75154c32b83addd3ed68b35eb6156ca0d diff --git a/plugins/Makefile b/plugins/Makefile index d363a5a..64943a0 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -435,6 +435,15 @@ PLUGIN_FILES += $(filter-out GlueTheGiant/src/plugin.cpp,$(wildcard GlueTheGiant PLUGIN_FILES += $(filter-out GrandeModular/src/plugin.cpp,$(wildcard GrandeModular/src/*.cpp)) +# -------------------------------------------------------------- +# HetrickCV + +PLUGIN_FILES += $(wildcard HetrickCV/src/*.cpp) +PLUGIN_FILES += $(wildcard HetrickCV/src/DSP/*.cpp) +PLUGIN_FILES += $(wildcard HetrickCV/Gamma/src/arr.cpp) +PLUGIN_FILES += $(wildcard HetrickCV/Gamma/src/Domain.cpp) +PLUGIN_FILES += $(wildcard HetrickCV/Gamma/src/scl.cpp) + # -------------------------------------------------------------- # ImpromptuModular @@ -992,6 +1001,14 @@ $(BUILD_DIR)/GrandeModular/%.cpp.o: GrandeModular/%.cpp -Wno-missing-braces \ -Wno-self-assign +$(BUILD_DIR)/HetrickCV/%.cpp.o: HetrickCV/%.cpp + -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" + @echo "Compiling $<" + $(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \ + $(foreach m,$(HETRICKCV_CUSTOM),$(call custom_module_names,$(m),HetrickCV)) \ + -DpluginInstance=pluginInstance__HetrickCV \ + -IHetrickCV/Gamma + $(BUILD_DIR)/ImpromptuModular/src/Foundr%.cpp.o: ImpromptuModular/src/Foundr%.cpp -@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)" @echo "Compiling $<" diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp index ca400d1..564e171 100644 --- a/plugins/plugins.cpp +++ b/plugins/plugins.cpp @@ -288,6 +288,9 @@ extern Model *modelWriteSeq32; extern Model *modelWriteSeq64; extern Model *modelBlankPanel; +// HetrickCV +#include "HetrickCV/src/HetrickCV.hpp" + // JW-Modules #define modelQuantizer modelJWQuantizer #include "JW-Modules/src/JWModules.hpp" @@ -402,6 +405,7 @@ Plugin* pluginInstance__FehlerFabrik; Plugin* pluginInstance__Fundamental; Plugin* pluginInstance__GrandeModular; Plugin* pluginInstance__GlueTheGiant; +Plugin* pluginInstance__HetrickCV; extern Plugin* pluginInstance__ImpromptuModular; Plugin* pluginInstance__JW; extern Plugin* pluginInstance__MindMeld; @@ -1243,6 +1247,52 @@ static void initStatic__GrandeModular() } } +static void initStatic__HetrickCV() +{ + Plugin* const p = new Plugin; + pluginInstance__HetrickCV = p; + + const StaticPluginLoader spl(p, "HetrickCV"); + if (spl.ok()) + { + p->addModel(modelTwoToFour); + p->addModel(modelAnalogToDigital); + p->addModel(modelASR); + p->addModel(modelBinaryGate); + p->addModel(modelBinaryNoise); + p->addModel(modelBitshift); + p->addModel(modelBlankPanel); + p->addModel(modelBoolean3); + p->addModel(modelChaos1Op); + p->addModel(modelChaos2Op); + p->addModel(modelChaos3Op); + p->addModel(modelChaoticAttractors); + p->addModel(modelClockedNoise); + p->addModel(modelComparator); + p->addModel(modelContrast); + p->addModel(modelCrackle); + p->addModel(modelDataCompander); + p->addModel(modelDelta); + p->addModel(modelDigitalToAnalog); + p->addModel(modelDust); + p->addModel(modelExponent); + p->addModel(modelFBSineChaos); + p->addModel(modelFlipFlop); + p->addModel(modelFlipPan); + p->addModel(modelGateJunction); + p->addModel(modelGingerbread); + p->addModel(modelLogicCombine); + p->addModel(modelMidSide); + p->addModel(modelMinMax); + p->addModel(modelRandomGates); + p->addModel(modelRotator); + p->addModel(modelRungler); + p->addModel(modelScanner); + p->addModel(modelWaveshape); + p->addModel(modelXYToPolar); + } +} + static void initStatic__ImpromptuModular() { Plugin* const p = new Plugin; @@ -1372,7 +1422,7 @@ static void initStatic__mscHack() p->addModel(modelSynthDrums); p->addModel(modelSEQ_6x32x16); p->addModel(modelMasterClockx4); - //p->addModel(modelMasterClockx8); + //p->addModel(modelMasterClockx8); p->addModel(modelSEQ_Envelope_8); p->addModel(modelSeq_Triad2); p->addModel(modelARP700); @@ -1569,6 +1619,7 @@ void initStaticPlugins() initStatic__Fundamental(); initStatic__GlueTheGiant(); initStatic__GrandeModular(); + initStatic__HetrickCV(); initStatic__ImpromptuModular(); initStatic__JW(); initStatic__MindMeld();