BogaudioModules

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

Matrix18.cpp (2554B)


      1 
      2 #include "Matrix18.hpp"
      3 
      4 struct Matrix18Widget : KnobMatrixModuleWidget {
      5 	static constexpr int hp = 6;
      6 
      7 	Matrix18Widget(Matrix18* module) {
      8 		setModule(module);
      9 		box.size = Vec(RACK_GRID_WIDTH * hp, RACK_GRID_HEIGHT);
     10 		setPanel(box.size, "Matrix18");
     11 		createScrews();
     12 
     13 		// generated by svg_widgets.rb
     14 		auto mix1ParamPosition = Vec(14.7, 32.2);
     15 		auto mix2ParamPosition = Vec(14.7, 69.2);
     16 		auto mix3ParamPosition = Vec(14.7, 106.2);
     17 		auto mix4ParamPosition = Vec(14.7, 143.2);
     18 		auto mix5ParamPosition = Vec(14.7, 180.2);
     19 		auto mix6ParamPosition = Vec(14.7, 217.2);
     20 		auto mix7ParamPosition = Vec(14.7, 254.2);
     21 		auto mix8ParamPosition = Vec(14.7, 291.2);
     22 
     23 		auto inInputPosition = Vec(53.5, 321.0);
     24 
     25 		auto out1OutputPosition = Vec(53.5, 30.0);
     26 		auto out2OutputPosition = Vec(53.5, 67.0);
     27 		auto out3OutputPosition = Vec(53.5, 104.0);
     28 		auto out4OutputPosition = Vec(53.5, 141.0);
     29 		auto out5OutputPosition = Vec(53.5, 178.0);
     30 		auto out6OutputPosition = Vec(53.5, 215.0);
     31 		auto out7OutputPosition = Vec(53.5, 252.0);
     32 		auto out8OutputPosition = Vec(53.5, 289.0);
     33 		// end generated by svg_widgets.rb
     34 
     35 		createKnob(mix1ParamPosition, module, Matrix18::MIX1_PARAM);
     36 		createKnob(mix2ParamPosition, module, Matrix18::MIX2_PARAM);
     37 		createKnob(mix3ParamPosition, module, Matrix18::MIX3_PARAM);
     38 		createKnob(mix4ParamPosition, module, Matrix18::MIX4_PARAM);
     39 		createKnob(mix5ParamPosition, module, Matrix18::MIX5_PARAM);
     40 		createKnob(mix6ParamPosition, module, Matrix18::MIX6_PARAM);
     41 		createKnob(mix7ParamPosition, module, Matrix18::MIX7_PARAM);
     42 		createKnob(mix8ParamPosition, module, Matrix18::MIX8_PARAM);
     43 
     44 		addInput(createInput<Port24>(inInputPosition, module, Matrix18::IN_INPUT));
     45 
     46 		addOutput(createOutput<Port24>(out1OutputPosition, module, Matrix18::OUT1_OUTPUT));
     47 		addOutput(createOutput<Port24>(out2OutputPosition, module, Matrix18::OUT2_OUTPUT));
     48 		addOutput(createOutput<Port24>(out3OutputPosition, module, Matrix18::OUT3_OUTPUT));
     49 		addOutput(createOutput<Port24>(out4OutputPosition, module, Matrix18::OUT4_OUTPUT));
     50 		addOutput(createOutput<Port24>(out5OutputPosition, module, Matrix18::OUT5_OUTPUT));
     51 		addOutput(createOutput<Port24>(out6OutputPosition, module, Matrix18::OUT6_OUTPUT));
     52 		addOutput(createOutput<Port24>(out7OutputPosition, module, Matrix18::OUT7_OUTPUT));
     53 		addOutput(createOutput<Port24>(out8OutputPosition, module, Matrix18::OUT8_OUTPUT));
     54 	}
     55 };
     56 
     57 Model* modelMatrix18 = createModel<Matrix18, Matrix18Widget>("Bogaudio-Matrix18", "MATRIX18", "8-way signal router with attenuverters", "Switch", "Polyphonic");