quantumVERB  1.0.0
A FOSS convolution reverb plugin
Mixer.h
1 /*
2  ==============================================================================
3 
4  Mixer.h
5 
6  ==============================================================================
7 */
8 
9 #pragma once
10 
11 #include "Task.h"
12 
13 namespace reverb
14 {
15 
16  //==============================================================================
17  /**
18  * Class used to mix dry sound with wet sound after convolution.
19  */
20  class Mixer : public Task
21  {
22  public:
23  //==============================================================================
24  Mixer(juce::AudioProcessor * processor);
25  ~Mixer() = default;
26 
27  //==============================================================================
28  using Ptr = std::shared_ptr<Mixer>;
29 
30  //==============================================================================
31  virtual void updateParams(const juce::AudioProcessorValueTreeState& params,
32  const juce::String& blockId) override;
33 
34  virtual AudioBlock exec(AudioBlock wetAudio) override;
35 
36  //==============================================================================
37  void loadDry(AudioBlock audio);
38 
39  protected:
40  //==============================================================================
41  juce::AudioSampleBuffer dryAudioCopy;
42 
43 
44  //==============================================================================
45  float wetRatio = 0.0f;
46  };
47 
48 }
Mixer(juce::AudioProcessor *processor)
Constructor. Creates a Mixer object.
Definition: Mixer.cpp:26
float getParam(const juce::AudioProcessorValueTreeState &params, const juce::String &blockId) const
Internal method used to get (and check) a parameter&#39;s value.
Definition: Task.h:111
void loadDry(AudioBlock audio)
loads the dry signal into the dryAudio variable
Definition: Mixer.cpp:75
virtual AudioBlock exec(AudioBlock wetAudio) override
Mix the wet and dry sound according to a proportionality parameter.
Definition: Mixer.cpp:58
virtual void updateParams(const juce::AudioProcessorValueTreeState &params, const juce::String &blockId) override
Updates parameters from processor parameter tree.
Definition: Mixer.cpp:37