Add DHE modules

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2024-01-06 15:42:08 +01:00
parent 80bda51e7c
commit 43bf3abe0e
No known key found for this signature in database
GPG key ID: CDBAA37ABC74FBA0
7 changed files with 114 additions and 13 deletions

1
plugins/DHE-Modules Submodule

@ -0,0 +1 @@
Subproject commit 1d1c286fc69babdb36dfe5fa4fe2856b0f707854

View file

@ -655,6 +655,11 @@ PLUGIN_FILES += $(filter-out dBiz/src/plugin.cpp,$(wildcard dBiz/src/*.cpp))
DBIZ_CUSTOM = Chord DarkDefaultItem Divider FourSeq FourSeqWidget OrangeLight VCA4 Wavefolder darkPanelID lightPanelID
DBIZ_CUSTOM_PER_FILE = LERP MultiFilter Oscillator calcOutput sineOsc subBank
# --------------------------------------------------------------
# DHE-Modules
PLUGIN_FILES += $(filter-out DHE-Modules/src/plugin.cpp,$(wildcard DHE-Modules/src/modules/*/init.cpp))
# --------------------------------------------------------------
# DrumKit
@ -1390,6 +1395,7 @@ RESOURCE_FILES += BaconPlugs/res/midi/chopin
RESOURCE_FILES += BaconPlugs/res/midi/debussy
RESOURCE_FILES += BaconPlugs/res/midi/goldberg
RESOURCE_FILES += cf/playeroscs
RESOURCE_FILES += DHE-Modules/svg
RESOURCE_FILES += DrumKit/res/samples
RESOURCE_FILES += MindMeldModular/res/ShapeMaster/CommunityPresets
RESOURCE_FILES += MindMeldModular/res/ShapeMaster/CommunityShapes
@ -2216,6 +2222,14 @@ $(BUILD_DIR)/dBiz/src/%.cpp.o: dBiz/src/%.cpp
$(foreach m,$(DBIZ_CUSTOM_PER_FILE),$(call custom_per_file_names,$(m),dBiz_$(shell basename $*))) \
-DpluginInstance=pluginInstance__dBiz
$(BUILD_DIR)/DHE-Modules/src/%.cpp.o: DHE-Modules/src/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@ \
$(foreach m,$(DHE_CUSTOM),$(call custom_module_names,$(m),DHE)) \
-DpluginInstance=pluginInstance__DHE \
-IDHE-Modules/src
$(BUILD_DIR)/DrumKit/%.cpp.o: DrumKit/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"

View file

@ -1,18 +1,7 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021-2022 Filipe Coelho <falktx@falktx.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 3 of
* the License, or any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* For a full copy of the GNU General Public License see the LICENSE file.
* Copyright (C) 2021-2024 Filipe Coelho <falktx@falktx.com>
* SPDX-License-Identifier: GPL-3.0-or-later
*/
#include "rack.hpp"
@ -335,6 +324,26 @@ extern Model* modelTestVCF;
#undef modelFourSeq
#undef modelVCA4
// DHEModules
// NOTE very unique way of handling init, needs special handling
namespace dhe {
namespace blossom { void init(Plugin*); }
namespace buttons { void init(Plugin*); }
namespace cubic { void init(Plugin*); }
namespace curve_sequencer { void init(Plugin*); }
namespace envelope { void init(Plugin*); }
namespace func { void init(Plugin*); }
namespace fuzzy_logic { void init(Plugin*); }
namespace gator { void init(Plugin*); }
namespace ranger { void init(Plugin*); }
namespace scannibal { void init(Plugin*); }
namespace sequencizer { void init(Plugin*); }
namespace swave { void init(Plugin*); }
namespace tapers { void init(Plugin*); }
namespace truth { void init(Plugin*); }
namespace xycloid { void init(Plugin*); }
}
// DrumKit
#include "DrumKit/src/DrumKit.hpp"
void setupSamples();
@ -821,6 +830,7 @@ Plugin* pluginInstance__CatroModulo;
Plugin* pluginInstance__cf;
Plugin* pluginInstance__ChowDSP;
Plugin* pluginInstance__dBiz;
Plugin* pluginInstance__DHE;
extern Plugin* pluginInstance__DrumKit;
Plugin* pluginInstance__EnigmaCurry;
Plugin* pluginInstance__ESeries;
@ -1835,6 +1845,32 @@ static void initStatic__dBiz()
}
}
static void initStatic__DHE()
{
Plugin* const p = new Plugin;
pluginInstance__DHE = p;
const StaticPluginLoader spl(p, "DHE-Modules");
if (spl.ok())
{
dhe::blossom::init(p);
dhe::buttons::init(p);
dhe::cubic::init(p);
dhe::curve_sequencer::init(p);
dhe::envelope::init(p);
dhe::func::init(p);
dhe::fuzzy_logic::init(p);
dhe::gator::init(p);
dhe::ranger::init(p);
dhe::scannibal::init(p);
dhe::sequencizer::init(p);
dhe::swave::init(p);
dhe::tapers::init(p);
dhe::truth::init(p);
dhe::xycloid::init(p);
}
}
static void initStatic__DrumKit()
{
Plugin* const p = new Plugin;
@ -3116,6 +3152,7 @@ void initStaticPlugins()
initStatic__cf();
initStatic__ChowDSP();
initStatic__dBiz();
initStatic__DHE();
initStatic__DrumKit();
initStatic__EnigmaCurry();
initStatic__ESeries();