Class BiquadFilter

Inheritance Relationships

Base Type

Class Documentation

class BiquadFilter : public dsp::filter::IFilter

Public Functions

BiquadFilter(double gain, std::vector<std::array<double, 6>> &coefficients, std::string description = "")
virtual IFilter *clone()
virtual unsigned int order() const final
virtual double process_channel(double x, unsigned int c = 0) final
inline virtual void process_sample(std::vector<double> &input, std::vector<double> &output) final
virtual void process_sample(std::vector<double>::iterator input, std::vector<double>::iterator output) final
virtual void process_sample(double *input, double *output) final
virtual void process_channel(std::vector<double> &input, std::vector<double> &output, unsigned int channel = 0) final
virtual void process_channel(uint64_t nsamples, std::vector<double>::iterator input, std::vector<double>::iterator output, unsigned int channel = 0) final
virtual void process_channel(uint64_t nsamples, double *input, double *output, unsigned int channel = 0) final
virtual void process_by_channel(std::vector<std::vector<double>> &input, std::vector<std::vector<double>> &output) final
virtual void process_by_sample(std::vector<std::vector<double>> &input, std::vector<std::vector<double>> &output) final
virtual void process_by_channel(uint64_t nsamples, double **input, double **output) final
virtual void process_by_sample(uint64_t nsamples, double **input, double **output) final
virtual void process_by_channel(uint64_t nsamples, std::vector<double> &input, std::vector<double> &output)
virtual void process_by_sample(uint64_t nsamples, std::vector<double> &input, std::vector<double> &output)

Public Static Functions

static BiquadFilter *FromStream(std::istream &stream, std::string description, bool binary)

Protected Functions

virtual bool realize_filter(unsigned int nchannels, double init = 0.0) final
virtual void unrealize_filter() final

Protected Attributes

double gain_
std::vector<std::array<double, 6>> coefficients_
unsigned int nstages_
std::vector<std::vector<std::array<double, 2>>> registers_