You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
680B

  1. #pragma once
  2. #include "bogaudio.hpp"
  3. #include "dsp/signal.hpp"
  4. using namespace bogaudio::dsp;
  5. extern Model* modelUMix;
  6. namespace bogaudio {
  7. struct UMix : Module {
  8. enum ParamsIds {
  9. LEVEL_PARAM,
  10. NUM_PARAMS
  11. };
  12. enum InputsIds {
  13. IN1_INPUT,
  14. IN2_INPUT,
  15. IN3_INPUT,
  16. IN4_INPUT,
  17. IN5_INPUT,
  18. IN6_INPUT,
  19. IN7_INPUT,
  20. IN8_INPUT,
  21. NUM_INPUTS
  22. };
  23. enum OutputsIds {
  24. OUT_OUTPUT,
  25. NUM_OUTPUTS
  26. };
  27. enum LightsIds {
  28. NUM_LIGHTS
  29. };
  30. bool _sum = true;
  31. Saturator _saturator;
  32. UMix() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {
  33. }
  34. json_t* toJson() override;
  35. void fromJson(json_t* root) override;
  36. void step() override;
  37. };
  38. } // namespace bogaudio