Sums.hpp (859B)
1 #pragma once 2 3 #include "bogaudio.hpp" 4 #include "disable_output_limit.hpp" 5 6 extern Model* modelSums; 7 8 namespace bogaudio { 9 10 struct Sums : DisableOutputLimitModule { 11 enum ParamsIds { 12 NUM_PARAMS 13 }; 14 15 enum InputsIds { 16 A_INPUT, 17 B_INPUT, 18 NEGATE_INPUT, 19 NUM_INPUTS 20 }; 21 22 enum OutputsIds { 23 SUM_OUTPUT, 24 DIFFERENCE_OUTPUT, 25 MAX_OUTPUT, 26 MIN_OUTPUT, 27 NEGATE_OUTPUT, 28 NUM_OUTPUTS 29 }; 30 31 Sums() { 32 config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS); 33 34 configInput(A_INPUT, "Signal A"); 35 configInput(B_INPUT, "Signal B"); 36 configInput(NEGATE_INPUT, "Negative signal"); 37 38 configOutput(SUM_OUTPUT, "Sum"); 39 configOutput(DIFFERENCE_OUTPUT, "Difference"); 40 configOutput(MAX_OUTPUT, "Max"); 41 configOutput(MIN_OUTPUT, "Min"); 42 configOutput(NEGATE_OUTPUT, "Negative signal"); 43 } 44 45 void processAll(const ProcessArgs& args) override; 46 }; 47 48 } // namespace bogaudio