This repository has been archived on 2020-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
Files
Indoor/math/dsp/iir/BiQuadStack.h
frank f990485d44 worked on step-detection
adjusted iir biquad
added biquad-stacking
2018-08-07 19:36:07 +02:00

43 lines
584 B
C++

#ifndef BIQUADSTACK_H
#define BIQUADSTACK_H
#include <vector>
#include "BiQuad.h"
namespace IIR {
template <typename Scalar> class BiQuadStack {
std::vector<BiQuad<Scalar>> filters;
public:
BiQuadStack() {
;
}
BiQuadStack(const int num) {
filters.resize(num);
}
void resize(const int num) {
filters.resize(num);
}
BiQuad<Scalar>& operator [] (const size_t idx) {
return filters.at(idx);
}
Scalar filter(Scalar val) {
for (BiQuad<Scalar>& bq : filters) {
val = bq.filter(val);
}
return val;
}
};
}
#endif // BIQUADSTACK_H