2nd try
Diff: IIR_filter.h
- Revision:
- 0:72b60c5271cc
- Child:
- 2:8706bb4e8f93
diff -r 000000000000 -r 72b60c5271cc IIR_filter.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/IIR_filter.h Thu Mar 07 07:03:44 2019 +0000 @@ -0,0 +1,25 @@ +class IIR_filter{ + public: + + IIR_filter(float T, float Ts); + IIR_filter(float T, float Ts, float K); + IIR_filter(float w0, float D, float Ts, float K); + IIR_filter(float *b, float *a, int nb_, int na_); + + float operator()(float u){ + return filter((double)u); + } + virtual ~IIR_filter(); + void reset(float); + float filter(double); + + private: + + unsigned int nb; + unsigned int na; + double *B; + double *A; + double *uk; + double *yk; + double K; +};