Converts a mono processor class into a multi-channel version by duplicating it and applying multichannel buffers across an array of instances. More...
#include <juce_ProcessorDuplicator.h>
Classes | |
struct | MonoProcessContext |
Public Member Functions | |
ProcessorDuplicator () | |
ProcessorDuplicator (const ProcessorDuplicator &)=default | |
ProcessorDuplicator (ProcessorDuplicator &&)=default | |
ProcessorDuplicator (StateType *stateToUse) | |
ProcessorDuplicator (typename StateType::Ptr stateToUse) | |
void | prepare (const ProcessSpec &spec) |
template<typename ProcessContext > | |
void | process (const ProcessContext &context) noexcept |
void | reset () noexcept |
Public Attributes | |
StateType::Ptr | state |
Private Attributes | |
juce::OwnedArray< MonoProcessorType > | processors |
Converts a mono processor class into a multi-channel version by duplicating it and applying multichannel buffers across an array of instances.
When the prepare method is called, it uses the specified number of channels to instantiate the appropriate number of instances, which it then uses in its process() method.
@tags{DSP}
|
inline |
|
inline |
|
inline |
|
default |
|
default |
|
inline |
References juce::OwnedArray< ObjectClass, TypeOfCriticalSectionToUse >::add(), juce::dsp::ProcessSpec::numChannels, juce::gl::p, juce::dsp::ProcessorDuplicator< MonoProcessorType, StateType >::processors, juce::OwnedArray< ObjectClass, TypeOfCriticalSectionToUse >::removeRange(), juce::OwnedArray< ObjectClass, TypeOfCriticalSectionToUse >::size(), and juce::dsp::ProcessorDuplicator< MonoProcessorType, StateType >::state.
|
inlinenoexcept |
|
inlinenoexcept |
|
private |
StateType::Ptr juce::dsp::ProcessorDuplicator< MonoProcessorType, StateType >::state |