CMLSProcessorChain.h 772 B

1234567891011121314151617181920212223242526272829303132
  1. /*
  2. ==============================================================================
  3. CMLSProcessorChain.h
  4. Created: 12 May 2025 10:05:40am
  5. Author: Luigi
  6. ==============================================================================
  7. */
  8. #pragma once
  9. #include <JuceHeader.h>
  10. class CMLSProcessorChain
  11. {
  12. public:
  13. CMLSProcessorChain();
  14. ~CMLSProcessorChain();
  15. void reset();
  16. void prepare(const juce::dsp::ProcessSpec&);
  17. void process(const juce::dsp::ProcessContextReplacing<float>&);
  18. int pushProcessor(juce::dsp::ProcessorBase& processor);
  19. void muteProcessrInSlot(int slot);
  20. void unmuteProcessorInSlot(int slot);
  21. void swapPlaces(int slot1, int slot2);
  22. private:
  23. std::vector<bool> slots;
  24. std::vector<juce::dsp::ProcessorBase*> chain;
  25. };