OpenWareLaboratory
|
Delay line signal processor that crossfades to ensure smooth changes in delay time. More...
Public Member Functions | |
void | clear () |
CrossFadingDelayProcessor (CrossFadingCircularFloatBuffer *ringbuffer) | |
float | getDelay () |
virtual float | process (float input) |
void | process (FloatArray input, FloatArray output) |
void | setDelay (float samples) |
Static Public Member Functions | |
static CrossFadingDelayProcessor * | create (size_t delay_len, size_t buffer_len) |
static void | destroy (CrossFadingDelayProcessor *obj) |
Protected Attributes | |
float | delay = 0 |
CrossFadingCircularFloatBuffer * | ringbuffer |
Delay line signal processor that crossfades to ensure smooth changes in delay time.
Cross fade time in samples is equal to one block size. Delay time should be updated at block rate, before calling the block-based process() method. Sample based processing should not be used with this class.
Definition at line 137 of file DelayProcessor.h.
|
inline |
Definition at line 142 of file DelayProcessor.h.
Referenced by create().
|
inline |
Definition at line 150 of file DelayProcessor.h.
References CircularBuffer< DataType, IndexType >::clear(), and ringbuffer.
|
inlinestatic |
Definition at line 156 of file DelayProcessor.h.
References CrossFadingCircularBuffer< T >::create(), and CrossFadingDelayProcessor().
|
inlinestatic |
Definition at line 159 of file DelayProcessor.h.
References CrossFadingCircularBuffer< T >::destroy(), and ringbuffer.
|
inline |
Definition at line 144 of file DelayProcessor.h.
References delay.
|
inlinevirtualinherited |
Reimplemented in SmoothingFilter, EnvelopeFollower, DcBlockingFilter, StateVariableFilter, Window, VoiceAllocatorSignalProcessor< Allocator, SynthVoice, VOICES >, DownSampler, UpSampler, FirFilter, Envelope, FastFractionalDelayProcessor, FractionalDelayProcessor< im >, DelayProcessor, BiquadFilter, SimpleMovingAverage, and ExponentialMovingAverage.
Definition at line 13 of file SignalProcessor.h.
Referenced by StereoFeedbackProcessor::process(), PingPongFeedbackProcessor::process(), and SignalProcessor::process().
|
inlinevirtual |
Reimplemented from SignalProcessor.
Definition at line 153 of file DelayProcessor.h.
References CrossFadingCircularBuffer< T >::delay(), delay, SimpleArray< T >::getSize(), and ringbuffer.
|
inline |
Definition at line 147 of file DelayProcessor.h.
References delay.
|
protected |
Definition at line 140 of file DelayProcessor.h.
Referenced by getDelay(), process(), and setDelay().
|
protected |
Definition at line 139 of file DelayProcessor.h.