Add HetrickCV (#69)
* try to add HetrickCV * specify modules separately * HetrickCV builds * custom MidSide; invert panels; add to LICENSES file * undo trailing whitespace removal in docs; add res symlink
This commit is contained in:
parent
16f1afc73c
commit
8134b2b679
7 changed files with 172 additions and 1 deletions
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -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
|
||||
|
|
|
@ -31,6 +31,7 @@ Bellow follows a list of all code licenses used in Cardinal and linked submodule
|
|||
| Fundamental | GPL-3.0-or-later | |
|
||||
| Glue the Giant | GPL-3.0-or-later | |
|
||||
| Grande | GPL-3.0-or-later | |
|
||||
| HetrickCV | CC0-1.0 | |
|
||||
| Impromptu | GPL-3.0-or-later | |
|
||||
| JW-Modules | BSD-3-Clause | |
|
||||
| MindMeld | GPL-3.0-or-later | |
|
||||
|
|
1
plugins/HetrickCV
Submodule
1
plugins/HetrickCV
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 2fc83df75154c32b83addd3ed68b35eb6156ca0d
|
|
@ -435,6 +435,18 @@ 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)
|
||||
|
||||
# modules/types which are present in other plugins
|
||||
HETRICKCV_CUSTOM = ASR BlankPanel FlipFlop MidSide
|
||||
|
||||
# --------------------------------------------------------------
|
||||
# ImpromptuModular
|
||||
|
||||
|
@ -992,6 +1004,15 @@ $(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 \
|
||||
-Wno-unused-but-set-variable
|
||||
|
||||
$(BUILD_DIR)/ImpromptuModular/src/Foundr%.cpp.o: ImpromptuModular/src/Foundr%.cpp
|
||||
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
|
||||
@echo "Compiling $<"
|
||||
|
|
|
@ -304,6 +304,51 @@ extern Model *modelWriteSeq32;
|
|||
extern Model *modelWriteSeq64;
|
||||
extern Model *modelBlankPanel;
|
||||
|
||||
// HetrickCV
|
||||
#define modelASR modelHetrickCVASR
|
||||
#define modelBlankPanel modelHetrickCVBlankPanel
|
||||
#define modelFlipFlop modelHetrickCVFlipFlop
|
||||
#define modelMidSide modelHetrickCVMidSide
|
||||
extern Model *modelTwoToFour;
|
||||
extern Model *modelAnalogToDigital;
|
||||
extern Model *modelASR;
|
||||
extern Model *modelBinaryGate;
|
||||
extern Model *modelBinaryNoise;
|
||||
extern Model *modelBitshift;
|
||||
extern Model *modelBlankPanel;
|
||||
extern Model *modelBoolean3;
|
||||
extern Model *modelChaos1Op;
|
||||
extern Model *modelChaos2Op;
|
||||
extern Model *modelChaos3Op;
|
||||
extern Model *modelChaoticAttractors;
|
||||
extern Model *modelClockedNoise;
|
||||
extern Model *modelComparator;
|
||||
extern Model *modelContrast;
|
||||
extern Model *modelCrackle;
|
||||
extern Model *modelDataCompander;
|
||||
extern Model *modelDelta;
|
||||
extern Model *modelDigitalToAnalog;
|
||||
extern Model *modelDust;
|
||||
extern Model *modelExponent;
|
||||
extern Model *modelFBSineChaos;
|
||||
extern Model *modelFlipFlop;
|
||||
extern Model *modelFlipPan;
|
||||
extern Model *modelGateJunction;
|
||||
extern Model *modelGingerbread;
|
||||
extern Model *modelLogicCombine;
|
||||
extern Model *modelMidSide;
|
||||
extern Model *modelMinMax;
|
||||
extern Model *modelRandomGates;
|
||||
extern Model *modelRotator;
|
||||
extern Model *modelRungler;
|
||||
extern Model *modelScanner;
|
||||
extern Model *modelWaveshape;
|
||||
extern Model *modelXYToPolar;
|
||||
#undef modelASR
|
||||
#undef modelBlankPanel
|
||||
#undef modelFlipFlop
|
||||
#undef modelMidSide
|
||||
|
||||
// JW-Modules
|
||||
#define modelQuantizer modelJWQuantizer
|
||||
#include "JW-Modules/src/JWModules.hpp"
|
||||
|
@ -418,6 +463,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;
|
||||
|
@ -1259,6 +1305,60 @@ static void initStatic__GrandeModular()
|
|||
}
|
||||
}
|
||||
|
||||
static void initStatic__HetrickCV()
|
||||
{
|
||||
Plugin* const p = new Plugin;
|
||||
pluginInstance__HetrickCV = p;
|
||||
|
||||
const StaticPluginLoader spl(p, "HetrickCV");
|
||||
if (spl.ok())
|
||||
{
|
||||
#define modelASR modelHetrickCVASR
|
||||
#define modelBlankPanel modelHetrickCVBlankPanel
|
||||
#define modelFlipFlop modelHetrickCVFlipFlop
|
||||
#define modelMidSide modelHetrickCVMidSide
|
||||
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);
|
||||
#undef modelASR
|
||||
#undef modelBlankPanel
|
||||
#undef modelFlipFlop
|
||||
#undef modelMidSide
|
||||
}
|
||||
}
|
||||
|
||||
static void initStatic__ImpromptuModular()
|
||||
{
|
||||
Plugin* const p = new Plugin;
|
||||
|
@ -1585,6 +1685,7 @@ void initStaticPlugins()
|
|||
initStatic__Fundamental();
|
||||
initStatic__GlueTheGiant();
|
||||
initStatic__GrandeModular();
|
||||
initStatic__HetrickCV();
|
||||
initStatic__ImpromptuModular();
|
||||
initStatic__JW();
|
||||
initStatic__MindMeld();
|
||||
|
|
1
plugins/res/HetrickCV
Symbolic link
1
plugins/res/HetrickCV
Symbolic link
|
@ -0,0 +1 @@
|
|||
../HetrickCV/res
|
|
@ -375,6 +375,49 @@ static const struct {
|
|||
{ "/DrumKit/Tomi.svg", {}, -1 },
|
||||
{ "/ESeries/E340.svg", {}, -1 },
|
||||
{ "/Fundamental/VCA.svg", {}, -1 },
|
||||
{ "/HetrickCV/1OpChaos.svg", {}, -1},
|
||||
{ "/HetrickCV/2OpChaos.svg", {}, -1},
|
||||
{ "/HetrickCV/2To4.svg", {}, -1},
|
||||
{ "/HetrickCV/3OpChaos.svg", {}, -1},
|
||||
{ "/HetrickCV/ASR.svg", {}, -1},
|
||||
{ "/HetrickCV/AToD.svg", {}, -1},
|
||||
{ "/HetrickCV/BinaryGate.svg", {}, -1},
|
||||
{ "/HetrickCV/BinaryNoise.svg", {}, -1},
|
||||
{ "/HetrickCV/Bitshift.svg", {}, -1},
|
||||
{ "/HetrickCV/Boolean3.svg", {}, -1},
|
||||
{ "/HetrickCV/ChaoticAttractors.svg", {}, -1},
|
||||
{ "/HetrickCV/ClockedNoise.svg", {}, -1},
|
||||
{ "/HetrickCV/Comparator.svg", {}, -1},
|
||||
{ "/HetrickCV/Contrast.svg", {}, -1},
|
||||
{ "/HetrickCV/Crackle.svg", {}, -1},
|
||||
{ "/HetrickCV/DataCompander.svg", {}, -1},
|
||||
{ "/HetrickCV/Delta.svg", {}, -1},
|
||||
{ "/HetrickCV/DToA.svg", {}, -1},
|
||||
{ "/HetrickCV/Dust.svg", {}, -1},
|
||||
{ "/HetrickCV/Exponent.svg", {}, -1},
|
||||
{ "/HetrickCV/FBSineChaos.svg", {}, -1},
|
||||
{ "/HetrickCV/FlipFlop.svg", {}, -1},
|
||||
{ "/HetrickCV/FlipPan.svg", {}, -1},
|
||||
{ "/HetrickCV/GateJunction.svg", {}, -1},
|
||||
{ "/HetrickCV/Gingerbread.svg", {}, -1},
|
||||
{ "/HetrickCV/LogicCombiner.svg", {}, -1},
|
||||
{ "/HetrickCV/LogicInverter.svg", {}, -1},
|
||||
{ "/HetrickCV/MidSide.svg", {}, -1},
|
||||
{ "/HetrickCV/MinMax.svg", {}, -1},
|
||||
{ "/HetrickCV/RandomGates.svg", {}, -1},
|
||||
{ "/HetrickCV/Rotator.svg", {}, -1},
|
||||
{ "/HetrickCV/Rungler.svg", {}, -1},
|
||||
{ "/HetrickCV/Scanner.svg", {}, -1},
|
||||
{ "/HetrickCV/TrigShaper.svg", {}, -1},
|
||||
{ "/HetrickCV/Waveshape.svg", {}, -1},
|
||||
{ "/HetrickCV/XYToPolar.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel1.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel2.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel3.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel5.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel6.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel7.svg", {}, -1},
|
||||
{ "/HetrickCV/Blanks/BlankPanel8.svg", {}, -1},
|
||||
{ "/JW-Modules/Add5.svg", {}, -1 },
|
||||
{ "/JW-Modules/BlankPanel1hp.svg", {}, -1 },
|
||||
{ "/JW-Modules/BlankPanelLarge.svg", {}, -1 },
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue