OpenWareLaboratory
|
Public Member Functions | |
void | clear () |
void | delay (float *in, float *out, size_t len, float beginDelay, float endDelay) |
Write to buffer and read with a delay that ramps up or down from. More... | |
void | delay (float *in, float *out, size_t len, float readDelay) |
Write to buffer and read with a fractional delay. More... | |
void | delay (float *in, float *out, size_t len, int delay_samples) |
Write to buffer and read with a delay. More... | |
void | delay (float *out, size_t len, float beginDelay, float endDelay) |
Read with a delay that ramps up or down from. More... | |
void | delay (float *out, size_t len, float delay) |
Read with a fractional delay. More... | |
size_t | getContiguousReadCapacity () const |
size_t | getContiguousWriteCapacity () const |
float * | getData () |
size_t | getDelay () const |
Get the read index expressed as delay behind the write index. More... | |
float | getFractionalDelay () |
size_t | getReadCapacity () const |
float * | getReadHead () |
size_t | getReadIndex () |
size_t | getSize () const |
size_t | getWriteCapacity () const |
float * | getWriteHead () |
size_t | getWriteIndex () |
InterpolatingCircularFloatBuffer () | |
InterpolatingCircularFloatBuffer (float *data, size_t size) | |
bool | isEmpty () const |
bool | isFull () const |
void | moveReadHead (int32_t samples) |
void | moveWriteHead (int32_t samples) |
void | overdub (float c) |
void | overdubAt (size_t index, float value) |
float | read () |
void | read (float *dst, size_t len) |
void | read (float *out, size_t len, float startpos, float rate) |
Interpolated read at fractional rate. More... | |
float | readAt (float index) |
Interpolated read at sub-sample index. More... | |
float | readAt (float index) |
float | readAt (float index) |
float | readAt (float index) |
float | readAt (float index) |
float | readAt (float index) |
float | readAt (float index) |
float | readAt (size_t index) |
void | reset () |
void | setAll (const float value) |
void | setData (float *data, size_t len) |
void | setDelay (int samples) |
Set the read index. More... | |
void | setReadIndex (size_t pos) |
void | setWriteIndex (size_t pos) |
void | skipUntilLast (char c) |
void | write (float *source, size_t len) |
void | write (float c) |
void | writeAt (float index, float value) |
Interpolated write at sub-sample index. More... | |
void | writeAt (size_t index, float value) |
Static Public Member Functions | |
static InterpolatingCircularFloatBuffer< im > * | create (size_t len) |
static void | destroy (CircularBuffer< float > *obj) |
static void | destroy (InterpolatingCircularFloatBuffer< im > *obj) |
Protected Attributes | |
float * | data |
float | delay_samples = 0 |
bool | empty |
size_t | readpos |
size_t | size |
size_t | writepos |
Definition at line 9 of file InterpolatingCircularBuffer.h.
|
inline |
Definition at line 13 of file InterpolatingCircularBuffer.h.
|
inline |
Definition at line 14 of file InterpolatingCircularBuffer.h.
|
inlineinherited |
Definition at line 220 of file CircularBuffer.h.
|
inlinestatic |
Definition at line 98 of file InterpolatingCircularBuffer.h.
References CircularBuffer< DataType, IndexType >::clear().
|
inline |
Write to buffer and read with a delay that ramps up or down from.
beginDelay | to |
endDelay |
Definition at line 93 of file InterpolatingCircularBuffer.h.
References InterpolatingCircularFloatBuffer< im >::delay(), and CircularBuffer< float >::write().
|
inline |
Write to buffer and read with a fractional delay.
Definition at line 66 of file InterpolatingCircularBuffer.h.
References InterpolatingCircularFloatBuffer< im >::delay(), and CircularBuffer< float >::write().
|
inlineinherited |
Write to buffer and read with a delay.
Definition at line 182 of file CircularBuffer.h.
|
inline |
Read with a delay that ramps up or down from.
beginDelay | to |
endDelay |
Definition at line 75 of file InterpolatingCircularBuffer.h.
References InterpolatingCircularFloatBuffer< im >::delay_samples, InterpolatingCircularFloatBuffer< im >::readAt(), CircularBuffer< float >::size, and CircularBuffer< float >::writepos.
|
inline |
Read with a fractional delay.
Definition at line 52 of file InterpolatingCircularBuffer.h.
References InterpolatingCircularFloatBuffer< im >::delay_samples, InterpolatingCircularFloatBuffer< im >::readAt(), CircularBuffer< float >::size, and CircularBuffer< float >::writepos.
Referenced by InterpolatingCircularFloatBuffer< im >::delay().
|
inlinestaticinherited |
Definition at line 230 of file CircularBuffer.h.
|
inlinestatic |
Definition at line 104 of file InterpolatingCircularBuffer.h.
References CircularBuffer< DataType, IndexType >::data.
|
inlineinherited |
Definition at line 203 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 196 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 32 of file CircularBuffer.h.
|
inlineinherited |
Get the read index expressed as delay behind the write index.
Definition at line 175 of file CircularBuffer.h.
|
inline |
Definition at line 45 of file InterpolatingCircularBuffer.h.
References InterpolatingCircularFloatBuffer< im >::delay_samples.
|
inlineinherited |
Definition at line 188 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 155 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 147 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 28 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 192 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 137 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 129 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 36 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 40 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 159 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 141 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 71 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 78 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 82 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 91 of file CircularBuffer.h.
|
inline |
Interpolated read at fractional rate.
rate | read speed, in samples/sample |
Definition at line 35 of file InterpolatingCircularBuffer.h.
References CircularBuffer< float >::empty, InterpolatingCircularFloatBuffer< im >::readAt(), CircularBuffer< float >::readpos, CircularBuffer< float >::size, and CircularBuffer< float >::writepos.
float InterpolatingCircularFloatBuffer< im >::readAt | ( | float | index | ) |
Interpolated read at sub-sample index.
Referenced by InterpolatingCircularFloatBuffer< im >::delay(), InterpolatingWavetableOscillator< im >::getSample(), and InterpolatingCircularFloatBuffer< im >::read().
float InterpolatingCircularFloatBuffer< NO_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 111 of file InterpolatingCircularBuffer.h.
References CircularBuffer< float >::readAt().
float InterpolatingCircularFloatBuffer< COSINE_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 136 of file InterpolatingCircularBuffer.h.
References Interpolator::cosine(), and CircularBuffer< float >::readAt().
float InterpolatingCircularFloatBuffer< CUBIC_3P_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 145 of file InterpolatingCircularBuffer.h.
References Interpolator::cubic(), and CircularBuffer< float >::readAt().
float InterpolatingCircularFloatBuffer< CUBIC_4P_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 154 of file InterpolatingCircularBuffer.h.
References Interpolator::cubic(), and CircularBuffer< float >::readAt().
float InterpolatingCircularFloatBuffer< CUBIC_4P_SMOOTH_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 164 of file InterpolatingCircularBuffer.h.
References Interpolator::cubicSmooth(), and CircularBuffer< float >::readAt().
float InterpolatingCircularFloatBuffer< HERMITE_INTERPOLATION >::readAt | ( | float | index | ) |
Definition at line 174 of file InterpolatingCircularBuffer.h.
References Interpolator::hermite(), and CircularBuffer< float >::readAt().
|
inlineinherited |
Definition at line 106 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 215 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 210 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 23 of file CircularBuffer.h.
|
inlineinherited |
Set the read index.
samples | behind the write index. |
Definition at line 168 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 151 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 133 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 110 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 52 of file CircularBuffer.h.
|
inlineinherited |
Definition at line 44 of file CircularBuffer.h.
void InterpolatingCircularFloatBuffer< im >::writeAt | ( | float | index, |
float | value | ||
) |
Interpolated write at sub-sample index.
Inserts a value linearly interpolated at a fractional index.
|
inlineinherited |
Definition at line 67 of file CircularBuffer.h.
|
protectedinherited |
Definition at line 14 of file CircularBuffer.h.
|
protected |
Definition at line 11 of file InterpolatingCircularBuffer.h.
Referenced by InterpolatingCircularFloatBuffer< im >::delay(), and InterpolatingCircularFloatBuffer< im >::getFractionalDelay().
|
protectedinherited |
Definition at line 18 of file CircularBuffer.h.
|
protectedinherited |
Definition at line 17 of file CircularBuffer.h.
|
protectedinherited |
Definition at line 15 of file CircularBuffer.h.
|
protectedinherited |
Definition at line 16 of file CircularBuffer.h.