BogaudioModules

BogaudioModules for VCV Rack
Log | Files | Refs | README | LICENSE

commit 73e2dd98b3e8e95cf50b1d6a88733ef7d3597506
parent 0358eba8d2beece08d69f47b2f738fa18b182d97
Author: Matt Demanett <matt@demanett.net>
Date:   Sun, 18 Feb 2018 00:52:48 -0500

Test/template panels in various widths.

Diffstat:
Ares-src/EightHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/EighteenHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/FifteenHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Mres-src/SixHP-src.svg | 6+++---
Ares-src/TenHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/ThirteenHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/ThirtyHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/ThreeHP-src.svg | 40++++++++++++++++++++++++++++++++++++++++
Ares-src/TwelveHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/TwentyFiveHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/TwentyHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares-src/TwentyTwoHP-src.svg | 38++++++++++++++++++++++++++++++++++++++
Ares/EightHP.svg | 0
Ares/EighteenHP.svg | 0
Ares/FifteenHP.svg | 0
Mres/SixHP.svg | 0
Ares/TenHP.svg | 0
Ares/ThirteenHP.svg | 0
Ares/ThirtyHP.svg | 0
Ares/ThreeHP.svg | 0
Ares/TwelveHP.svg | 0
Ares/TwentyFiveHP.svg | 0
Ares/TwentyHP.svg | 0
Ares/TwentyTwoHP.svg | 0
Mscripts/svg_widgets.rb | 2+-
Asrc/EightHP.cpp | 55+++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/EighteenHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/FifteenHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/TenHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/ThirteenHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/ThirtyHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/ThreeHP.cpp | 55+++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/TwelveHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/TwentyFiveHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/TwentyHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/TwentyTwoHP.cpp | 57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Msrc/bogaudio.cpp | 12++++++++++++
Msrc/bogaudio.hpp | 12++++++++++++
38 files changed, 1071 insertions(+), 4 deletions(-)

