![]() |
quantumVERB
1.0.0
A FOSS convolution reverb plugin
|
#include <Task.h>
Public Types | |
using | Ptr = std::shared_ptr< Task > |
Public Member Functions | |
Task (juce::AudioProcessor *processor) | |
virtual void | updateParams (const juce::AudioProcessorValueTreeState ¶ms, const juce::String &blockId)=0 |
Updates parameters from processor parameter tree. More... | |
virtual AudioBlock | exec (AudioBlock)=0 |
Apply block logic to input buffer. | |
virtual bool | needsToRun () const |
Tells caller whether block must be run for current block. More... | |
virtual void | updateSampleRate (double sr) |
Update sample rate for task block. More... | |
Public Attributes | |
double | sampleRate |
Protected Member Functions | |
float | getParam (const juce::AudioProcessorValueTreeState ¶ms, const juce::String &blockId) const |
Internal method used to get (and check) a parameter's value. | |
Protected Attributes | |
juce::AudioProcessor * | processor |
bool | mustExec = true |
Abstract task object used to represent various processing elements
|
inlinevirtual |
Tells caller whether block must be run for current block.
May be overriden by IR blocks since these are executed sparingly.
Reimplemented in reverb::Equalizer, reverb::MainPipeline, and reverb::IRPipeline.
|
pure virtual |
Updates parameters from processor parameter tree.
[in] | params | Processor parameter tree |
[in] | blockId | ID of block whose paramters should be checked |
Implemented in reverb::IRPipeline, reverb::Filter, reverb::MainPipeline, reverb::Equalizer, reverb::TimeStretch, reverb::Convolution, reverb::PreDelay, reverb::Mixer, and reverb::Gain.
|
inlinevirtual |
Update sample rate for task block.
Compares new sample rate with previous value. If different, sets mustExec to true in order to re-run task for new sample rate. Store new sample rate value in object.
[in] | sr | Sample rate |
Reimplemented in reverb::IRPipeline, reverb::Equalizer, and reverb::MainPipeline.