1
/*******************************************/
3
BiQuad (2-pole, 2-zero) Filter Class,
4
by Perry R. Cook, 1995-96.
5
Modified by Julius Smith, 2000:
6
setA1,setA2,setB1,setB2
8
See books on filters to understand
9
more about how this works. Nothing
10
out of the ordinary in this version.
12
/*******************************************/
14
#if !defined(__BiQuad_h)
19
class BiQuad : public Filter
22
MY_FLOAT poleCoeffs[2];
23
MY_FLOAT zeroCoeffs[2];
28
void setA1(MY_FLOAT a1);
29
void setA2(MY_FLOAT a2);
30
void setB1(MY_FLOAT b1);
31
void setB2(MY_FLOAT b2);
32
void setPoleCoeffs(MY_FLOAT *coeffs);
33
void setZeroCoeffs(MY_FLOAT *coeffs);
34
void setGain(MY_FLOAT aValue);
35
void setFreqAndReson(MY_FLOAT freq, MY_FLOAT reson);
36
void setEqualGainZeroes();
37
MY_FLOAT tick(MY_FLOAT sample);