iir1
Loading...
Searching...
No Matches
Custom.h
1
35
36#pragma once
37
38#include "Biquad.h"
39#include "Cascade.h"
40#include "State.h"
41
42namespace Iir
43{
44
49
50namespace Custom
51{
52
59struct OnePole : public Biquad
60{
61 void setup (double scale, double pole, double zero);
62};
63
71struct TwoPole : public Biquad
72{
73 void setup (double scale, double poleRho, double poleTheta, double zeroRho,
74 double zeroTheta);
75};
76
82template <std::size_t NSOS, class StateType = DEFAULT_STATE>
83struct SOSCascade : CascadeStages<NSOS, StateType>
84{
89 SOSCascade () = default;
90
101 SOSCascade (const double (&sosCoefficients)[NSOS][6])
102 {
104 }
105
116 SOSCascade (const std::array<std::array<double, 6>, NSOS> sosCoefficients)
117 {
119 }
120
131 void setup (const double (&sosCoefficients)[NSOS][6])
132 {
134 }
135
146 void setup (const std::array<std::array<double, 6>, NSOS> sosCoefficients)
147 {
149 }
150};
151
152}
153
154}
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition Cascade.h:137
Definition Custom.cpp:40
Definition Biquad.cpp:40
Definition Custom.h:60
SOSCascade(const std::array< std::array< double, 6 >, NSOS > sosCoefficients)
Definition Custom.h:116
SOSCascade(const double(&sosCoefficients)[NSOS][6])
Definition Custom.h:101
void setup(const std::array< std::array< double, 6 >, NSOS > sosCoefficients)
Definition Custom.h:146
void setup(const double(&sosCoefficients)[NSOS][6])
Definition Custom.h:131
Definition Custom.h:72