Browse Source

Refactor Mutes

tags/v1.0.1
Andrew Belt 6 years ago
parent
commit
d8e3b00b5a
1 changed files with 12 additions and 10 deletions
  1. +12
    -10
      src/Mutes.cpp

+ 12
- 10
src/Mutes.cpp View File

@@ -32,8 +32,11 @@ struct Mutes : Module {
} }


void process(const ProcessArgs &args) override { void process(const ProcessArgs &args) override {
const float zero[16] = {};
float out[16] = {}; float out[16] = {};
int channels = 1; int channels = 1;

// Iterate rows
for (int i = 0; i < 10; i++) { for (int i = 0; i < 10; i++) {
// Process trigger // Process trigger
if (muteTrigger[i].process(params[MUTE_PARAM + i].getValue() > 0.f)) if (muteTrigger[i].process(params[MUTE_PARAM + i].getValue() > 0.f))
@@ -46,17 +49,14 @@ struct Mutes : Module {
channels = inputs[IN_INPUT + i].getChannels(); channels = inputs[IN_INPUT + i].getChannels();
} }


// Set output and light
outputs[OUT_OUTPUT + i].setChannels(channels);
if (state[i]) {
outputs[OUT_OUTPUT + i].setVoltages(out);
lights[MUTE_LIGHT + i].setBrightness(0.9f);
}
else {
for (int c = 0; c < channels; c++)
outputs[OUT_OUTPUT + i].setVoltage(0.f);
lights[MUTE_LIGHT + i].setBrightness(0.f);
// Set output
if (outputs[OUT_OUTPUT + i].isConnected()) {
outputs[OUT_OUTPUT + i].setChannels(channels);
outputs[OUT_OUTPUT + i].setVoltages(state[i] ? out : zero);
} }

// Set light
lights[MUTE_LIGHT + i].setBrightness(state[i] ? 0.9f : 0.f);
} }
} }


@@ -73,6 +73,7 @@ struct Mutes : Module {


json_t *dataToJson() override { json_t *dataToJson() override {
json_t *rootJ = json_object(); json_t *rootJ = json_object();

// states // states
json_t *statesJ = json_array(); json_t *statesJ = json_array();
for (int i = 0; i < 10; i++) { for (int i = 0; i < 10; i++) {
@@ -80,6 +81,7 @@ struct Mutes : Module {
json_array_append_new(statesJ, stateJ); json_array_append_new(statesJ, stateJ);
} }
json_object_set_new(rootJ, "states", statesJ); json_object_set_new(rootJ, "states", statesJ);

return rootJ; return rootJ;
} }




Loading…
Cancel
Save