![]() |
Klang C++
Language Reference (draft)
|
Abstract filter class. More...
#include <klang.h>
Public Member Functions | |
virtual | ~Filter () |
void | reset () |
Reset filter state. | |
void | set (param f, param Q=root2.inv) |
Set the filter cutoff (and Q) | |
virtual void | init ()=0 |
void | process () noexcept |
Apply the biquad filter (Transposed Direct Form II) | |
operator const signal & () override | |
operator const signal & () const override | |
Modifier< signal > & | operator() (params... p) |
virtual const signal & | input () const |
virtual void | input (const signal &source) |
virtual void | operator<< (const signal &source) |
virtual const signal & | output () const |
TYPE & | operator>> (TYPE &destination) |
signal | operator+ (TYPE &other) |
signal | operator* (TYPE &other) |
signal | operator- (TYPE &other) |
signal | operator/ (TYPE &other) |
Public Attributes | |
float | f = 0 |
float | Q = 0 |
float | a1 = 0 |
float | a2 = 0 |
float | b0 = 1 |
float | b1 = 0 |
float | b2 = 0 |
float | a = 0 |
float | cos0 = 1 |
float | sin0 = 0 |
float | z [2] = { 0 } |
signal | in |
signal | out |
|
inlinevirtual |
|
pure virtual |
Implemented in klang::Filters::Biquad::APF, klang::Filters::Biquad::BPF, klang::Filters::Biquad::BRF, klang::Filters::Biquad::HPF, and klang::Filters::Biquad::LPF.
Referenced by set().
|
inlineprotectedvirtualinherited |
Reimplemented in klang::Debug, klang::Delay< SIZE >, klang::Generic::Function< signal, Args... >, and klang::Generic::Graph< SIZE >::Series.
Definition at line 1351 of file klang.h.
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlineoverridevirtualinherited |
|
inlineoverridevirtualinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlineinherited |
|
inlinevirtualinherited |
|
inlinevirtualnoexcept |
Reimplemented from klang::Generic::Modifier< signal >.
|
inline |
float klang::Filters::Biquad::Filter::a = 0 |
Definition at line 4234 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), reset(), and set().
float klang::Filters::Biquad::Filter::a1 = 0 |
Definition at line 4232 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), process(), and reset().
float klang::Filters::Biquad::Filter::a2 = 0 |
Definition at line 4232 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), process(), and reset().
float klang::Filters::Biquad::Filter::b0 = 1 |
Definition at line 4232 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), process(), and reset().
float klang::Filters::Biquad::Filter::b1 = 0 |
Definition at line 4232 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), process(), and reset().
float klang::Filters::Biquad::Filter::b2 = 0 |
Definition at line 4232 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), process(), and reset().
float klang::Filters::Biquad::Filter::cos0 = 1 |
Definition at line 4235 of file klang.h.
Referenced by klang::Filters::Biquad::APF::init(), klang::Filters::Biquad::BRF::init(), klang::Filters::Biquad::HPF::init(), klang::Filters::Biquad::LPF::init(), klang::Filters::Biquad::BPF::init_peak(), klang::Filters::Biquad::BPF::init_skirt(), and set().
float klang::Filters::Biquad::Filter::f = 0 |
|
inherited |
|
inherited |
float klang::Filters::Biquad::Filter::Q = 0 |
float klang::Filters::Biquad::Filter::sin0 = 0 |
Definition at line 4236 of file klang.h.
Referenced by klang::Filters::Biquad::BPF::init_skirt(), and set().