VVSDK  1.0
The VVAmbisonic Library
ShelfFilterI.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2013 David McGriffy, all rights reserved
3  */
4 
5 #ifndef SHELFFILTERI_H_INCLUDED
6 #define SHELFFILTERI_H_INCLUDED
7 
8 #if _MSC_VER > 1000
9 #pragma once
10 #endif // _MSC_VER > 1000
11 
12 #include "IIRFilter.h"
13 
17 class CShelfFilterI : public CIIRFilter
18 {
19 public:
20  CShelfFilterI();
21  CShelfFilterI(float dCenterFreq, float dBGain);
22  virtual ~CShelfFilterI();
24  void setSamplingRate(float sr);
25  void doFilter(float *node, long sampleFrames);
26  void setCenterFreq(float dCenterFreq);
27  void setHighBandGain(float dBGain);
29 protected:
30  void init();
31  void updateCoefficients();
32 
34  float m_dBGain;
35 
36  double a1, b0, b1, y0, x0, x1;
37  double a1z, b0z, b1z;
38  double a1d, b0d, b1d;
39  bool firstBlock;
40 };
41 
42 #endif // !defined(AFX_SHELFFILTERI_H__72425CC7_65F2_42D2_BE62_253D0D373277__INCLUDED_)
double b1
Definition: ShelfFilterI.h:36
CShelfFilterI()
Definition: ShelfFilterI.cpp:11
double b0d
Definition: ShelfFilterI.h:38
float m_dBGain
Definition: ShelfFilterI.h:34
double b0
Definition: ShelfFilterI.h:36
Definition: IIRFilter.h:18
void updateCoefficients()
Definition: ShelfFilterI.cpp:55
void init()
Definition: ShelfFilterI.cpp:29
double b1z
Definition: ShelfFilterI.h:37
double x0
Definition: ShelfFilterI.h:36
bool firstBlock
Definition: ShelfFilterI.h:39
double a1
Definition: ShelfFilterI.h:36
double b0z
Definition: ShelfFilterI.h:37
void doFilter(float *node, long sampleFrames)
Definition: ShelfFilterI.cpp:77
double x1
Definition: ShelfFilterI.h:36
Definition: ShelfFilterI.h:17
void setHighBandGain(float dBGain)
Definition: ShelfFilterI.cpp:49
double a1d
Definition: ShelfFilterI.h:38
float m_dCenterFreq
Definition: ShelfFilterI.h:33
double b1d
Definition: ShelfFilterI.h:38
double a1z
Definition: ShelfFilterI.h:37
void setSamplingRate(float sr)
Definition: ShelfFilterI.cpp:37
virtual ~CShelfFilterI()
Definition: ShelfFilterI.cpp:25
double y0
Definition: ShelfFilterI.h:36
void setCenterFreq(float dCenterFreq)
Definition: ShelfFilterI.cpp:43