Skip to content

Commit

Permalink
Add stubs for built-in plugins
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <falktx@falktx.com>
  • Loading branch information
falkTX committed Oct 18, 2021
1 parent 067f118 commit 323c500
Show file tree
Hide file tree
Showing 9 changed files with 223 additions and 0 deletions.
2 changes: 2 additions & 0 deletions include/common.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
* For a full copy of the GNU General Public License see the LICENSE file.
*/

#pragma once

#include_next "common.hpp"

#undef BINARY
Expand Down
15 changes: 15 additions & 0 deletions plugins/Cardinal/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"slug": "Cardinal",
"name": "Cardinal",
"version": "2.0.0",
"license": "GPL-3.0-or-later",
"brand": "DISTRHO",
"author": "DISTRHO",
"authorEmail": "falktx@falktx.com",
"pluginUrl": "https://github.com/DISTRHO/Cardinal",
"authorUrl": "https://github.com/DISTRHO/Cardinal",
"manualUrl": "https://github.com/DISTRHO/Cardinal/wiki",
"sourceUrl": "https://github.com/DISTRHO/Cardinal",
"changelogUrl": "",
"modules": []
}
Empty file added plugins/Cardinal/res/.gitkeep
Empty file.
50 changes: 50 additions & 0 deletions plugins/Cardinal/src/HostParameters.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021 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.
*/

#include "plugin.hpp"

struct HostParameters : Module {
enum ParamIds {
NUM_PARAMS
};
enum InputIds {
NUM_INPUTS
};
enum OutputIds {
NUM_OUTPUTS
};
enum LightIds {
NUM_LIGHTS
};

HostParameters() {
config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS);
}

void process(const ProcessArgs&) override {
// TODO
}
};

struct HostParametersWidget : ModuleWidget {
HostParametersWidget(HostParameters* const module) {
setModule(module);
setPanel(APP->window->loadSvg(asset::plugin(pluginInstance, "res/HostParameters.svg")));
}
};

Model* modelHostParameters = createModel<HostParameters, HostParametersWidget>("HostParameters");
50 changes: 50 additions & 0 deletions plugins/Cardinal/src/HostTime.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021 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.
*/

#include "plugin.hpp"

struct HostTime : Module {
enum ParamIds {
NUM_PARAMS
};
enum InputIds {
NUM_INPUTS
};
enum OutputIds {
NUM_OUTPUTS
};
enum LightIds {
NUM_LIGHTS
};

HostTime() {
config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS);
}

void process(const ProcessArgs&) override {
// TODO
}
};

struct HostTimeWidget : ModuleWidget {
HostTimeWidget(HostTime* const module) {
setModule(module);
setPanel(APP->window->loadSvg(asset::plugin(pluginInstance, "res/HostTime.svg")));
}
};

Model* modelHostTime = createModel<HostTime, HostTimeWidget>("HostTime");
27 changes: 27 additions & 0 deletions plugins/Cardinal/src/plugin.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021 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.
*/

#pragma once

#include "rack.hpp"

using namespace rack;

extern Plugin* pluginInstance;

extern Model* modelHostParameters;
extern Model* modelHostTime;
10 changes: 10 additions & 0 deletions plugins/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,11 @@ PLUGIN_FILES += $(wildcard BogaudioModules/src/dsp/filters/*.cpp)
# modules which are present in other plugins
BOGAUDIO_CUSTOM = ADSR LFO Noise VCA VCO VCF

# --------------------------------------------------------------
# Cardinal (built-in)

PLUGIN_FILES += $(wildcard Cardinal/src/*.cpp)

# --------------------------------------------------------------
# Fundamental

Expand Down Expand Up @@ -295,6 +300,11 @@ $(BUILD_DIR)/BogaudioModules/%.cpp.o: BogaudioModules/%.cpp
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DpluginInstance=pluginInstance__BogaudioModules $(foreach m,$(BOGAUDIO_CUSTOM),$(call custom_module_names,$(m),Bogaudio)) -DRACK_SIMD=1 -IBogaudioModules/lib -IBogaudioModules/src/dsp -c -o $@

$(BUILD_DIR)/Cardinal/%.cpp.o: Cardinal/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
$(SILENT)$(CXX) $< $(BUILD_CXX_FLAGS) -DpluginInstance=pluginInstance__Cardinal -c -o $@

$(BUILD_DIR)/Fundamental/%.cpp.o: Fundamental/%.cpp
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling $<"
Expand Down
19 changes: 19 additions & 0 deletions plugins/plugins.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,9 @@
#undef modelVCF
#undef modelVCO

// Cardinal (built-in)
#include "Cardinal/src/plugin.hpp"

// Fundamental
#include "Fundamental/src/plugin.hpp"

Expand All @@ -167,6 +170,7 @@ Plugin* pluginInstance__AudibleInstruments;
Plugin* pluginInstance__Befaco;
Plugin* pluginInstance__Bidoo;
Plugin* pluginInstance__BogaudioModules;
Plugin* pluginInstance__Cardinal;
Plugin* pluginInstance__Fundamental;
Plugin* pluginInstance__GrandeModular;
Plugin* pluginInstance__ZetaCarinaeModules;
Expand Down Expand Up @@ -576,6 +580,20 @@ static void initStatic__BogaudioModules()
}
}

static void initStatic__Cardinal()
{
Plugin* const p = new Plugin;
pluginInstance__Cardinal = p;

const StaticPluginLoader spl(p, "Cardinal");
if (spl.ok())
{
// TODO implement these
// p->addModel(modelHostParameters);
// p->addModel(modelHostTime);
}
}

static void initStatic__Fundamental()
{
Plugin* const p = new Plugin;
Expand Down Expand Up @@ -665,6 +683,7 @@ void initStaticPlugins()
initStatic__Befaco();
initStatic__Bidoo();
initStatic__BogaudioModules();
initStatic__Cardinal();
initStatic__Fundamental();
initStatic__GrandeModular();
initStatic__ZetaCarinaeModules();
Expand Down
50 changes: 50 additions & 0 deletions plugins/todo.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
List of plugins still to add, sorted by popularity

ESeries 94243.0

Grayscale 74754.0
JW-Modules 65172.0
AS 64626.0
ImpromptuModular 62537.0
Valley 62078.0
VultModulesFree 61804.0
AmalgamatedHarmonics 59071.0
NYSTHI 58494.0
DrumKit 58468.0
ML_modules 55847.0
FrozenWasteland 53690.0
cf 49812.0
ArableInstruments 48756.0
squinkylabs-plug1 48682.0
SonusModular 45245.0
LindenbergResearch 43959.0
Bidoo 43471.0
Geodesics 42761.0
mscHack 42316.0
BaconMusic 42095.0
HetrickCV 42077.0
Alikins 41798.0
dBiz 40849.0
RJModules 39972.0
DHE-Modules 39582.0
AlrightDevices 38307.0
SynthKit 38228.0
SubmarineFree 38146.0
Hora-treasureFree 37847.0
ParableInstruments 37781.0
CountModula 37759.0
MSM 37337.0
CharredDesert 36813.0
EricaCopies 36556.0
TheXOR 36497.0
Autinn 34990.0
trowaSoft 34946.0
Hora-VCO_VCF_VCA_Free 34770.0
moDllz 34368.0
21kHz 34172.0
Ohmer 33950.0
modular80 33447.0
Autodafe-DrumKit 33143.0
Koralfx-Modules 33035.0
alto777_LFSR 32872.0
StellareModular 32526.0

0 comments on commit 323c500

Please sign in to comment.