diff --git a/Makefile b/Makefile index d610a0d..38d52b6 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,4 @@ RACK_DIR ?= ../.. -SLUG = Befaco -VERSION = 0.6.0 SOURCES += $(wildcard src/*.cpp) diff --git a/plugin.json b/plugin.json new file mode 100644 index 0000000..a5db795 --- /dev/null +++ b/plugin.json @@ -0,0 +1,40 @@ +{ + "slug": "Befaco", + "name": "Befaco", + "author": "VCV", + "license": "BSD-3-Clause", + "authorEmail": "contact@vcvrack.com", + "authorUrl": "https://vcvrack.com/", + "sourceUrl": "https://github.com/VCVRack/Befaco", + "version": "1.0.0", + "modules": { + "EvenVCO": { + "name": "EvenVCO", + "tags": ["VCO"] + }, + "Rampage": { + "name": "Rampage", + "tags": ["Function Generator", "Logic", "Slew Limiter", "Envelope Follower", "Dual"] + }, + "ABC": { + "name": "A*B+C", + "tags": ["Ring Modulator", "Attenuator", "Dual"] + }, + "SpringReverb": { + "name": "Spring Reverb", + "tags": ["Reverb"] + }, + "Mixer": { + "name": "Mixer", + "tags": ["Mixer"] + }, + "SlewLimiter": { + "name": "Slew Limiter", + "tags": ["Slew Limiter", "Envelope Follower"] + }, + "DualAtenuverter": { + "name": "Dual Atenuverter", + "tags": ["Attenuator", "Dual"] + } + } +} \ No newline at end of file diff --git a/src/ABC.cpp b/src/ABC.cpp index 89e2ff4..7bd46b9 100644 --- a/src/ABC.cpp +++ b/src/ABC.cpp @@ -76,27 +76,27 @@ struct ABCWidget : ModuleWidget { ABCWidget(ABC *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/ABC.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); - - addParam(ParamWidget::create(Vec(45, 37), module, ABC::B1_LEVEL_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(45, 107), module, ABC::C1_LEVEL_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(45, 204), module, ABC::B2_LEVEL_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(45, 274), module, ABC::C2_LEVEL_PARAM, -1.0, 1.0, 0.0)); - - addInput(Port::create(Vec(7, 28), Port::INPUT, module, ABC::A1_INPUT)); - addInput(Port::create(Vec(7, 70), Port::INPUT, module, ABC::B1_INPUT)); - addInput(Port::create(Vec(7, 112), Port::INPUT, module, ABC::C1_INPUT)); - addOutput(Port::create(Vec(7, 154), Port::OUTPUT, module, ABC::OUT1_OUTPUT)); - addInput(Port::create(Vec(7, 195), Port::INPUT, module, ABC::A2_INPUT)); - addInput(Port::create(Vec(7, 237), Port::INPUT, module, ABC::B2_INPUT)); - addInput(Port::create(Vec(7, 279), Port::INPUT, module, ABC::C2_INPUT)); - addOutput(Port::create(Vec(7, 321), Port::OUTPUT, module, ABC::OUT2_OUTPUT)); - - addChild(ModuleLightWidget::create>(Vec(37, 162), module, ABC::OUT1_POS_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(37, 329), module, ABC::OUT2_POS_LIGHT)); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); + + addParam(createParam(Vec(45, 37), module, ABC::B1_LEVEL_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(45, 107), module, ABC::C1_LEVEL_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(45, 204), module, ABC::B2_LEVEL_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(45, 274), module, ABC::C2_LEVEL_PARAM, -1.0, 1.0, 0.0)); + + addInput(createPort(Vec(7, 28), PortWidget::INPUT, module, ABC::A1_INPUT)); + addInput(createPort(Vec(7, 70), PortWidget::INPUT, module, ABC::B1_INPUT)); + addInput(createPort(Vec(7, 112), PortWidget::INPUT, module, ABC::C1_INPUT)); + addOutput(createPort(Vec(7, 154), PortWidget::OUTPUT, module, ABC::OUT1_OUTPUT)); + addInput(createPort(Vec(7, 195), PortWidget::INPUT, module, ABC::A2_INPUT)); + addInput(createPort(Vec(7, 237), PortWidget::INPUT, module, ABC::B2_INPUT)); + addInput(createPort(Vec(7, 279), PortWidget::INPUT, module, ABC::C2_INPUT)); + addOutput(createPort(Vec(7, 321), PortWidget::OUTPUT, module, ABC::OUT2_OUTPUT)); + + addChild(createLight>(Vec(37, 162), module, ABC::OUT1_POS_LIGHT)); + addChild(createLight>(Vec(37, 329), module, ABC::OUT2_POS_LIGHT)); } }; -Model *modelABC = Model::create("Befaco", "ABC", "A*B+C", RING_MODULATOR_TAG, ATTENUATOR_TAG, DUAL_TAG); +Model *modelABC = createModel("ABC"); diff --git a/src/Befaco.hpp b/src/Befaco.hpp index 72c6d5f..ee27a00 100644 --- a/src/Befaco.hpp +++ b/src/Befaco.hpp @@ -1,4 +1,4 @@ -#include "rack.hpp" +#include "rack0.hpp" using namespace rack; diff --git a/src/DualAtenuverter.cpp b/src/DualAtenuverter.cpp index 4d71684..4c115a4 100644 --- a/src/DualAtenuverter.cpp +++ b/src/DualAtenuverter.cpp @@ -51,24 +51,24 @@ struct DualAtenuverterWidget : ModuleWidget { DualAtenuverterWidget(DualAtenuverter *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/DualAtenuverter.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); - addParam(ParamWidget::create(Vec(20, 33), module, DualAtenuverter::ATEN1_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(20, 91), module, DualAtenuverter::OFFSET1_PARAM, -10.0, 10.0, 0.0)); - addParam(ParamWidget::create(Vec(20, 201), module, DualAtenuverter::ATEN2_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(20, 260), module, DualAtenuverter::OFFSET2_PARAM, -10.0, 10.0, 0.0)); + addParam(createParam(Vec(20, 33), module, DualAtenuverter::ATEN1_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(20, 91), module, DualAtenuverter::OFFSET1_PARAM, -10.0, 10.0, 0.0)); + addParam(createParam(Vec(20, 201), module, DualAtenuverter::ATEN2_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(20, 260), module, DualAtenuverter::OFFSET2_PARAM, -10.0, 10.0, 0.0)); - addInput(Port::create(Vec(7, 152), Port::INPUT, module, DualAtenuverter::IN1_INPUT)); - addOutput(Port::create(Vec(43, 152), Port::OUTPUT, module, DualAtenuverter::OUT1_OUTPUT)); + addInput(createPort(Vec(7, 152), PortWidget::INPUT, module, DualAtenuverter::IN1_INPUT)); + addOutput(createPort(Vec(43, 152), PortWidget::OUTPUT, module, DualAtenuverter::OUT1_OUTPUT)); - addInput(Port::create(Vec(7, 319), Port::INPUT, module, DualAtenuverter::IN2_INPUT)); - addOutput(Port::create(Vec(43, 319), Port::OUTPUT, module, DualAtenuverter::OUT2_OUTPUT)); + addInput(createPort(Vec(7, 319), PortWidget::INPUT, module, DualAtenuverter::IN2_INPUT)); + addOutput(createPort(Vec(43, 319), PortWidget::OUTPUT, module, DualAtenuverter::OUT2_OUTPUT)); - addChild(ModuleLightWidget::create>(Vec(33, 143), module, DualAtenuverter::OUT1_POS_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(33, 311), module, DualAtenuverter::OUT2_POS_LIGHT)); + addChild(createLight>(Vec(33, 143), module, DualAtenuverter::OUT1_POS_LIGHT)); + addChild(createLight>(Vec(33, 311), module, DualAtenuverter::OUT2_POS_LIGHT)); } }; -Model *modelDualAtenuverter = Model::create("Befaco", "DualAtenuverter", "Dual Atenuverter", ATTENUATOR_TAG, DUAL_TAG); +Model *modelDualAtenuverter = createModel("DualAtenuverter"); diff --git a/src/EvenVCO.cpp b/src/EvenVCO.cpp index de79380..47789c5 100644 --- a/src/EvenVCO.cpp +++ b/src/EvenVCO.cpp @@ -135,29 +135,29 @@ struct EvenVCOWidget : ModuleWidget { EvenVCOWidget(EvenVCO *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/EvenVCO.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); - addChild(Widget::create(Vec(15*6, 0))); - addChild(Widget::create(Vec(15*6, 365))); - - addParam(ParamWidget::create(Vec(22, 32), module, EvenVCO::OCTAVE_PARAM, -5.0, 4.0, 0.0)); - addParam(ParamWidget::create(Vec(73, 131), module, EvenVCO::TUNE_PARAM, -7.0, 7.0, 0.0)); - addParam(ParamWidget::create(Vec(16, 230), module, EvenVCO::PWM_PARAM, -1.0, 1.0, 0.0)); - - addInput(Port::create(Vec(8, 120), Port::INPUT, module, EvenVCO::PITCH1_INPUT)); - addInput(Port::create(Vec(19, 157), Port::INPUT, module, EvenVCO::PITCH2_INPUT)); - addInput(Port::create(Vec(48, 183), Port::INPUT, module, EvenVCO::FM_INPUT)); - addInput(Port::create(Vec(86, 189), Port::INPUT, module, EvenVCO::SYNC_INPUT)); - - addInput(Port::create(Vec(72, 236), Port::INPUT, module, EvenVCO::PWM_INPUT)); - - addOutput(Port::create(Vec(10, 283), Port::OUTPUT, module, EvenVCO::TRI_OUTPUT)); - addOutput(Port::create(Vec(87, 283), Port::OUTPUT, module, EvenVCO::SINE_OUTPUT)); - addOutput(Port::create(Vec(48, 306), Port::OUTPUT, module, EvenVCO::EVEN_OUTPUT)); - addOutput(Port::create(Vec(10, 327), Port::OUTPUT, module, EvenVCO::SAW_OUTPUT)); - addOutput(Port::create(Vec(87, 327), Port::OUTPUT, module, EvenVCO::SQUARE_OUTPUT)); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); + addChild(createWidget(Vec(15*6, 0))); + addChild(createWidget(Vec(15*6, 365))); + + addParam(createParam(Vec(22, 32), module, EvenVCO::OCTAVE_PARAM, -5.0, 4.0, 0.0)); + addParam(createParam(Vec(73, 131), module, EvenVCO::TUNE_PARAM, -7.0, 7.0, 0.0)); + addParam(createParam(Vec(16, 230), module, EvenVCO::PWM_PARAM, -1.0, 1.0, 0.0)); + + addInput(createPort(Vec(8, 120), PortWidget::INPUT, module, EvenVCO::PITCH1_INPUT)); + addInput(createPort(Vec(19, 157), PortWidget::INPUT, module, EvenVCO::PITCH2_INPUT)); + addInput(createPort(Vec(48, 183), PortWidget::INPUT, module, EvenVCO::FM_INPUT)); + addInput(createPort(Vec(86, 189), PortWidget::INPUT, module, EvenVCO::SYNC_INPUT)); + + addInput(createPort(Vec(72, 236), PortWidget::INPUT, module, EvenVCO::PWM_INPUT)); + + addOutput(createPort(Vec(10, 283), PortWidget::OUTPUT, module, EvenVCO::TRI_OUTPUT)); + addOutput(createPort(Vec(87, 283), PortWidget::OUTPUT, module, EvenVCO::SINE_OUTPUT)); + addOutput(createPort(Vec(48, 306), PortWidget::OUTPUT, module, EvenVCO::EVEN_OUTPUT)); + addOutput(createPort(Vec(10, 327), PortWidget::OUTPUT, module, EvenVCO::SAW_OUTPUT)); + addOutput(createPort(Vec(87, 327), PortWidget::OUTPUT, module, EvenVCO::SQUARE_OUTPUT)); } }; -Model *modelEvenVCO = Model::create("Befaco", "EvenVCO", "EvenVCO", OSCILLATOR_TAG); +Model *modelEvenVCO = createModel("EvenVCO"); diff --git a/src/Mixer.cpp b/src/Mixer.cpp index 6fcbd86..12b690a 100644 --- a/src/Mixer.cpp +++ b/src/Mixer.cpp @@ -50,26 +50,26 @@ struct MixerWidget : ModuleWidget { MixerWidget(Mixer *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/Mixer.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); - addParam(ParamWidget::create(Vec(19, 32), module, Mixer::CH1_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(19, 85), module, Mixer::CH2_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(19, 137), module, Mixer::CH3_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(19, 190), module, Mixer::CH4_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(19, 32), module, Mixer::CH1_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(19, 85), module, Mixer::CH2_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(19, 137), module, Mixer::CH3_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(19, 190), module, Mixer::CH4_PARAM, 0.0, 1.0, 0.0)); - addInput(Port::create(Vec(7, 242), Port::INPUT, module, Mixer::IN1_INPUT)); - addInput(Port::create(Vec(43, 242), Port::INPUT, module, Mixer::IN2_INPUT)); + addInput(createPort(Vec(7, 242), PortWidget::INPUT, module, Mixer::IN1_INPUT)); + addInput(createPort(Vec(43, 242), PortWidget::INPUT, module, Mixer::IN2_INPUT)); - addInput(Port::create(Vec(7, 281), Port::INPUT, module, Mixer::IN3_INPUT)); - addInput(Port::create(Vec(43, 281), Port::INPUT, module, Mixer::IN4_INPUT)); + addInput(createPort(Vec(7, 281), PortWidget::INPUT, module, Mixer::IN3_INPUT)); + addInput(createPort(Vec(43, 281), PortWidget::INPUT, module, Mixer::IN4_INPUT)); - addOutput(Port::create(Vec(7, 324), Port::OUTPUT, module, Mixer::OUT1_OUTPUT)); - addOutput(Port::create(Vec(43, 324), Port::OUTPUT, module, Mixer::OUT2_OUTPUT)); + addOutput(createPort(Vec(7, 324), PortWidget::OUTPUT, module, Mixer::OUT1_OUTPUT)); + addOutput(createPort(Vec(43, 324), PortWidget::OUTPUT, module, Mixer::OUT2_OUTPUT)); - addChild(ModuleLightWidget::create>(Vec(32.7, 310), module, Mixer::OUT_POS_LIGHT)); + addChild(createLight>(Vec(32.7, 310), module, Mixer::OUT_POS_LIGHT)); } }; -Model *modelMixer = Model::create("Befaco", "Mixer", "Mixer", MIXER_TAG); +Model *modelMixer = createModel("Mixer"); diff --git a/src/Rampage.cpp b/src/Rampage.cpp index 53dea7d..2bd324a 100644 --- a/src/Rampage.cpp +++ b/src/Rampage.cpp @@ -172,61 +172,61 @@ struct RampageWidget : ModuleWidget { RampageWidget(Rampage *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/Rampage.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(box.size.x-30, 0))); - addChild(Widget::create(Vec(15, 365))); - addChild(Widget::create(Vec(box.size.x-30, 365))); - - addInput(Port::create(Vec(14, 30), Port::INPUT, module, Rampage::IN_A_INPUT)); - addInput(Port::create(Vec(52, 37), Port::INPUT, module, Rampage::TRIGG_A_INPUT)); - addInput(Port::create(Vec(8, 268), Port::INPUT, module, Rampage::RISE_CV_A_INPUT)); - addInput(Port::create(Vec(67, 268), Port::INPUT, module, Rampage::FALL_CV_A_INPUT)); - addInput(Port::create(Vec(38, 297), Port::INPUT, module, Rampage::EXP_CV_A_INPUT)); - addInput(Port::create(Vec(102, 290), Port::INPUT, module, Rampage::CYCLE_A_INPUT)); - addInput(Port::create(Vec(229, 30), Port::INPUT, module, Rampage::IN_B_INPUT)); - addInput(Port::create(Vec(192, 37), Port::INPUT, module, Rampage::TRIGG_B_INPUT)); - addInput(Port::create(Vec(176, 268), Port::INPUT, module, Rampage::RISE_CV_B_INPUT)); - addInput(Port::create(Vec(237, 268), Port::INPUT, module, Rampage::FALL_CV_B_INPUT)); - addInput(Port::create(Vec(207, 297), Port::INPUT, module, Rampage::EXP_CV_B_INPUT)); - addInput(Port::create(Vec(143, 290), Port::INPUT, module, Rampage::CYCLE_B_INPUT)); - - addParam(ParamWidget::create(Vec(94, 32), module, Rampage::RANGE_A_PARAM, 0.0, 2.0, 0.0)); - addParam(ParamWidget::create(Vec(27, 90), module, Rampage::SHAPE_A_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(72, 82), module, Rampage::TRIGG_A_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(16, 135), module, Rampage::RISE_A_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(57, 135), module, Rampage::FALL_A_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(101, 238), module, Rampage::CYCLE_A_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(147, 32), module, Rampage::RANGE_B_PARAM, 0.0, 2.0, 0.0)); - addParam(ParamWidget::create(Vec(217, 90), module, Rampage::SHAPE_B_PARAM, -1.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(170, 82), module, Rampage::TRIGG_B_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(197, 135), module, Rampage::RISE_B_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(238, 135), module, Rampage::FALL_B_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(141, 238), module, Rampage::CYCLE_B_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(117, 76), module, Rampage::BALANCE_PARAM, 0.0, 1.0, 0.5)); - - addOutput(Port::create(Vec(8, 326), Port::OUTPUT, module, Rampage::RISING_A_OUTPUT)); - addOutput(Port::create(Vec(68, 326), Port::OUTPUT, module, Rampage::FALLING_A_OUTPUT)); - addOutput(Port::create(Vec(104, 326), Port::OUTPUT, module, Rampage::EOC_A_OUTPUT)); - addOutput(Port::create(Vec(102, 195), Port::OUTPUT, module, Rampage::OUT_A_OUTPUT)); - addOutput(Port::create(Vec(177, 326), Port::OUTPUT, module, Rampage::RISING_B_OUTPUT)); - addOutput(Port::create(Vec(237, 326), Port::OUTPUT, module, Rampage::FALLING_B_OUTPUT)); - addOutput(Port::create(Vec(140, 326), Port::OUTPUT, module, Rampage::EOC_B_OUTPUT)); - addOutput(Port::create(Vec(142, 195), Port::OUTPUT, module, Rampage::OUT_B_OUTPUT)); - addOutput(Port::create(Vec(122, 133), Port::OUTPUT, module, Rampage::COMPARATOR_OUTPUT)); - addOutput(Port::create(Vec(89, 157), Port::OUTPUT, module, Rampage::MIN_OUTPUT)); - addOutput(Port::create(Vec(155, 157), Port::OUTPUT, module, Rampage::MAX_OUTPUT)); - - addChild(ModuleLightWidget::create>(Vec(132, 167), module, Rampage::COMPARATOR_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(123, 174), module, Rampage::MIN_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(141, 174), module, Rampage::MAX_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(126, 185), module, Rampage::OUT_A_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(138, 185), module, Rampage::OUT_B_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(18, 312), module, Rampage::RISING_A_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(78, 312), module, Rampage::FALLING_A_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(187, 312), module, Rampage::RISING_B_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(247, 312), module, Rampage::FALLING_B_LIGHT)); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(box.size.x-30, 0))); + addChild(createWidget(Vec(15, 365))); + addChild(createWidget(Vec(box.size.x-30, 365))); + + addInput(createPort(Vec(14, 30), PortWidget::INPUT, module, Rampage::IN_A_INPUT)); + addInput(createPort(Vec(52, 37), PortWidget::INPUT, module, Rampage::TRIGG_A_INPUT)); + addInput(createPort(Vec(8, 268), PortWidget::INPUT, module, Rampage::RISE_CV_A_INPUT)); + addInput(createPort(Vec(67, 268), PortWidget::INPUT, module, Rampage::FALL_CV_A_INPUT)); + addInput(createPort(Vec(38, 297), PortWidget::INPUT, module, Rampage::EXP_CV_A_INPUT)); + addInput(createPort(Vec(102, 290), PortWidget::INPUT, module, Rampage::CYCLE_A_INPUT)); + addInput(createPort(Vec(229, 30), PortWidget::INPUT, module, Rampage::IN_B_INPUT)); + addInput(createPort(Vec(192, 37), PortWidget::INPUT, module, Rampage::TRIGG_B_INPUT)); + addInput(createPort(Vec(176, 268), PortWidget::INPUT, module, Rampage::RISE_CV_B_INPUT)); + addInput(createPort(Vec(237, 268), PortWidget::INPUT, module, Rampage::FALL_CV_B_INPUT)); + addInput(createPort(Vec(207, 297), PortWidget::INPUT, module, Rampage::EXP_CV_B_INPUT)); + addInput(createPort(Vec(143, 290), PortWidget::INPUT, module, Rampage::CYCLE_B_INPUT)); + + addParam(createParam(Vec(94, 32), module, Rampage::RANGE_A_PARAM, 0.0, 2.0, 0.0)); + addParam(createParam(Vec(27, 90), module, Rampage::SHAPE_A_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(72, 82), module, Rampage::TRIGG_A_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(16, 135), module, Rampage::RISE_A_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(57, 135), module, Rampage::FALL_A_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(101, 238), module, Rampage::CYCLE_A_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(147, 32), module, Rampage::RANGE_B_PARAM, 0.0, 2.0, 0.0)); + addParam(createParam(Vec(217, 90), module, Rampage::SHAPE_B_PARAM, -1.0, 1.0, 0.0)); + addParam(createParam(Vec(170, 82), module, Rampage::TRIGG_B_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(197, 135), module, Rampage::RISE_B_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(238, 135), module, Rampage::FALL_B_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(141, 238), module, Rampage::CYCLE_B_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(117, 76), module, Rampage::BALANCE_PARAM, 0.0, 1.0, 0.5)); + + addOutput(createPort(Vec(8, 326), PortWidget::OUTPUT, module, Rampage::RISING_A_OUTPUT)); + addOutput(createPort(Vec(68, 326), PortWidget::OUTPUT, module, Rampage::FALLING_A_OUTPUT)); + addOutput(createPort(Vec(104, 326), PortWidget::OUTPUT, module, Rampage::EOC_A_OUTPUT)); + addOutput(createPort(Vec(102, 195), PortWidget::OUTPUT, module, Rampage::OUT_A_OUTPUT)); + addOutput(createPort(Vec(177, 326), PortWidget::OUTPUT, module, Rampage::RISING_B_OUTPUT)); + addOutput(createPort(Vec(237, 326), PortWidget::OUTPUT, module, Rampage::FALLING_B_OUTPUT)); + addOutput(createPort(Vec(140, 326), PortWidget::OUTPUT, module, Rampage::EOC_B_OUTPUT)); + addOutput(createPort(Vec(142, 195), PortWidget::OUTPUT, module, Rampage::OUT_B_OUTPUT)); + addOutput(createPort(Vec(122, 133), PortWidget::OUTPUT, module, Rampage::COMPARATOR_OUTPUT)); + addOutput(createPort(Vec(89, 157), PortWidget::OUTPUT, module, Rampage::MIN_OUTPUT)); + addOutput(createPort(Vec(155, 157), PortWidget::OUTPUT, module, Rampage::MAX_OUTPUT)); + + addChild(createLight>(Vec(132, 167), module, Rampage::COMPARATOR_LIGHT)); + addChild(createLight>(Vec(123, 174), module, Rampage::MIN_LIGHT)); + addChild(createLight>(Vec(141, 174), module, Rampage::MAX_LIGHT)); + addChild(createLight>(Vec(126, 185), module, Rampage::OUT_A_LIGHT)); + addChild(createLight>(Vec(138, 185), module, Rampage::OUT_B_LIGHT)); + addChild(createLight>(Vec(18, 312), module, Rampage::RISING_A_LIGHT)); + addChild(createLight>(Vec(78, 312), module, Rampage::FALLING_A_LIGHT)); + addChild(createLight>(Vec(187, 312), module, Rampage::RISING_B_LIGHT)); + addChild(createLight>(Vec(247, 312), module, Rampage::FALLING_B_LIGHT)); } }; -Model *modelRampage = Model::create("Befaco", "Rampage", "Rampage", FUNCTION_GENERATOR_TAG, LOGIC_TAG, SLEW_LIMITER_TAG, ENVELOPE_FOLLOWER_TAG, DUAL_TAG); +Model *modelRampage = createModel("Rampage"); diff --git a/src/SlewLimiter.cpp b/src/SlewLimiter.cpp index eb5267c..66338f2 100644 --- a/src/SlewLimiter.cpp +++ b/src/SlewLimiter.cpp @@ -61,21 +61,21 @@ struct SlewLimiterWidget : ModuleWidget { SlewLimiterWidget(SlewLimiter *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/SlewLimiter.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); - addParam(ParamWidget::create(Vec(27, 39), module, ::SlewLimiter::SHAPE_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(27, 39), module, ::SlewLimiter::SHAPE_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(15, 102), module, ::SlewLimiter::RISE_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(60, 102), module, ::SlewLimiter::FALL_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(15, 102), module, ::SlewLimiter::RISE_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(60, 102), module, ::SlewLimiter::FALL_PARAM, 0.0, 1.0, 0.0)); - addInput(Port::create(Vec(10, 273), Port::INPUT, module, ::SlewLimiter::RISE_INPUT)); - addInput(Port::create(Vec(55, 273), Port::INPUT, module, ::SlewLimiter::FALL_INPUT)); + addInput(createPort(Vec(10, 273), PortWidget::INPUT, module, ::SlewLimiter::RISE_INPUT)); + addInput(createPort(Vec(55, 273), PortWidget::INPUT, module, ::SlewLimiter::FALL_INPUT)); - addInput(Port::create(Vec(10, 323), Port::INPUT, module, ::SlewLimiter::IN_INPUT)); - addOutput(Port::create(Vec(55, 323), Port::OUTPUT, module, ::SlewLimiter::OUT_OUTPUT)); + addInput(createPort(Vec(10, 323), PortWidget::INPUT, module, ::SlewLimiter::IN_INPUT)); + addOutput(createPort(Vec(55, 323), PortWidget::OUTPUT, module, ::SlewLimiter::OUT_OUTPUT)); } }; -Model *modelSlewLimiter = Model::create("Befaco", "SlewLimiter", "Slew Limiter", SLEW_LIMITER_TAG, ENVELOPE_FOLLOWER_TAG); +Model *modelSlewLimiter = createModel("SlewLimiter"); diff --git a/src/SpringReverb.cpp b/src/SpringReverb.cpp index 06d7645..a0fe5ad 100644 --- a/src/SpringReverb.cpp +++ b/src/SpringReverb.cpp @@ -145,37 +145,37 @@ struct SpringReverbWidget : ModuleWidget { SpringReverbWidget(SpringReverb *module) : ModuleWidget(module) { setPanel(SVG::load(assetPlugin(plugin, "res/SpringReverb.svg"))); - addChild(Widget::create(Vec(15, 0))); - addChild(Widget::create(Vec(15, 365))); - addChild(Widget::create(Vec(15*6, 0))); - addChild(Widget::create(Vec(15*6, 365))); - - addParam(ParamWidget::create(Vec(22, 29), module, SpringReverb::WET_PARAM, 0.0, 1.0, 0.5)); - - addParam(ParamWidget::create(Vec(12, 116), module, SpringReverb::LEVEL1_PARAM, 0.0, 1.0, 0.0)); - addParam(ParamWidget::create(Vec(93, 116), module, SpringReverb::LEVEL2_PARAM, 0.0, 1.0, 0.0)); - - addParam(ParamWidget::create(Vec(42, 210), module, SpringReverb::HPF_PARAM, 0.0, 1.0, 0.5)); - - addInput(Port::create(Vec(7, 243), Port::INPUT, module, SpringReverb::CV1_INPUT)); - addInput(Port::create(Vec(88, 243), Port::INPUT, module, SpringReverb::CV2_INPUT)); - addInput(Port::create(Vec(27, 281), Port::INPUT, module, SpringReverb::IN1_INPUT)); - addInput(Port::create(Vec(67, 281), Port::INPUT, module, SpringReverb::IN2_INPUT)); - - addOutput(Port::create(Vec(7, 317), Port::OUTPUT, module, SpringReverb::MIX_OUTPUT)); - addInput(Port::create(Vec(47, 324), Port::INPUT, module, SpringReverb::MIX_CV_INPUT)); - addOutput(Port::create(Vec(88, 317), Port::OUTPUT, module, SpringReverb::WET_OUTPUT)); - - addChild(ModuleLightWidget::create>(Vec(55, 269), module, SpringReverb::PEAK_LIGHT)); - addChild(ModuleLightWidget::create>(Vec(55, 113), module, SpringReverb::VU1_LIGHT + 0)); - addChild(ModuleLightWidget::create>(Vec(55, 126), module, SpringReverb::VU1_LIGHT + 1)); - addChild(ModuleLightWidget::create>(Vec(55, 138), module, SpringReverb::VU1_LIGHT + 2)); - addChild(ModuleLightWidget::create>(Vec(55, 150), module, SpringReverb::VU1_LIGHT + 3)); - addChild(ModuleLightWidget::create>(Vec(55, 163), module, SpringReverb::VU1_LIGHT + 4)); - addChild(ModuleLightWidget::create>(Vec(55, 175), module, SpringReverb::VU1_LIGHT + 5)); - addChild(ModuleLightWidget::create>(Vec(55, 188), module, SpringReverb::VU1_LIGHT + 6)); + addChild(createWidget(Vec(15, 0))); + addChild(createWidget(Vec(15, 365))); + addChild(createWidget(Vec(15*6, 0))); + addChild(createWidget(Vec(15*6, 365))); + + addParam(createParam(Vec(22, 29), module, SpringReverb::WET_PARAM, 0.0, 1.0, 0.5)); + + addParam(createParam(Vec(12, 116), module, SpringReverb::LEVEL1_PARAM, 0.0, 1.0, 0.0)); + addParam(createParam(Vec(93, 116), module, SpringReverb::LEVEL2_PARAM, 0.0, 1.0, 0.0)); + + addParam(createParam(Vec(42, 210), module, SpringReverb::HPF_PARAM, 0.0, 1.0, 0.5)); + + addInput(createPort(Vec(7, 243), PortWidget::INPUT, module, SpringReverb::CV1_INPUT)); + addInput(createPort(Vec(88, 243), PortWidget::INPUT, module, SpringReverb::CV2_INPUT)); + addInput(createPort(Vec(27, 281), PortWidget::INPUT, module, SpringReverb::IN1_INPUT)); + addInput(createPort(Vec(67, 281), PortWidget::INPUT, module, SpringReverb::IN2_INPUT)); + + addOutput(createPort(Vec(7, 317), PortWidget::OUTPUT, module, SpringReverb::MIX_OUTPUT)); + addInput(createPort(Vec(47, 324), PortWidget::INPUT, module, SpringReverb::MIX_CV_INPUT)); + addOutput(createPort(Vec(88, 317), PortWidget::OUTPUT, module, SpringReverb::WET_OUTPUT)); + + addChild(createLight>(Vec(55, 269), module, SpringReverb::PEAK_LIGHT)); + addChild(createLight>(Vec(55, 113), module, SpringReverb::VU1_LIGHT + 0)); + addChild(createLight>(Vec(55, 126), module, SpringReverb::VU1_LIGHT + 1)); + addChild(createLight>(Vec(55, 138), module, SpringReverb::VU1_LIGHT + 2)); + addChild(createLight>(Vec(55, 150), module, SpringReverb::VU1_LIGHT + 3)); + addChild(createLight>(Vec(55, 163), module, SpringReverb::VU1_LIGHT + 4)); + addChild(createLight>(Vec(55, 175), module, SpringReverb::VU1_LIGHT + 5)); + addChild(createLight>(Vec(55, 188), module, SpringReverb::VU1_LIGHT + 6)); } }; -Model *modelSpringReverb = Model::create("Befaco", "SpringReverb", "Spring Reverb", REVERB_TAG, DUAL_TAG); +Model *modelSpringReverb = createModel("SpringReverb");