Bela
Real-time, ultra-low-latency audio and sensor processing system for BeagleBone Black
 All Classes Files Functions Variables Typedefs Macros Groups
OnePole.h
1 /*
2  * Adapted from: http://www.earlevel.com/main/2012/12/15/a-one-pole-filter/
3  *
4  * by: Ad├ín L. Benito
5  * on: November 2018
6  * original code by Nigel Redmon
7  *
8  */
9 
10 class OnePole
11 {
12 
13  private:
14 
15  float _fc;
16  float _fs;
17  int _type;
18 
19  float a0, b1, ym1;
20 
21  void setType(int type);
22 
23  void setFc(float fc);
24 
25  public:
26  OnePole();
27  OnePole(float fc, float fs, int type);
28  ~OnePole();
29 
30  int setup(float fc, float fs, int type = LP);
31  void cleanup();
32 
33  enum Type
34  {
35  LP = 0,
36  HP = 1
37  };
38 
39  void setFilter(float fc, float fs, int type);
40 
41  float process(float input);
42 };
Definition: OnePole.h:10