Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add LOGinstruments #656

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
5 changes: 4 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -245,6 +245,9 @@
[submodule "plugins/Biset"]
path = plugins/Biset
url = https://github.com/gibbonjoyeux/VCV-Biset.git
[submodule "plugins/LOGinstruments"]
path = plugins/LOGinstruments
url = https://github.com/LOGUNIVPM/LOGinstruments.git
[submodule "plugins/PdArray"]
path = plugins/PdArray
url = https://github.com/mgunyho/PdArray.git
Expand All @@ -253,4 +256,4 @@
url = https://github.com/CardinalModules/JUCE.git
[submodule "plugins/rcm-modules"]
path = plugins/rcm-modules
url = https://github.com/Rcomian/rcm-modules.git
url = https://github.com/Rcomian/rcm-modules.git
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,7 @@ At the moment the following 3rd-party modules are provided:
- [LifeFormModular](https://github.com/TimeControlledOrganism/LifeFormModular)
- [Lilac Loop](https://grough.github.io/lilac-loop-vcv)
- [Little Utils](https://github.com/mgunyho/Little-Utils)
- [LOGinstruments](https://github.com/LOGUNIVPM/LOGinstruments)
- [Lomas Modules](https://github.com/LomasModules/LomasModules)
- [Lyrae Modules](https://github.com/VegaDeftwing/LyraeModules)
- [Meander](https://github.com/knchaffin/Meander)
Expand Down
3 changes: 3 additions & 0 deletions docs/LICENSES.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ Below follows a list of all code licenses used in Cardinal and linked submodules
| LifeFormModular | MIT | |
| Lilac Loop | GPL-3.0-or-later | |
| Little Utils | EUPL-1.2 | |
| LOGinstruments | BSD-3-Clause | |
| Lomas Modules | GPL-3.0-or-later | |
| Lyrae Modules | GPL-3.0-or-later | |
| Meander | GPL-3.0-or-later | |
Expand Down Expand Up @@ -206,6 +207,8 @@ Below is a list of artwork licenses from plugins
| LittleUtils/fonts/CooperHewitt-*.ttf | OFL-1.1-RFN | |
| LittleUtils/fonts/Overpass-*.ttf | OFL-1.1-RFN | |
| LittleUtils/fonts/RobotoMono-*.ttf | Apache-2.0 | |
| LOGinstruments/* | BSD-3-Clause | No artwork specific license provided |
| LOGinstruments/DejaVuSansMono.ttf | Bitstream Vera | |
| LomasModules/* | GPL-3.0-or-later | [Same license as source code](https://github.com/LomasModules/LomasModules/issues/26) |
| LomasModules/Fonts/FiraMono-Bold.ttf | OFL-1.1-RFN | |
| LyraeModules/* | CC-BY-NC-SA-4.0 | |
Expand Down
1 change: 1 addition & 0 deletions plugins/LOGinstruments
Submodule LOGinstruments added at 1fc62f
13 changes: 13 additions & 0 deletions plugins/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -848,6 +848,12 @@ PLUGIN_FILES += $(filter-out LittleUtils/src/plugin.cpp,$(wildcard LittleUtils/s
# modules/types which are present in other plugins
LITTLEUTILS_CUSTOM = MsDisplayWidget

# --------------------------------------------------------------
# LOGinstruments

PLUGIN_FILES += $(filter-out LOGinstruments/src/LOGinstruments.cpp,$(wildcard LOGinstruments/src/*.cpp))
PLUGIN_FILES += LOGinstruments/src/kiss_fft.c

# --------------------------------------------------------------
# LomasModules

Expand Down Expand Up @@ -2541,6 +2547,13 @@ $(BUILD_DIR)/LittleUtils/%.cpp.o: LittleUtils/%.cpp
$(foreach m,$(LITTLEUTILS_CUSTOM),$(call custom_module_names,$(m),LittleUtils)) \
-DpluginInstance=pluginInstance__LittleUtils

$(BUILD_DIR)/LOGinstruments/src/%.o: LOGinstruments/src/%
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
$(foreach m,$(LOGINSTRUMENTS_CUSTOM),$(call custom_module_names,$(m),LOGinstruments)) \
-DpluginInstance=pluginInstance__LOGinstruments

$(BUILD_DIR)/LomasModules/%.cpp.o: LomasModules/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
Expand Down
20 changes: 20 additions & 0 deletions plugins/plugins.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,9 @@ extern Model* modelDriftgen;
extern Model* modelLooperOne;
extern Model* modelLooperTwo;

// LOGinstruments
#include "LOGinstruments/src/LOGinstruments.hpp"

// LomasModules
#include "LomasModules/src/plugin.hpp"
#undef DR_WAV_IMPLEMENTATION
Expand Down Expand Up @@ -946,6 +949,7 @@ Plugin* pluginInstance__kocmoc;
Plugin* pluginInstance__LifeFormModular;
Plugin* pluginInstance__LilacLoop;
Plugin* pluginInstance__LittleUtils;
Plugin* pluginInstance__LOGinstruments;
Plugin* pluginInstance__Lomas;
Plugin* pluginInstance__Lyrae;
Plugin* pluginInstance__Meander;
Expand Down Expand Up @@ -2572,6 +2576,21 @@ static void initStatic__LittleUtils()
}
}

static void initStatic__LOGinstruments()
{
Plugin* const p = new Plugin;
pluginInstance__LOGinstruments = p;

const StaticPluginLoader spl(p, "LOGinstruments");
if (spl.ok())
{
p->addModel(modelSpeck);
p->addModel(modelLessMess);
p->addModel(modelVelvet);
p->addModel(modelCrystal);
}
}

static void initStatic__Lomas()
{
Plugin* const p = new Plugin;
Expand Down Expand Up @@ -3475,6 +3494,7 @@ void initStaticPlugins()
initStatic__LifeFormModular();
initStatic__LilacLoop();
initStatic__LittleUtils();
initStatic__LOGinstruments();
initStatic__Lomas();
initStatic__Lyrae();
initStatic__Meander();
Expand Down
22 changes: 22 additions & 0 deletions src/custom/dep.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ enum DarkMode {
kModeJW,
kModeLilacLoop,
kModeLittleUtils,
kModeLOGinstruments,
kModeKocmoc,
kModeMyth,
kModeNonlinearcircuits,
Expand Down Expand Up @@ -316,6 +317,11 @@ static const struct {
{ kModeLittleUtils, "/LittleUtils/res/PulseGenerator.svg", {}, -1 },
{ kModeLittleUtils, "/LittleUtils/res/TeleportIn.svg", {}, -1 },
{ kModeLittleUtils, "/LittleUtils/res/TeleportOut.svg", {}, -1 },
// BSD-3 Clause
{ kModeLOGinstruments, "/LOGinstruments/res/crystal-nofonts.svg", {}, -1 },
{ kModeLOGinstruments, "/LOGinstruments/res/LessMess_nofonts.svg", {}, -1 },
{ kModeLOGinstruments, "/LOGinstruments/res/Speck_nofonts2.svg", {}, -1 },
{ kModeLOGinstruments, "/LOGinstruments/res/velvet-nofonts.svg", {}, -1 },
// GPL-3.0-or-later
{ kModeKocmoc, "/kocmoc/res/DDLY.svg", {}, -1 },
{ kModeKocmoc, "/kocmoc/res/LADR.svg", {}, -1 },
Expand Down Expand Up @@ -659,6 +665,13 @@ bool invertPaintForDarkMode(const DarkMode mode, NSVGshape* const shape, NSVGpai
paint.type = NSVG_PAINT_COLOR;
paint.color = 0xff191919;
return true;
// Special case for LOGinstruments gradient
case kModeLOGinstruments:
// original color from stop 1 was copied to this stop and made ~25% darker
paint.gradient->stops[0].color = 0xd95c5c5c;
// color was made ~75% darker
paint.gradient->stops[1].color = 0xd91f1f1f;
return false;
// Special case for PathSet shifty gradient
case kModePathSet:
paint.gradient->stops[0].color = 0xff7c4919; // 50% darker than main blue
Expand Down Expand Up @@ -767,6 +780,15 @@ bool invertPaintForDarkMode(const DarkMode mode, NSVGshape* const shape, NSVGpai
return true;
}
break;
// Special case for LOGinstruments
case kModeLOGinstruments:
switch (paint.color)
{
// Don't change Speck scope color
case 0xff1a1a1a:
return false;
}
break;
// Special case for Nonlinear Circuits
case kModeNonlinearcircuits:
switch (paint.color)
Expand Down
Loading