commit 2a3c438b220376bc39757f557c28a33a4f8ef8c8 parent 0537e574cd226214baf1e615251149d071ed5466 Author: Matt Demanett <matt@demanett.net> Date: Sun, 8 Sep 2019 21:39:25 -0400 Poly: MULT. Diffstat:
M | src/Mult.cpp | | | 24 | ++++++++++++++++-------- |
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git a/src/Mult.cpp b/src/Mult.cpp @@ -2,17 +2,25 @@ #include "Mult.hpp" void Mult::process(const ProcessArgs& args) { - float out = inputs[INA_INPUT].getVoltageSum(); - outputs[OUTA1_OUTPUT].setVoltage(out); - outputs[OUTA2_OUTPUT].setVoltage(out); - outputs[OUTA3_OUTPUT].setVoltage(out); + int n = inputs[INA_INPUT].getChannels(); + float* out = inputs[INA_INPUT].getVoltages(); + outputs[OUTA1_OUTPUT].setChannels(n); + outputs[OUTA1_OUTPUT].writeVoltages(out); + outputs[OUTA2_OUTPUT].setChannels(n); + outputs[OUTA2_OUTPUT].writeVoltages(out); + outputs[OUTA3_OUTPUT].setChannels(n); + outputs[OUTA3_OUTPUT].writeVoltages(out); if (inputs[INB_INPUT].isConnected()) { - out = inputs[INB_INPUT].getVoltageSum(); + n = inputs[INB_INPUT].getChannels(); + out = inputs[INB_INPUT].getVoltages(); } - outputs[OUTB1_OUTPUT].setVoltage(out); - outputs[OUTB2_OUTPUT].setVoltage(out); - outputs[OUTB3_OUTPUT].setVoltage(out); + outputs[OUTB1_OUTPUT].setChannels(n); + outputs[OUTB1_OUTPUT].writeVoltages(out); + outputs[OUTB2_OUTPUT].setChannels(n); + outputs[OUTB2_OUTPUT].writeVoltages(out); + outputs[OUTB3_OUTPUT].setChannels(n); + outputs[OUTB3_OUTPUT].writeVoltages(out); } struct MultWidget : ModuleWidget {