![]() |
quantumVERB
1.0.0
A FOSS convolution reverb plugin
|
Public Types | |
using | Ptr = std::unique_ptr< UIGraphBlock > |
Public Member Functions | |
UIGraphBlock (AudioProcessor &processor) | |
Constructs a UIGraphBlock object. More... | |
~UIGraphBlock () | |
Destroys a UIGraphBlock object. More... | |
void | paint (juce::Graphics &) override |
void | resized () override |
Manages the layout of UIGraphBlock when the block is resized. More... | |
virtual void | buttonClicked (juce::Button *) override |
virtual void | comboBoxChanged (juce::ComboBox *) override |
virtual void | sliderValueChanged (juce::Slider *) override |
AudioProcessor * | getProcessorInstance () |
Public Attributes | |
std::mutex | updatingGraph |
std::condition_variable | updateComplete |
Protected Member Functions | |
void | updateGraph (int updatePeriodMs) |
Updates IR graph. More... | |
void | notifyToUpdate () |
Signals thread to update graph. More... | |
Protected Attributes | |
AudioProcessor & | processor |
std::unique_ptr< std::thread > | graphThread |
std::atomic< bool > | stopGraphThread = false |
std::condition_variable | mustUpdate |
std::vector< juce::Path > | irChannelPlots |
Definition at line 20 of file UIGraphBlock.h.
reverb::UIGraphBlock::UIGraphBlock | ( | AudioProcessor & | processor | ) |
Constructs a UIGraphBlock object.
Creates a UIGraphBlock and each of its components. Contains the IR graph which is updated periodically and on notify in a separate thread.
Definition at line 22 of file UIGraphBlock.cpp.
reverb::UIGraphBlock::~UIGraphBlock | ( | ) |
Destroys a UIGraphBlock object.
Sends the stop signal to the graph thread
Definition at line 34 of file UIGraphBlock.cpp.
|
protected |
Signals thread to update graph.
Sends a notification to the worker thread through the mustUpdate condition variable.
Definition at line 199 of file UIGraphBlock.cpp.
|
override |
Manages the layout of UIGraphBlock when the block is resized.
This function defines all the relative positioning of the various UIGraphBlock elements.
Definition at line 69 of file UIGraphBlock.cpp.
|
protected |
Updates IR graph.
Worker thread to update IR when condition variable is notified. Ends once stopGraphThread is set to true and once notified through mustUpdate.
[in] | updatePeriodMs | Lazy update period to catch any missed parameter changes |
Definition at line 146 of file UIGraphBlock.cpp.