BogaudioModules

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

Switch18.hpp (1382B)


      1 #pragma once
      2 
      3 #include "bogaudio.hpp"
      4 #include "matrix_base.hpp"
      5 
      6 extern Model* modelSwitch18;
      7 
      8 namespace bogaudio {
      9 
     10 struct Switch18 : SwitchMatrixModule {
     11 	enum ParamsIds {
     12 		MIX1_PARAM,
     13 		MIX2_PARAM,
     14 		MIX3_PARAM,
     15 		MIX4_PARAM,
     16 		MIX5_PARAM,
     17 		MIX6_PARAM,
     18 		MIX7_PARAM,
     19 		MIX8_PARAM,
     20 		NUM_PARAMS
     21 	};
     22 
     23 	enum InputsIds {
     24 		IN_INPUT,
     25 		NUM_INPUTS
     26 	};
     27 
     28 	enum OutputsIds {
     29 		OUT1_OUTPUT,
     30 		OUT2_OUTPUT,
     31 		OUT3_OUTPUT,
     32 		OUT4_OUTPUT,
     33 		OUT5_OUTPUT,
     34 		OUT6_OUTPUT,
     35 		OUT7_OUTPUT,
     36 		OUT8_OUTPUT,
     37 		NUM_OUTPUTS
     38 	};
     39 
     40 	Switch18() : SwitchMatrixModule(1, 8, MIX1_PARAM, IN_INPUT, OUT1_OUTPUT) {
     41 		config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS);
     42 		configSwitchParam(MIX1_PARAM, "Route 1");
     43 		configSwitchParam(MIX2_PARAM, "Route 2");
     44 		configSwitchParam(MIX3_PARAM, "Route 3");
     45 		configSwitchParam(MIX4_PARAM, "Route 4");
     46 		configSwitchParam(MIX5_PARAM, "Route 5");
     47 		configSwitchParam(MIX6_PARAM, "Route 6");
     48 		configSwitchParam(MIX7_PARAM, "Route 7");
     49 		configSwitchParam(MIX8_PARAM, "Route 8");
     50 
     51 		configInput(IN_INPUT, "Signal");
     52 
     53 		configOutput(OUT1_OUTPUT, "Signal 1");
     54 		configOutput(OUT2_OUTPUT, "Signal 2");
     55 		configOutput(OUT3_OUTPUT, "Signal 3");
     56 		configOutput(OUT4_OUTPUT, "Signal 4");
     57 		configOutput(OUT5_OUTPUT, "Signal 5");
     58 		configOutput(OUT6_OUTPUT, "Signal 6");
     59 		configOutput(OUT7_OUTPUT, "Signal 7");
     60 		configOutput(OUT8_OUTPUT, "Signal 8");
     61 	}
     62 };
     63 
     64 } // namespace bogaudio