PolyMult.hpp (849B)
1 #pragma once 2 3 #include "bogaudio.hpp" 4 5 extern Model* modelPolyMult; 6 7 namespace bogaudio { 8 9 struct PolyMult : BGModule { 10 enum ParamsIds { 11 CHANNELS_PARAM, 12 NUM_PARAMS 13 }; 14 15 enum InputsIds { 16 CHANNELS_INPUT, 17 IN_INPUT, 18 NUM_INPUTS 19 }; 20 21 enum OutputsIds { 22 OUT1_OUTPUT, 23 OUT2_OUTPUT, 24 OUT3_OUTPUT, 25 OUT4_OUTPUT, 26 NUM_OUTPUTS 27 }; 28 29 PolyMult() { 30 config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS); 31 configParam(CHANNELS_PARAM, 1.0f, 16.0f, 1.0f, "Polyphony channels"); 32 paramQuantities[CHANNELS_PARAM]->snapEnabled = true; 33 34 configInput(CHANNELS_INPUT, "Channels CV"); 35 configInput(IN_INPUT, "Signal"); 36 37 configOutput(OUT1_OUTPUT, "Signal"); 38 configOutput(OUT2_OUTPUT, "Signal"); 39 configOutput(OUT3_OUTPUT, "Signal"); 40 configOutput(OUT4_OUTPUT, "Signal"); 41 } 42 43 void processAll(const ProcessArgs& args) override; 44 }; 45 46 } // namespace bogaudio