Aviate Audio Multiverse Library
Public Member Functions | List of all members
Aviate::IirBiQuadFilterFloat Class Reference

A single-precision floating-point biquad using CMSIS-DSP hardware instructions. More...

#include <LibBasicFunctions.h>

Public Member Functions

 IirBiQuadFilterFloat (unsigned maxNumStages, const float *coeffs)
 Construct a Biquad filter with specified number of stages and coefficients. More...
 
virtual ~IirBiQuadFilterFloat ()
 Destructor.
 
void changeFilterCoeffs (unsigned numStages, const float *coeffs)
 Reconfigure the filter coefficients. More...
 
bool process (float *output, float *input, size_t numSamples)
 Process the data using the configured IIR filter. More...
 

Detailed Description

A single-precision floating-point biquad using CMSIS-DSP hardware instructions.

Use this when IirBiQuadFilterHQ is insufficient, since that version is still faster with 64-bit fixed-point arithmetic.

Constructor & Destructor Documentation

◆ IirBiQuadFilterFloat()

Aviate::IirBiQuadFilterFloat::IirBiQuadFilterFloat ( unsigned  maxNumStages,
const float *  coeffs 
)

Construct a Biquad filter with specified number of stages and coefficients.

See CMSIS-DSP documentation for more details

Parameters
maxNumStagesnumber of biquad stages. Each stage has 5 coefficients.
coeffspointer to an array of single-precision floating-point coefficients

Member Function Documentation

◆ changeFilterCoeffs()

void Aviate::IirBiQuadFilterFloat::changeFilterCoeffs ( unsigned  numStages,
const float *  coeffs 
)

Reconfigure the filter coefficients.

See CMSIS-DSP documentation for more details

Parameters
numStagesnumber of biquad stages. Each stage has 5 coefficients.
coeffspointer to an array of single-precision floating-point coefficients

◆ process()

bool Aviate::IirBiQuadFilterFloat::process ( float *  output,
float *  input,
size_t  numSamples 
)

Process the data using the configured IIR filter.

output and input can be the same pointer if in-place modification is desired

Parameters
outputpointer to where the output results will be written
inputpointer to where the input data will be read from
numSamplesnumber of samples to process
Returns
true if success, false if an error occurs

The documentation for this class was generated from the following file: