Audacity  2.2.0
Biquad.h
Go to the documentation of this file.
1 #ifndef __BIQUAD_H__
2 #define __BIQUAD_H__
3 
4 #if 0
5 //initialisations not supported in MSVC 2013.
6 //Gives error C2905
7 // Do not make conditional on compiler.
8 typedef struct {
9  float* pfIn {};
10  float* pfOut {};
11  float fNumerCoeffs [3] { 1.0f, 0.0f, 0.0f }; // B0 B1 B2
12  float fDenomCoeffs [2] { 0.0f, 0.0f }; // A1 A2
13  float fPrevIn {};
14  float fPrevPrevIn {};
15  float fPrevOut {};
16  float fPrevPrevOut {};
17 } BiquadStruct;
18 #else
19 // WARNING: This structure may need initialisation.
20 typedef struct {
21  float* pfIn;
22  float* pfOut;
23  float fNumerCoeffs [3]; // B0 B1 B2
24  float fDenomCoeffs [2]; // A1 A2
25  float fPrevIn;
26  float fPrevPrevIn;
27  float fPrevOut;
28  float fPrevPrevOut;
29 } BiquadStruct;
30 #endif
31 
32 
33 
34 void Biquad_Process (BiquadStruct* pBQ, int iNumSamples);
35 void ComplexDiv (float fNumerR, float fNumerI, float fDenomR, float fDenomI, float* pfQuotientR, float* pfQuotientI);
36 bool BilinTransform (float fSX, float fSY, float* pfZX, float* pfZY);
37 float Calc2D_DistSqr (float fX1, float fY1, float fX2, float fY2);
38 
39 #endif
bool BilinTransform(float fSX, float fSY, float *pfZX, float *pfZY)
Definition: Biquad.cpp:39
void Biquad_Process(BiquadStruct *pBQ, int iNumSamples)
Definition: Biquad.cpp:5
float fPrevPrevOut
Definition: Biquad.h:28
float fPrevOut
Definition: Biquad.h:27
float * pfOut
Definition: Biquad.h:22
void ComplexDiv(float fNumerR, float fNumerI, float fDenomR, float fDenomI, float *pfQuotientR, float *pfQuotientI)
Definition: Biquad.cpp:32
float fPrevPrevIn
Definition: Biquad.h:26
Definition: Biquad.h:20
float Calc2D_DistSqr(float fX1, float fY1, float fX2, float fY2)
Definition: Biquad.cpp:47
float * pfIn
Definition: Biquad.h:21
float fPrevIn
Definition: Biquad.h:25