diff --git a/res-src/EightHP-src.svg b/res-src/EightHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="120" + height="380" + viewBox="0 0 120 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 119,1 119,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 119.5,0.5 119.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 120,0 120,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="50" y="17" font-size="9pt" letter-spacing="3px">8HP8HP</text> + <g transform="translate(5.5 374)"> + <text class="brand" font-size="6.5pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="1.5" height="2" fill="#ddd" transform="translate(21 -4)" /> + </g> +</svg> diff --git a/res-src/EighteenHP-src.svg b/res-src/EighteenHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="270" + height="380" + viewBox="0 0 270 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 269,1 269,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 269.5,0.5 269.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 270,0 270,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="44" y="19" font-size="12pt" letter-spacing="4px">18HP-18HP-18HP</text> + <g transform="translate(95 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/FifteenHP-src.svg b/res-src/FifteenHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="225" + height="380" + viewBox="0 0 225 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 224,1 224,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 224.5,0.5 224.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 225,0 225,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="54" y="19" font-size="12pt" letter-spacing="4px">15HP-15HP</text> + <g transform="translate(72.5 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/SixHP-src.svg b/res-src/SixHP-src.svg @@ -27,12 +27,12 @@ <rect width="100%" height="100%" fill="#ddd" /> <polyline points="1,1 89,1 89,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> - <polyline points="0.5,0.5 149.5,0.5 149.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> - <polyline points="0,0 150,0 150,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + <polyline points="0.5,0.5 89.5,0.5 89.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 90,0 90,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> <text class="title" x="20" y="17" font-size="9pt" letter-spacing="3px">6HP6HP</text> <g transform="translate(5.5 374)"> <text class="brand" font-size="6.5pt" letter-spacing="2px">BOGAUDIO</text> - <rect width="1.5" height="2" fill="#ddd" transform="translate(20.5 -4)" /> + <rect width="1.5" height="2" fill="#ddd" transform="translate(21 -4)" /> </g> </svg> diff --git a/res-src/TenHP-src.svg b/res-src/TenHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="150" + height="380" + viewBox="0 0 150 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 149,1 149,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 149.5,0.5 149.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 150,0 150,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="22" y="19" font-size="12pt" letter-spacing="4px">10HP10HP</text> + <g transform="translate(35.5 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +\</svg> diff --git a/res-src/ThirteenHP-src.svg b/res-src/ThirteenHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="195" + height="380" + viewBox="0 0 195 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 194,1 194,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 194.5,0.5 194.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 195,0 195,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="39" y="19" font-size="12pt" letter-spacing="4px">13HP-13HP</text> + <g transform="translate(58 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/ThirtyHP-src.svg b/res-src/ThirtyHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="450" + height="380" + viewBox="0 0 450 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 449,1 449,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 449.5,0.5 449.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 450,0 450,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="47" y="19" font-size="12pt" letter-spacing="4px">THIRTY(30) HP - THIRTY(30) HP</text> + <g transform="translate(185 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/ThreeHP-src.svg b/res-src/ThreeHP-src.svg @@ -0,0 +1,40 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="45" + height="380" + viewBox="0 0 45 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 44,1 44,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 44.5,0.5 44.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 45,0 45,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <g transform="rotate(-90) translate(-376 13)"> + <text class="title" font-size="7pt" letter-spacing="2.5px">3HP</text> + <g transform="translate(0 12)"> + <text class="brand" font-size="7pt" letter-spacing="2px">BGA</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(11.5 -5)" /> + </g> + </g> +</svg> diff --git a/res-src/TwelveHP-src.svg b/res-src/TwelveHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="180" + height="380" + viewBox="0 0 180 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 179,1 179,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 179.5,0.5 179.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 180,0 180,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="32" y="19" font-size="12pt" letter-spacing="4px">12HP-12HP</text> + <g transform="translate(50 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +\</svg> diff --git a/res-src/TwentyFiveHP-src.svg b/res-src/TwentyFiveHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="375" + height="380" + viewBox="0 0 375 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 374,1 374,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 374.5,0.5 374.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 375,0 375,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="58" y="19" font-size="12pt" letter-spacing="4px">25HP-25HP-25HP-25HP</text> + <g transform="translate(148 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/TwentyHP-src.svg b/res-src/TwentyHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="300" + height="380" + viewBox="0 0 300 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 299,1 299,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 299.5,0.5 299.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 300,0 300,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="55" y="19" font-size="12pt" letter-spacing="4px">20HP-20HP-20HP</text> + <g transform="translate(110 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res-src/TwentyTwoHP-src.svg b/res-src/TwentyTwoHP-src.svg @@ -0,0 +1,38 @@ +<svg + version="1.1" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="330" + height="380" + viewBox="0 0 330 380" +> + <style> + text { + fill: #333; + font-family: 'Roboto', sans-serif; + font-weight: bold; + } + text.title { + font-family: 'Comfortaa', sans-serif; + font-weight: normal; + } + text.brand { + font-family: 'Audiowide', sans-serif; + font-weight: bold; + } + </style> + + <defs> + </defs> + + <rect width="100%" height="100%" fill="#ddd" /> + <polyline points="1,1 329,1 329,379 1,379 1,1" stroke="#e4e4e4" stroke-width="0.5" fill="none" /> + <polyline points="0.5,0.5 329.5,0.5 329.5,379.5 0.5,379.5 0.5,0.5" stroke="#ebebeb" stroke-width="0.8" fill="none" /> + <polyline points="0,0 330,0 330,380 0,380 0,0" stroke="#f2f2f2" stroke-width="1" fill="none" /> + + <text class="title" x="70" y="19" font-size="12pt" letter-spacing="4px">22HP-22HP-22HP</text> + <g transform="translate(125 374)"> + <text class="brand" font-size="8pt" letter-spacing="2px">BOGAUDIO</text> + <rect width="3.0" height="3" fill="#ddd" transform="translate(24 -5)" /> + </g> +</svg> diff --git a/res/EightHP.svg b/res/EightHP.svg Binary files differ. diff --git a/res/EighteenHP.svg b/res/EighteenHP.svg Binary files differ. diff --git a/res/FifteenHP.svg b/res/FifteenHP.svg Binary files differ. diff --git a/res/SixHP.svg b/res/SixHP.svg Binary files differ. diff --git a/res/TenHP.svg b/res/TenHP.svg Binary files differ. diff --git a/res/ThirteenHP.svg b/res/ThirteenHP.svg Binary files differ. diff --git a/res/ThirtyHP.svg b/res/ThirtyHP.svg Binary files differ. diff --git a/res/ThreeHP.svg b/res/ThreeHP.svg Binary files differ. diff --git a/res/TwelveHP.svg b/res/TwelveHP.svg Binary files differ. diff --git a/res/TwentyFiveHP.svg b/res/TwentyFiveHP.svg Binary files differ. diff --git a/res/TwentyHP.svg b/res/TwentyHP.svg Binary files differ. diff --git a/res/TwentyTwoHP.svg b/res/TwentyTwoHP.svg Binary files differ. diff --git a/scripts/svg_widgets.rb b/scripts/svg_widgets.rb @@ -265,7 +265,7 @@ def make_screws(hp, comments, indent) if hp <= 6 ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 0)));' ss << 'addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365)));' - elsif hp <= 10 + elsif hp <= 13 ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 0)));' ss << 'addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0)));' ss << 'addChild(Widget::create<ScrewSilver>(Vec(0, 365)));' diff --git a/src/EightHP.cpp b/src/EightHP.cpp @@ -0,0 +1,55 @@ + +#include "bogaudio.hpp" + +struct EightHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + EightHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void EightHP::onReset() { +} + +void EightHP::step() { +} + + +struct EightHPWidget : ModuleWidget { + EightHPWidget(EightHP* module); +}; + +EightHPWidget::EightHPWidget(EightHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 8, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/EightHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(0, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365))); +} + + +Model* modelEightHP = Model::create<EightHP, EightHPWidget>("Bogaudio", "Bogaudio-EightHP", "8HP"); diff --git a/src/EighteenHP.cpp b/src/EighteenHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct EighteenHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + EighteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void EighteenHP::onReset() { +} + +void EighteenHP::step() { +} + + +struct EighteenHPWidget : ModuleWidget { + EighteenHPWidget(EighteenHP* module); +}; + +EighteenHPWidget::EighteenHPWidget(EighteenHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 18, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/EighteenHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelEighteenHP = Model::create<EighteenHP, EighteenHPWidget>("Bogaudio", "Bogaudio-EighteenHP", "18HP"); diff --git a/src/FifteenHP.cpp b/src/FifteenHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct FifteenHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + FifteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void FifteenHP::onReset() { +} + +void FifteenHP::step() { +} + + +struct FifteenHPWidget : ModuleWidget { + FifteenHPWidget(FifteenHP* module); +}; + +FifteenHPWidget::FifteenHPWidget(FifteenHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 15, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/FifteenHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelFifteenHP = Model::create<FifteenHP, FifteenHPWidget>("Bogaudio", "Bogaudio-FifteenHP", "15HP"); diff --git a/src/TenHP.cpp b/src/TenHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct TenHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + TenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void TenHP::onReset() { +} + +void TenHP::step() { +} + + +struct TenHPWidget : ModuleWidget { + TenHPWidget(TenHP* module); +}; + +TenHPWidget::TenHPWidget(TenHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 10, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/TenHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(0, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(0, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365))); +} + + +Model* modelTenHP = Model::create<TenHP, TenHPWidget>("Bogaudio", "Bogaudio-TenHP", "10HP"); diff --git a/src/ThirteenHP.cpp b/src/ThirteenHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct ThirteenHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + ThirteenHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void ThirteenHP::onReset() { +} + +void ThirteenHP::step() { +} + + +struct ThirteenHPWidget : ModuleWidget { + ThirteenHPWidget(ThirteenHP* module); +}; + +ThirteenHPWidget::ThirteenHPWidget(ThirteenHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 13, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThirteenHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(0, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(0, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365))); +} + + +Model* modelThirteenHP = Model::create<ThirteenHP, ThirteenHPWidget>("Bogaudio", "Bogaudio-ThirteenHP", "13HP"); diff --git a/src/ThirtyHP.cpp b/src/ThirtyHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct ThirtyHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + ThirtyHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void ThirtyHP::onReset() { +} + +void ThirtyHP::step() { +} + + +struct ThirtyHPWidget : ModuleWidget { + ThirtyHPWidget(ThirtyHP* module); +}; + +ThirtyHPWidget::ThirtyHPWidget(ThirtyHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 30, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThirtyHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelThirtyHP = Model::create<ThirtyHP, ThirtyHPWidget>("Bogaudio", "Bogaudio-ThirtyHP", "30HP"); diff --git a/src/ThreeHP.cpp b/src/ThreeHP.cpp @@ -0,0 +1,55 @@ + +#include "bogaudio.hpp" + +struct ThreeHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + ThreeHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void ThreeHP::onReset() { +} + +void ThreeHP::step() { +} + + +struct ThreeHPWidget : ModuleWidget { + ThreeHPWidget(ThreeHP* module); +}; + +ThreeHPWidget::ThreeHPWidget(ThreeHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 3, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/ThreeHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(0, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365))); +} + + +Model* modelThreeHP = Model::create<ThreeHP, ThreeHPWidget>("Bogaudio", "Bogaudio-ThreeHP", "3HP"); diff --git a/src/TwelveHP.cpp b/src/TwelveHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct TwelveHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + TwelveHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void TwelveHP::onReset() { +} + +void TwelveHP::step() { +} + + +struct TwelveHPWidget : ModuleWidget { + TwelveHPWidget(TwelveHP* module); +}; + +TwelveHPWidget::TwelveHPWidget(TwelveHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 12, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwelveHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(0, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(0, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 15, 365))); +} + + +Model* modelTwelveHP = Model::create<TwelveHP, TwelveHPWidget>("Bogaudio", "Bogaudio-TwelveHP", "12HP"); diff --git a/src/TwentyFiveHP.cpp b/src/TwentyFiveHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct TwentyFiveHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + TwentyFiveHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void TwentyFiveHP::onReset() { +} + +void TwentyFiveHP::step() { +} + + +struct TwentyFiveHPWidget : ModuleWidget { + TwentyFiveHPWidget(TwentyFiveHP* module); +}; + +TwentyFiveHPWidget::TwentyFiveHPWidget(TwentyFiveHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 25, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyFiveHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelTwentyFiveHP = Model::create<TwentyFiveHP, TwentyFiveHPWidget>("Bogaudio", "Bogaudio-TwentyFiveHP", "25HP"); diff --git a/src/TwentyHP.cpp b/src/TwentyHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct TwentyHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + TwentyHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void TwentyHP::onReset() { +} + +void TwentyHP::step() { +} + + +struct TwentyHPWidget : ModuleWidget { + TwentyHPWidget(TwentyHP* module); +}; + +TwentyHPWidget::TwentyHPWidget(TwentyHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 20, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelTwentyHP = Model::create<TwentyHP, TwentyHPWidget>("Bogaudio", "Bogaudio-TwentyHP", "20HP"); diff --git a/src/TwentyTwoHP.cpp b/src/TwentyTwoHP.cpp @@ -0,0 +1,57 @@ + +#include "bogaudio.hpp" + +struct TwentyTwoHP : Module { + enum ParamsIds { + NUM_PARAMS + }; + + enum InputsIds { + NUM_INPUTS + }; + + enum OutputsIds { + NUM_OUTPUTS + }; + + enum LightsIds { + NUM_LIGHTS + }; + + TwentyTwoHP() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { + onReset(); + } + + virtual void onReset() override; + virtual void step() override; +}; + +void TwentyTwoHP::onReset() { +} + +void TwentyTwoHP::step() { +} + + +struct TwentyTwoHPWidget : ModuleWidget { + TwentyTwoHPWidget(TwentyTwoHP* module); +}; + +TwentyTwoHPWidget::TwentyTwoHPWidget(TwentyTwoHP* module) : ModuleWidget(module) { + box.size = Vec(RACK_GRID_WIDTH * 22, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/TwentyTwoHP.svg"))); + addChild(panel); + } + + addChild(Widget::create<ScrewSilver>(Vec(15, 0))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 0))); + addChild(Widget::create<ScrewSilver>(Vec(15, 365))); + addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 30, 365))); +} + + +Model* modelTwentyTwoHP = Model::create<TwentyTwoHP, TwentyTwoHPWidget>("Bogaudio", "Bogaudio-TwentyTwoHP", "22HP"); diff --git a/src/bogaudio.cpp b/src/bogaudio.cpp @@ -29,6 +29,18 @@ void init(rack::Plugin *p) { #ifdef TEST p->addModel(modelTest); + + p->addModel(modelThreeHP); p->addModel(modelSixHP); + p->addModel(modelEightHP); + p->addModel(modelTenHP); + p->addModel(modelTwelveHP); + p->addModel(modelThirteenHP); + p->addModel(modelFifteenHP); + p->addModel(modelEighteenHP); + p->addModel(modelTwentyHP); + p->addModel(modelTwentyTwoHP); + p->addModel(modelTwentyFiveHP); + p->addModel(modelThirtyHP); #endif } diff --git a/src/bogaudio.hpp b/src/bogaudio.hpp @@ -35,4 +35,16 @@ extern Model* modelSwitch; extern Model* modelVCA; extern Model* modelTest; + +extern Model* modelThreeHP; extern Model* modelSixHP; +extern Model* modelEightHP; +extern Model* modelTenHP; +extern Model* modelTwelveHP; +extern Model* modelThirteenHP; +extern Model* modelFifteenHP; +extern Model* modelEighteenHP; +extern Model* modelTwentyHP; +extern Model* modelTwentyTwoHP; +extern Model* modelTwentyFiveHP; +extern Model* modelThirtyHP;