|
OpenWareLaboratory
|


Public Member Functions | |
| void | copyCoefficients (FloatArray newCoefficients) |
| Copies coefficient values from an array. More... | |
| void | copyState (FloatArray newState) |
| Copies state values from an array. More... | |
| FloatArray | getCoefficients () |
| BiquadFilter * | getFilter (size_t channel) |
| FilterStage | getFilterStage (size_t stage) |
| float | getSampleRate () |
| size_t | getStages () |
| FloatArray | getState () |
| void | process (AudioBuffer &input, AudioBuffer &output) |
| void | process (float *input, float *output, size_t size) |
| float | process (float input) |
| void | process (FloatArray in) |
| void | process (FloatArray in, FloatArray out) |
| void | processAllPass (FloatArray in, FloatArray fc, float q, FloatArray out) |
| void | processBandPass (FloatArray in, FloatArray fc, float q, FloatArray out) |
| void | processHighPass (FloatArray in, FloatArray fc, float q, FloatArray out) |
| void | processLowPass (FloatArray in, FloatArray fc, float q, FloatArray out) |
| void | setAllPass (float fc, float q) |
| void | setBandPass (float fc, float q) |
| void | setCoefficients (FloatArray newCoefficients) |
| Sets coefficients to point to a different set of values. More... | |
| void | setHighPass (float fc, float q) |
| void | setHighShelf (float fc, float gain) |
| Configure a high shelf filter with variable gain. More... | |
| void | setLowPass (float fc, float q) |
| void | setLowShelf (float fc, float gain) |
| Configure a low shelf filter with variable gain. More... | |
| void | setNotch (float fc, float q) |
| void | setPeak (float fc, float q, float gain) |
| Configure a peaking filter with resonance and variable gain. More... | |
| void | setSampleRate (float sr) |
| void | setStages (size_t newStages) |
| void | setState (FloatArray newState) |
| Sets state to point to a different set of values. More... | |
| StereoBiquadFilter (float sr, float *coefs, float *states, size_t stages, BiquadFilter *filters) | |
Static Public Member Functions | |
| static MultiBiquadFilter * | create (float sr, size_t channels, size_t stages=1) |
| static StereoBiquadFilter * | create (float sr, size_t stages=1) |
| static void | destroy (BiquadFilter *filter) |
| static void | destroy (MultiBiquadFilter *filter) |
| static void | destroy (StereoBiquadFilter *filter) |
| static size_t | getCoefficientsPerStage () |
Protected Member Functions | |
| void | copyCoefficients () |
| void | init () |
Protected Attributes | |
| float * | coefficients |
| size_t | stages |
| float * | state |
Definition at line 473 of file BiquadFilter.h.
|
inline |
Definition at line 475 of file BiquadFilter.h.
Referenced by create().
|
inlineprotectedinherited |
Definition at line 201 of file BiquadFilter.h.
References BIQUAD_COEFFICIENTS_PER_STAGE, BiquadFilter::coefficients, and BiquadFilter::stages.
Referenced by BiquadFilter::copyCoefficients(), UpSampler::create(), DownSampler::create(), Resampler::init(), BiquadFilter::setAllPass(), BiquadFilter::setBandPass(), BiquadFilter::setHighPass(), BiquadFilter::setHighShelf(), BiquadFilter::setLowPass(), BiquadFilter::setLowShelf(), BiquadFilter::setNotch(), and BiquadFilter::setPeak().
|
inlineinherited |
Copies coefficient values from an array.
Definition at line 411 of file BiquadFilter.h.
References ASSERT, BIQUAD_COEFFICIENTS_PER_STAGE, BiquadFilter::copyCoefficients(), FilterStage::copyCoefficients(), BiquadFilter::getFilterStage(), and SimpleArray< T >::getSize().
|
inlineinherited |
Copies state values from an array.
Definition at line 263 of file BiquadFilter.h.
References ASSERT, BIQUAD_STATE_VARIABLES_PER_STAGE, SimpleArray< T >::copyFrom(), SimpleArray< T >::getSize(), BiquadFilter::getState(), and BiquadFilter::stages.
|
inlinestaticinherited |
Definition at line 437 of file BiquadFilter.h.
References BIQUAD_COEFFICIENTS_PER_STAGE, BIQUAD_STATE_VARIABLES_PER_STAGE, BiquadFilter::coefficients, MultiBiquadFilter::MultiBiquadFilter(), BiquadFilter::setCoefficients(), BiquadFilter::setSampleRate(), BiquadFilter::setStages(), BiquadFilter::setState(), and BiquadFilter::stages.
|
inlinestatic |
Definition at line 477 of file BiquadFilter.h.
References BIQUAD_COEFFICIENTS_PER_STAGE, BIQUAD_STATE_VARIABLES_PER_STAGE, BiquadFilter::coefficients, BiquadFilter::setCoefficients(), BiquadFilter::setSampleRate(), BiquadFilter::setStages(), BiquadFilter::setState(), BiquadFilter::stages, and StereoBiquadFilter().
|
inlinestaticinherited |
Definition at line 421 of file BiquadFilter.h.
References BiquadFilter::coefficients, and BiquadFilter::state.
Referenced by DownSampler::destroy(), UpSampler::destroy(), Resampler::~Resampler(), and ZeroCrossingPitchDetector::~ZeroCrossingPitchDetector().
|
inlinestaticinherited |
Definition at line 452 of file BiquadFilter.h.
References BiquadFilter::coefficients, and BiquadFilter::state.
Referenced by destroy().
|
inlinestatic |
Definition at line 493 of file BiquadFilter.h.
References MultiBiquadFilter::destroy().
|
inlineinherited |
Definition at line 244 of file BiquadFilter.h.
References BIQUAD_COEFFICIENTS_PER_STAGE, BiquadFilter::coefficients, and BiquadFilter::stages.
|
inlinestaticinherited |
Definition at line 240 of file BiquadFilter.h.
References BIQUAD_COEFFICIENTS_PER_STAGE.
|
inlineinherited |
Definition at line 458 of file BiquadFilter.h.
|
inlineinherited |
Definition at line 268 of file BiquadFilter.h.
References ASSERT, BIQUAD_COEFFICIENTS_PER_STAGE, BIQUAD_STATE_VARIABLES_PER_STAGE, BiquadFilter::coefficients, BiquadFilter::stages, and BiquadFilter::state.
Referenced by BiquadFilter::copyCoefficients(), and BiquadFilter::process().
|
inlineinherited |
Definition at line 228 of file BiquadFilter.h.
References M_PI.
|
inlineinherited |
Definition at line 232 of file BiquadFilter.h.
References BiquadFilter::stages.
|
inlineinherited |
Definition at line 248 of file BiquadFilter.h.
References BIQUAD_STATE_VARIABLES_PER_STAGE, BiquadFilter::stages, and BiquadFilter::state.
Referenced by BiquadFilter::copyState().
|
inlineprotectedinherited |
Definition at line 205 of file BiquadFilter.h.
References BIQUAD_STATE_VARIABLES_PER_STAGE, BiquadFilter::coefficients, BiquadFilter::stages, and BiquadFilter::state.
Referenced by BiquadFilter::BiquadFilter(), and BiquadFilter::setCoefficients().
|
inlinevirtualinherited |
Implements MultiSignalProcessor.
Definition at line 465 of file BiquadFilter.h.
References AudioBuffer::getChannels(), AudioBuffer::getSamples(), min, and BiquadFilter::process().
|
inlineinherited |
Definition at line 276 of file BiquadFilter.h.
References BIQUAD_STATE_VARIABLES_PER_STAGE, FilterStage::getCoefficients(), BiquadFilter::getFilterStage(), BiquadFilter::stages, and BiquadFilter::state.
Referenced by Resampler::downsample(), MultiBiquadFilter::process(), UpSampler::process(), DownSampler::process(), BiquadFilter::process(), ZeroCrossingPitchDetector::process(), BiquadFilter::processAllPass(), BiquadFilter::processBandPass(), BiquadFilter::processHighPass(), BiquadFilter::processLowPass(), and Resampler::upsample().
|
inlinevirtualinherited |
Reimplemented from SignalProcessor.
Definition at line 341 of file BiquadFilter.h.
References BiquadFilter::process().
|
inlineinherited |
Definition at line 303 of file BiquadFilter.h.
References SimpleArray< T >::getSize(), and BiquadFilter::process().
|
inlinevirtualinherited |
Reimplemented from SignalProcessor.
Definition at line 307 of file BiquadFilter.h.
References ASSERT, SimpleArray< T >::getSize(), and BiquadFilter::process().
|
inlineinherited |
Definition at line 333 of file BiquadFilter.h.
References SimpleArray< T >::getSize(), BiquadFilter::process(), and BiquadFilter::setAllPass().
|
inlineinherited |
Definition at line 326 of file BiquadFilter.h.
References SimpleArray< T >::getSize(), BiquadFilter::process(), and BiquadFilter::setBandPass().
|
inlineinherited |
Definition at line 319 of file BiquadFilter.h.
References SimpleArray< T >::getSize(), BiquadFilter::process(), and BiquadFilter::setHighPass().
|
inlineinherited |
Definition at line 312 of file BiquadFilter.h.
References SimpleArray< T >::getSize(), BiquadFilter::process(), and BiquadFilter::setLowPass().
|
inlineinherited |
Definition at line 362 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setAllPass().
Referenced by BiquadFilter::processAllPass().
|
inlineinherited |
Definition at line 357 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setBandPass().
Referenced by BiquadFilter::processBandPass().
|
inlineinherited |
Sets coefficients to point to a different set of values.
Definition at line 402 of file BiquadFilter.h.
References ASSERT, BIQUAD_COEFFICIENTS_PER_STAGE, BiquadFilter::coefficients, SimpleArray< T >::getData(), SimpleArray< T >::getSize(), BiquadFilter::init(), and BiquadFilter::stages.
Referenced by MultiBiquadFilter::create(), and create().
|
inlineinherited |
Definition at line 352 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setHighPass().
Referenced by BiquadFilter::processHighPass(), and ZeroCrossingPitchDetector::setHighPassCutoff().
|
inlineinherited |
Configure a high shelf filter with variable gain.
| gain | in dB |
Definition at line 394 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setHighShelf().
|
inlineinherited |
Definition at line 347 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setLowPass().
Referenced by BiquadFilter::processLowPass(), and ZeroCrossingPitchDetector::setLowPassCutoff().
|
inlineinherited |
Configure a low shelf filter with variable gain.
| gain | in dB |
Definition at line 385 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setLowShelf().
|
inlineinherited |
Definition at line 367 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setNotch().
|
inlineinherited |
Configure a peaking filter with resonance and variable gain.
| gain | in dB |
Definition at line 376 of file BiquadFilter.h.
References BiquadFilter::coefficients, BiquadFilter::copyCoefficients(), and FilterStage::setPeak().
|
inlineinherited |
Definition at line 224 of file BiquadFilter.h.
References M_PI.
Referenced by MultiBiquadFilter::create(), and create().
|
inlineinherited |
Definition at line 236 of file BiquadFilter.h.
References BiquadFilter::stages.
Referenced by MultiBiquadFilter::create(), and create().
|
inlineinherited |
Sets state to point to a different set of values.
Definition at line 255 of file BiquadFilter.h.
References ASSERT, BIQUAD_STATE_VARIABLES_PER_STAGE, SimpleArray< T >::getData(), SimpleArray< T >::getSize(), BiquadFilter::stages, and BiquadFilter::state.
Referenced by MultiBiquadFilter::create(), and create().
|
protectedinherited |
Definition at line 189 of file BiquadFilter.h.
Referenced by BiquadFilter::copyCoefficients(), MultiBiquadFilter::create(), create(), BiquadFilter::destroy(), MultiBiquadFilter::destroy(), BiquadFilter::getCoefficients(), BiquadFilter::getFilterStage(), BiquadFilter::init(), BiquadFilter::setAllPass(), BiquadFilter::setBandPass(), BiquadFilter::setCoefficients(), BiquadFilter::setHighPass(), BiquadFilter::setHighShelf(), BiquadFilter::setLowPass(), BiquadFilter::setLowShelf(), BiquadFilter::setNotch(), and BiquadFilter::setPeak().
|
protectedinherited |
Definition at line 191 of file BiquadFilter.h.
Referenced by BiquadFilter::copyCoefficients(), BiquadFilter::copyState(), MultiBiquadFilter::create(), BiquadFilter::create(), create(), BiquadFilter::getCoefficients(), BiquadFilter::getFilterStage(), BiquadFilter::getStages(), BiquadFilter::getState(), BiquadFilter::init(), BiquadFilter::process(), BiquadFilter::setCoefficients(), BiquadFilter::setStages(), and BiquadFilter::setState().
|
protectedinherited |
Definition at line 190 of file BiquadFilter.h.
Referenced by BiquadFilter::destroy(), MultiBiquadFilter::destroy(), BiquadFilter::getFilterStage(), BiquadFilter::getState(), BiquadFilter::init(), BiquadFilter::process(), and BiquadFilter::setState().