Browse Source

Add stubs for built-in plugins

Signed-off-by: falkTX <falktx@falktx.com>
tags/22.02
falkTX 3 years ago
parent
commit
323c500bd0
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
9 changed files with 223 additions and 0 deletions
  1. +2
    -0
      include/common.hpp
  2. +15
    -0
      plugins/Cardinal/plugin.json
  3. +0
    -0
      plugins/Cardinal/res/.gitkeep
  4. +50
    -0
      plugins/Cardinal/src/HostParameters.cpp
  5. +50
    -0
      plugins/Cardinal/src/HostTime.cpp
  6. +27
    -0
      plugins/Cardinal/src/plugin.hpp
  7. +10
    -0
      plugins/Makefile
  8. +19
    -0
      plugins/plugins.cpp
  9. +50
    -0
      plugins/todo.txt

+ 2
- 0
include/common.hpp View File

@@ -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


+ 15
- 0
plugins/Cardinal/plugin.json View File

@@ -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": []
}

+ 0
- 0
plugins/Cardinal/res/.gitkeep View File


+ 50
- 0
plugins/Cardinal/src/HostParameters.cpp View File

@@ -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
- 0
plugins/Cardinal/src/HostTime.cpp View File

@@ -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
- 0
plugins/Cardinal/src/plugin.hpp View File

@@ -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
- 0
plugins/Makefile View File

@@ -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

@@ -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 $<"


+ 19
- 0
plugins/plugins.cpp View File

@@ -153,6 +153,9 @@
#undef modelVCF
#undef modelVCO

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

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

@@ -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;
@@ -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;
@@ -665,6 +683,7 @@ void initStaticPlugins()
initStatic__Befaco();
initStatic__Bidoo();
initStatic__BogaudioModules();
initStatic__Cardinal();
initStatic__Fundamental();
initStatic__GrandeModular();
initStatic__ZetaCarinaeModules();


+ 50
- 0
plugins/todo.txt View File

@@ -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

Loading…
Cancel
Save