iir1: iir/Custom.h Source File

iir1

Loading...
Searching...
No Matches
Custom.h
1
36#ifndef IIR1_CUSTOM_H
37#define IIR1_CUSTOM_H
38
39#include "Common.h"
40#include "Biquad.h"
41#include "Cascade.h"
42#include "PoleFilter.h"
43#include "State.h"
44
45
46namespace Iir {
47
53namespace Custom {
54
61 struct OnePole : public Biquad
62{
63 void setup (double scale,
64 double pole,
65 double zero);
66};
67
75 struct TwoPole : public Biquad
76{
77 void setup (double scale,
78 double poleRho,
79 double poleTheta,
80 double zeroRho,
81 double zeroTheta);
82};
83
89template <int NSOS, class StateType = DEFAULT_STATE>
90 struct SOSCascade : CascadeStages<NSOS,StateType>
91{
96 SOSCascade() = default;
107 SOSCascade(const double (&sosCoefficients)[NSOS][6]) {
108 CascadeStages<NSOS,StateType>::setup(sosCoefficients);
109 }
120 void setup (const double (&sosCoefficients)[NSOS][6]) {
121 CascadeStages<NSOS,StateType>::setup(sosCoefficients);
122 }
123};
124
125}
126
127}
128
129#endif
Iir::Biquad
Definition Biquad.h:52
Iir::CascadeStages
Definition Cascade.h:116
Iir::CascadeStages::setup
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition Cascade.h:138
Iir
Definition Biquad.cpp:40
Iir::Custom::OnePole
Definition Custom.h:62
Iir::Custom::SOSCascade
Definition Custom.h:91
Iir::Custom::SOSCascade::SOSCascade
SOSCascade()=default
Iir::Custom::SOSCascade::SOSCascade
SOSCascade(const double(&sosCoefficients)[NSOS][6])
Definition Custom.h:107
Iir::Custom::SOSCascade::setup
void setup(const double(&sosCoefficients)[NSOS][6])
Definition Custom.h:120
Iir::Custom::TwoPole
Definition Custom.h:76