diff --git a/README.md b/README.md index 197863c..90407ec 100644 --- a/README.md +++ b/README.md @@ -237,7 +237,7 @@ every filter type. ### Detailed documentation A PDF of all classes, methods and in particular `setup` functions -is in the `doc/pdf` directory. +is in the `docs/pdf` directory. The online documentation is here: http://berndporr.github.io/iir1 diff --git a/docs/Biquad_8h_source.html b/docs/Biquad_8h_source.html index a15b679..790f664 100644 --- a/docs/Biquad_8h_source.html +++ b/docs/Biquad_8h_source.html @@ -89,92 +89,92 @@
52  class DllExport Biquad
53  {
54  public:
-
58  complex_t response (double normalizedFrequency) const;
-
59 
-
63  std::vector<PoleZeroPair> getPoleZeros () const;
-
64 
-
68  double getA0 () const { return m_a0; }
-
69 
-
73  double getA1 () const { return m_a1*m_a0; }
-
74 
-
78  double getA2 () const { return m_a2*m_a0; }
-
79 
-
83  double getB0 () const { return m_b0*m_a0; }
-
84 
-
88  double getB1 () const { return m_b1*m_a0; }
-
89 
-
93  double getB2 () const { return m_b2*m_a0; }
-
94 
-
100  template <class StateType>
-
101  inline double filter(double s, StateType& state) const
-
102  {
-
103  return state.filter(s, *this);
-
104  }
-
105 
-
106  public:
-
116  void setCoefficients (double a0, double a1, double a2,
-
117  double b0, double b1, double b2);
-
118 
-
122  void setOnePole (complex_t pole, complex_t zero);
-
123 
-
127  void setTwoPole (complex_t pole1, complex_t zero1,
-
128  complex_t pole2, complex_t zero2);
-
129 
-
133  void setPoleZeroPair (const PoleZeroPair& pair)
-
134  {
-
135  if (pair.isSinglePole ())
-
136  setOnePole (pair.poles.first, pair.zeros.first);
-
137  else
-
138  setTwoPole (pair.poles.first, pair.zeros.first,
-
139  pair.poles.second, pair.zeros.second);
-
140  }
-
141 
-
142  void setPoleZeroForm (const BiquadPoleState& bps);
+
59  complex_t response (double normalizedFrequency) const;
+
60 
+
64  std::vector<PoleZeroPair> getPoleZeros () const;
+
65 
+
69  double getA0 () const { return m_a0; }
+
70 
+
74  double getA1 () const { return m_a1*m_a0; }
+
75 
+
79  double getA2 () const { return m_a2*m_a0; }
+
80 
+
84  double getB0 () const { return m_b0*m_a0; }
+
85 
+
89  double getB1 () const { return m_b1*m_a0; }
+
90 
+
94  double getB2 () const { return m_b2*m_a0; }
+
95 
+
102  template <class StateType>
+
103  inline double filter(double s, StateType& state) const
+
104  {
+
105  return state.filter(s, *this);
+
106  }
+
107 
+
108  public:
+
118  void setCoefficients (double a0, double a1, double a2,
+
119  double b0, double b1, double b2);
+
120 
+
124  void setOnePole (complex_t pole, complex_t zero);
+
125 
+
129  void setTwoPole (complex_t pole1, complex_t zero1,
+
130  complex_t pole2, complex_t zero2);
+
131 
+
135  void setPoleZeroPair (const PoleZeroPair& pair)
+
136  {
+
137  if (pair.isSinglePole ())
+
138  setOnePole (pair.poles.first, pair.zeros.first);
+
139  else
+
140  setTwoPole (pair.poles.first, pair.zeros.first,
+
141  pair.poles.second, pair.zeros.second);
+
142  }
143 
-
147  void setIdentity ();
-
148 
-
153  void applyScale (double scale);
-
154 
-
155  public:
-
156  double m_a0 = 1;
-
157  double m_a1 = 0;
-
158  double m_a2 = 0;
-
159  double m_b1 = 0;
-
160  double m_b2 = 0;
-
161  double m_b0 = 1;
-
162  };
-
163 
-
164 //------------------------------------------------------------------------------
+
144  void setPoleZeroForm (const BiquadPoleState& bps);
+
145 
+
149  void setIdentity ();
+
150 
+
155  void applyScale (double scale);
+
156 
+
157  public:
+
158  double m_a0 = 1;
+
159  double m_a1 = 0;
+
160  double m_a2 = 0;
+
161  double m_b1 = 0;
+
162  double m_b2 = 0;
+
163  double m_b0 = 1;
+
164  };
165 
-
166 
-
171  struct DllExport BiquadPoleState : PoleZeroPair
-
172  {
-
173  BiquadPoleState () { }
-
174 
-
175  explicit BiquadPoleState (const Biquad& s);
+
166 //------------------------------------------------------------------------------
+
167 
+
168 
+
173  struct DllExport BiquadPoleState : PoleZeroPair
+
174  {
+
175  BiquadPoleState () { }
176 
-
177  double gain = 1;
-
178  };
-
179 
-
180 }
-
181 
-
182 #endif
+
177  explicit BiquadPoleState (const Biquad& s);
+
178 
+
179  double gain = 1;
+
180  };
+
181 
+
182 }
+
183 
+
184 #endif
-
Iir::Biquad::getA0
double getA0() const
Definition: Biquad.h:68
+
Iir::Biquad::getA0
double getA0() const
Definition: Biquad.h:69
Iir::Biquad
Definition: Biquad.h:52
-
Iir::Biquad::getA1
double getA1() const
Definition: Biquad.h:73
-
Iir::Biquad::setPoleZeroPair
void setPoleZeroPair(const PoleZeroPair &pair)
Definition: Biquad.h:133
-
Iir::Biquad::getB1
double getB1() const
Definition: Biquad.h:88
-
Iir::Biquad::getA2
double getA2() const
Definition: Biquad.h:78
+
Iir::Biquad::getA1
double getA1() const
Definition: Biquad.h:74
+
Iir::Biquad::setPoleZeroPair
void setPoleZeroPair(const PoleZeroPair &pair)
Definition: Biquad.h:135
+
Iir::Biquad::getB1
double getB1() const
Definition: Biquad.h:89
+
Iir::Biquad::getA2
double getA2() const
Definition: Biquad.h:79
Iir
Definition: Biquad.cpp:41
-
Iir::Biquad::getB0
double getB0() const
Definition: Biquad.h:83
+
Iir::Biquad::getB0
double getB0() const
Definition: Biquad.h:84
Iir::PoleZeroPair
Definition: Types.h:100
-
Iir::Biquad::filter
double filter(double s, StateType &state) const
Definition: Biquad.h:101
-
Iir::BiquadPoleState
Definition: Biquad.h:171
-
Iir::Biquad::getB2
double getB2() const
Definition: Biquad.h:93
+
Iir::Biquad::filter
double filter(double s, StateType &state) const
Definition: Biquad.h:103
+
Iir::BiquadPoleState
Definition: Biquad.h:173
+
Iir::Biquad::getB2
double getB2() const
Definition: Biquad.h:94
diff --git a/docs/Butterworth_8h_source.html b/docs/Butterworth_8h_source.html index d7a5485..094c095 100644 --- a/docs/Butterworth_8h_source.html +++ b/docs/Butterworth_8h_source.html @@ -382,7 +382,7 @@
Iir::Butterworth::AnalogLowShelf
Definition: Butterworth.h:70
diff --git a/docs/Cascade_8h_source.html b/docs/Cascade_8h_source.html index c3995f0..7551c6e 100644 --- a/docs/Cascade_8h_source.html +++ b/docs/Cascade_8h_source.html @@ -80,121 +80,120 @@
43 #include <stdexcept>
44 
45 namespace Iir {
-
46 
-
47 /*
-
48  * Holds coefficients for a cascade of second order sections.
-
49  *
-
50  */
-
51  class DllExport Cascade
-
52  {
-
53  public:
-
54 
-
58  struct DllExport Storage
-
59  {
-
65  Storage (int maxStages_, Biquad* stageArray_)
-
66  : maxStages (maxStages_)
-
67  , stageArray (stageArray_)
-
68  {
-
69  }
-
70 
-
71  int maxStages;
-
72  Biquad* stageArray;
-
73  };
-
74 
-
78  int getNumStages () const
-
79  {
-
80  return m_numStages;
-
81  }
-
82 
-
86  const Biquad& operator[] (int index)
-
87  {
-
88  if ((index < 0) || (index >= m_numStages))
-
89  throw std::invalid_argument("Index out of bounds.");
-
90  return m_stageArray[index];
-
91  }
-
92 
-
97  complex_t response (double normalizedFrequency) const;
-
98 
-
102  std::vector<PoleZeroPair> getPoleZeros () const;
-
103 
-
104  protected:
-
105  Cascade ();
-
106 
-
107  void setCascadeStorage (const Storage& storage);
-
108 
-
109  void applyScale (double scale);
-
110 
-
111  void setLayout (const LayoutBase& proto);
-
112 
-
113  private:
-
114  int m_numStages;
-
115  int m_maxStages;
-
116  Biquad* m_stageArray;
-
117  };
+
46 
+
50  class DllExport Cascade
+
51  {
+
52  public:
+
53 
+
57  struct DllExport Storage
+
58  {
+
64  Storage (int maxStages_, Biquad* stageArray_)
+
65  : maxStages (maxStages_)
+
66  , stageArray (stageArray_)
+
67  {
+
68  }
+
69 
+
70  int maxStages;
+
71  Biquad* stageArray;
+
72  };
+
73 
+
77  int getNumStages () const
+
78  {
+
79  return m_numStages;
+
80  }
+
81 
+
85  const Biquad& operator[] (int index)
+
86  {
+
87  if ((index < 0) || (index >= m_numStages))
+
88  throw std::invalid_argument("Index out of bounds.");
+
89  return m_stageArray[index];
+
90  }
+
91 
+
96  complex_t response (double normalizedFrequency) const;
+
97 
+
101  std::vector<PoleZeroPair> getPoleZeros () const;
+
102 
+
103  protected:
+
104  Cascade ();
+
105 
+
106  void setCascadeStorage (const Storage& storage);
+
107 
+
108  void applyScale (double scale);
+
109 
+
110  void setLayout (const LayoutBase& proto);
+
111 
+
112  private:
+
113  int m_numStages;
+
114  int m_maxStages;
+
115  Biquad* m_stageArray;
+
116  };
+
117 
118 
-
119 //------------------------------------------------------------------------------
-
120 
-
125  template <int MaxStages,class StateType>
-
126  class DllExport CascadeStages {
-
127  public:
-
131  void reset ()
-
132  {
-
133  for (auto &state: m_states)
-
134  state.reset();
-
135  }
-
136 
-
137  public:
-
143  void setup (const double (&sosCoefficients)[MaxStages][6]) {
-
144  for (int i = 0; i < MaxStages; i++) {
-
145  m_stages[i].setCoefficients(
-
146  sosCoefficients[i][3],
-
147  sosCoefficients[i][4],
-
148  sosCoefficients[i][5],
-
149  sosCoefficients[i][0],
-
150  sosCoefficients[i][1],
-
151  sosCoefficients[i][2]);
-
152  }
+
119 
+
120 //------------------------------------------------------------------------------
+
121 
+
126  template <int MaxStages,class StateType>
+
127  class DllExport CascadeStages {
+
128  public:
+
132  void reset ()
+
133  {
+
134  for (auto &state: m_states)
+
135  state.reset();
+
136  }
+
137 
+
138  public:
+
144  void setup (const double (&sosCoefficients)[MaxStages][6]) {
+
145  for (int i = 0; i < MaxStages; i++) {
+
146  m_stages[i].setCoefficients(
+
147  sosCoefficients[i][3],
+
148  sosCoefficients[i][4],
+
149  sosCoefficients[i][5],
+
150  sosCoefficients[i][0],
+
151  sosCoefficients[i][1],
+
152  sosCoefficients[i][2]);
153  }
-
154 
-
155  public:
-
160  template <typename Sample>
-
161  inline Sample filter(const Sample in)
-
162  {
-
163  double out = in;
-
164  StateType* state = m_states;
-
165  for (const auto &stage: m_stages)
-
166  out = (state++)->filter(out, stage);
-
167  return static_cast<Sample> (out);
-
168  }
-
169 
-
170  Cascade::Storage getCascadeStorage()
-
171  {
-
172  return Cascade::Storage (MaxStages, m_stages);
-
173  }
-
174 
-
175  private:
-
176  Biquad m_stages[MaxStages];
-
177  StateType m_states[MaxStages];
-
178  };
-
179 
-
180 }
-
181 
-
182 #endif
+
154  }
+
155 
+
156  public:
+
162  template <typename Sample>
+
163  inline Sample filter(const Sample in)
+
164  {
+
165  double out = in;
+
166  StateType* state = m_states;
+
167  for (const auto &stage: m_stages)
+
168  out = (state++)->filter(out, stage);
+
169  return static_cast<Sample> (out);
+
170  }
+
171 
+
172  Cascade::Storage getCascadeStorage()
+
173  {
+
174  return Cascade::Storage (MaxStages, m_stages);
+
175  }
+
176 
+
177 
+
178  private:
+
179  Biquad m_stages[MaxStages];
+
180  StateType m_states[MaxStages];
+
181  };
+
182 
+
183 }
+
184 
+
185 #endif
Iir::Biquad
Definition: Biquad.h:52
-
Iir::Cascade::Storage
Definition: Cascade.h:58
-
Iir::CascadeStages
Definition: Cascade.h:126
-
Iir::CascadeStages::setup
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition: Cascade.h:143
-
Iir::CascadeStages::reset
void reset()
Definition: Cascade.h:131
-
Iir::CascadeStages::filter
Sample filter(const Sample in)
Definition: Cascade.h:161
-
Iir::Cascade
Definition: Cascade.h:51
+
Iir::Cascade::Storage
Definition: Cascade.h:57
+
Iir::CascadeStages
Definition: Cascade.h:127
+
Iir::CascadeStages::setup
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition: Cascade.h:144
+
Iir::CascadeStages::reset
void reset()
Definition: Cascade.h:132
+
Iir::CascadeStages::filter
Sample filter(const Sample in)
Definition: Cascade.h:163
+
Iir::Cascade
Definition: Cascade.h:50
Iir
Definition: Biquad.cpp:41
Iir::LayoutBase
Definition: Layout.h:63
-
Iir::Cascade::Storage::Storage
Storage(int maxStages_, Biquad *stageArray_)
Definition: Cascade.h:65
-
Iir::Cascade::getNumStages
int getNumStages() const
Definition: Cascade.h:78
+
Iir::Cascade::Storage::Storage
Storage(int maxStages_, Biquad *stageArray_)
Definition: Cascade.h:64
+
Iir::Cascade::getNumStages
int getNumStages() const
Definition: Cascade.h:77
diff --git a/docs/ChebyshevII_8h_source.html b/docs/ChebyshevII_8h_source.html index ca0cbeb..d374c95 100644 --- a/docs/ChebyshevII_8h_source.html +++ b/docs/ChebyshevII_8h_source.html @@ -427,7 +427,7 @@
Iir::ChebyshevII::LowShelfBase
Definition: ChebyshevII.h:125
diff --git a/docs/ChebyshevI_8h_source.html b/docs/ChebyshevI_8h_source.html index 6db6213..177d45b 100644 --- a/docs/ChebyshevI_8h_source.html +++ b/docs/ChebyshevI_8h_source.html @@ -425,7 +425,7 @@
Iir::ChebyshevI::BandPass
Definition: ChebyshevI.h:246
diff --git a/docs/Common_8h_source.html b/docs/Common_8h_source.html index 7b048c1..d137f48 100644 --- a/docs/Common_8h_source.html +++ b/docs/Common_8h_source.html @@ -106,7 +106,7 @@ diff --git a/docs/Custom_8h_source.html b/docs/Custom_8h_source.html index 1c2f86d..80716de 100644 --- a/docs/Custom_8h_source.html +++ b/docs/Custom_8h_source.html @@ -120,8 +120,8 @@
Iir::Biquad
Definition: Biquad.h:52
Iir::Custom::SOSCascade
Definition: Custom.h:90
-
Iir::CascadeStages
Definition: Cascade.h:126
-
Iir::CascadeStages::setup
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition: Cascade.h:143
+
Iir::CascadeStages
Definition: Cascade.h:127
+
Iir::CascadeStages::setup
void setup(const double(&sosCoefficients)[MaxStages][6])
Definition: Cascade.h:144
Iir::Custom::TwoPole
Definition: Custom.h:75
Iir::Custom::SOSCascade::SOSCascade
SOSCascade(const double(&sosCoefficients)[NSOS][6])
Definition: Custom.h:107
Iir
Definition: Biquad.cpp:41
@@ -129,7 +129,7 @@
Iir::Custom::OnePole
Definition: Custom.h:61
diff --git a/docs/Iir_8h_source.html b/docs/Iir_8h_source.html index bfad96e..203f4b3 100644 --- a/docs/Iir_8h_source.html +++ b/docs/Iir_8h_source.html @@ -90,7 +90,7 @@ diff --git a/docs/Layout_8h_source.html b/docs/Layout_8h_source.html index c88260c..2b457f6 100644 --- a/docs/Layout_8h_source.html +++ b/docs/Layout_8h_source.html @@ -229,7 +229,7 @@
Iir::PoleZeroPair
Definition: Types.h:100
diff --git a/docs/MathSupplement_8h_source.html b/docs/MathSupplement_8h_source.html index 7d54a63..8260c67 100644 --- a/docs/MathSupplement_8h_source.html +++ b/docs/MathSupplement_8h_source.html @@ -166,7 +166,7 @@
Iir
Definition: Biquad.cpp:41
diff --git a/docs/PoleFilter_8h_source.html b/docs/PoleFilter_8h_source.html index 1050563..9a7ecc6 100644 --- a/docs/PoleFilter_8h_source.html +++ b/docs/PoleFilter_8h_source.html @@ -234,9 +234,9 @@
Iir::PoleFilterBase
Definition: PoleFilter.h:89
Iir::Layout< MaxAnalogPoles >
Iir::ComplexPair
Definition: Types.h:48
-
Iir::CascadeStages
Definition: Cascade.h:126
+
Iir::CascadeStages
Definition: Cascade.h:127
Iir::PoleFilter
Definition: PoleFilter.h:112
-
Iir::Cascade
Definition: Cascade.h:51
+
Iir::Cascade
Definition: Cascade.h:50
Iir
Definition: Biquad.cpp:41
Iir::BandStopTransform
Definition: PoleFilter.h:207
Iir::BandPassTransform
Definition: PoleFilter.h:180
@@ -246,7 +246,7 @@
Iir::LowPassTransform
Definition: PoleFilter.h:144
diff --git a/docs/RBJ_8h_source.html b/docs/RBJ_8h_source.html index e3b54ec..14633ea 100644 --- a/docs/RBJ_8h_source.html +++ b/docs/RBJ_8h_source.html @@ -199,7 +199,7 @@
Iir::RBJ::BandPass1
Definition: RBJ.h:121
diff --git a/docs/State_8h_source.html b/docs/State_8h_source.html index 7618c14..ccf42f0 100644 --- a/docs/State_8h_source.html +++ b/docs/State_8h_source.html @@ -200,7 +200,7 @@
Iir::TransposedDirectFormII
Definition: State.h:137
diff --git a/docs/Types_8h_source.html b/docs/Types_8h_source.html index 37aeafd..d4c8b7f 100644 --- a/docs/Types_8h_source.html +++ b/docs/Types_8h_source.html @@ -180,7 +180,7 @@
Iir::PoleZeroPair
Definition: Types.h:100
diff --git a/docs/annotated.html b/docs/annotated.html index d9df9e6..3794c82 100644 --- a/docs/annotated.html +++ b/docs/annotated.html @@ -159,7 +159,7 @@ diff --git a/docs/classIir_1_1BandPassTransform-members.html b/docs/classIir_1_1BandPassTransform-members.html index 965b064..47cbcff 100644 --- a/docs/classIir_1_1BandPassTransform-members.html +++ b/docs/classIir_1_1BandPassTransform-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1BandPassTransform.html b/docs/classIir_1_1BandPassTransform.html index 42ab867..a7d6df4 100644 --- a/docs/classIir_1_1BandPassTransform.html +++ b/docs/classIir_1_1BandPassTransform.html @@ -82,7 +82,7 @@ diff --git a/docs/classIir_1_1BandStopTransform-members.html b/docs/classIir_1_1BandStopTransform-members.html index 03f4fc4..e660b25 100644 --- a/docs/classIir_1_1BandStopTransform-members.html +++ b/docs/classIir_1_1BandStopTransform-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1BandStopTransform.html b/docs/classIir_1_1BandStopTransform.html index 3d479f9..ebb5b6b 100644 --- a/docs/classIir_1_1BandStopTransform.html +++ b/docs/classIir_1_1BandStopTransform.html @@ -82,7 +82,7 @@ diff --git a/docs/classIir_1_1Biquad-members.html b/docs/classIir_1_1Biquad-members.html index d38702d..8b480cf 100644 --- a/docs/classIir_1_1Biquad-members.html +++ b/docs/classIir_1_1Biquad-members.html @@ -90,7 +90,7 @@ diff --git a/docs/classIir_1_1Biquad.html b/docs/classIir_1_1Biquad.html index bb4ce64..ccaa110 100644 --- a/docs/classIir_1_1Biquad.html +++ b/docs/classIir_1_1Biquad.html @@ -195,6 +195,7 @@

Returns
The filtered sample.
@@ -368,7 +369,7 @@

-

Returns the pole / zero Pairs as a vector

+

Returns the pole / zero Pairs as a vector.

@@ -387,7 +388,7 @@

-

Calculate filter response at the given normalized frequency.

+

Calculate filter response at the given normalized frequency and return the complex response.

Gets the frequency response of the Biquad

Parameters
@@ -582,7 +583,7 @@

diff --git a/docs/classIir_1_1Butterworth_1_1AnalogLowPass-members.html b/docs/classIir_1_1Butterworth_1_1AnalogLowPass-members.html index 53a1c86..8cb203b 100644 --- a/docs/classIir_1_1Butterworth_1_1AnalogLowPass-members.html +++ b/docs/classIir_1_1Butterworth_1_1AnalogLowPass-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1Butterworth_1_1AnalogLowPass.html b/docs/classIir_1_1Butterworth_1_1AnalogLowPass.html index ed3bd09..97e0535 100644 --- a/docs/classIir_1_1Butterworth_1_1AnalogLowPass.html +++ b/docs/classIir_1_1Butterworth_1_1AnalogLowPass.html @@ -91,7 +91,7 @@ diff --git a/docs/classIir_1_1Butterworth_1_1AnalogLowShelf-members.html b/docs/classIir_1_1Butterworth_1_1AnalogLowShelf-members.html index 8269625..46eb691 100644 --- a/docs/classIir_1_1Butterworth_1_1AnalogLowShelf-members.html +++ b/docs/classIir_1_1Butterworth_1_1AnalogLowShelf-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1Butterworth_1_1AnalogLowShelf.html b/docs/classIir_1_1Butterworth_1_1AnalogLowShelf.html index 59a3d69..abe3f79 100644 --- a/docs/classIir_1_1Butterworth_1_1AnalogLowShelf.html +++ b/docs/classIir_1_1Butterworth_1_1AnalogLowShelf.html @@ -87,7 +87,7 @@ diff --git a/docs/classIir_1_1Cascade-members.html b/docs/classIir_1_1Cascade-members.html index 3b9a1e1..d2ff019 100644 --- a/docs/classIir_1_1Cascade-members.html +++ b/docs/classIir_1_1Cascade-members.html @@ -79,7 +79,7 @@

normalizedFrequencyNormalised frequency (0 to 0.5)
diff --git a/docs/classIir_1_1Cascade.html b/docs/classIir_1_1Cascade.html index 52da108..690354d 100644 --- a/docs/classIir_1_1Cascade.html +++ b/docs/classIir_1_1Cascade.html @@ -73,6 +73,8 @@
Iir::Cascade Class Reference
+ +

#include <Cascade.h>

Inheritance diagram for Iir::Cascade:
@@ -123,7 +125,9 @@ std::vector< PoleZeroPairgetPoleZeros () const   -

Member Function Documentation

+

Detailed Description

+

Holds coefficients for a cascade of second order sections.

+

Member Function Documentation

◆ getNumStages()

@@ -191,7 +195,7 @@

-

returns a reference to a biquad

+

Returns a reference to a biquad

@@ -226,7 +230,7 @@

diff --git a/docs/classIir_1_1CascadeStages-members.html b/docs/classIir_1_1CascadeStages-members.html index 4899d29..cd601bf 100644 --- a/docs/classIir_1_1CascadeStages-members.html +++ b/docs/classIir_1_1CascadeStages-members.html @@ -78,7 +78,7 @@ diff --git a/docs/classIir_1_1CascadeStages.html b/docs/classIir_1_1CascadeStages.html index 1f50c21..c937180 100644 --- a/docs/classIir_1_1CascadeStages.html +++ b/docs/classIir_1_1CascadeStages.html @@ -124,6 +124,7 @@

Returns
filtered sample

@@ -195,7 +196,7 @@

diff --git a/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass-members.html b/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass-members.html index 6782656..f654f94 100644 --- a/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass-members.html +++ b/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass.html b/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass.html index b89eeb9..1c8141d 100644 --- a/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass.html +++ b/docs/classIir_1_1ChebyshevII_1_1AnalogLowPass.html @@ -87,7 +87,7 @@ diff --git a/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf-members.html b/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf-members.html index ae0d324..44cf166 100644 --- a/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf-members.html +++ b/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf.html b/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf.html index c897bc6..e32d09a 100644 --- a/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf.html +++ b/docs/classIir_1_1ChebyshevII_1_1AnalogLowShelf.html @@ -87,7 +87,7 @@ diff --git a/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass-members.html b/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass-members.html index b202672..74b00d5 100644 --- a/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass-members.html +++ b/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass.html b/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass.html index 56de6a2..41bdd49 100644 --- a/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass.html +++ b/docs/classIir_1_1ChebyshevI_1_1AnalogLowPass.html @@ -87,7 +87,7 @@ diff --git a/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf-members.html b/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf-members.html index 2a72a52..709714b 100644 --- a/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf-members.html +++ b/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf.html b/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf.html index 3890a89..1562067 100644 --- a/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf.html +++ b/docs/classIir_1_1ChebyshevI_1_1AnalogLowShelf.html @@ -87,7 +87,7 @@ diff --git a/docs/classIir_1_1DirectFormI-members.html b/docs/classIir_1_1DirectFormI-members.html index f58f941..b12f6b6 100644 --- a/docs/classIir_1_1DirectFormI-members.html +++ b/docs/classIir_1_1DirectFormI-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1DirectFormI.html b/docs/classIir_1_1DirectFormI.html index be79f05..da58212 100644 --- a/docs/classIir_1_1DirectFormI.html +++ b/docs/classIir_1_1DirectFormI.html @@ -86,7 +86,7 @@ diff --git a/docs/classIir_1_1DirectFormII-members.html b/docs/classIir_1_1DirectFormII-members.html index 7b98363..ececb31 100644 --- a/docs/classIir_1_1DirectFormII-members.html +++ b/docs/classIir_1_1DirectFormII-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1DirectFormII.html b/docs/classIir_1_1DirectFormII.html index cb0e248..aad96de 100644 --- a/docs/classIir_1_1DirectFormII.html +++ b/docs/classIir_1_1DirectFormII.html @@ -83,7 +83,7 @@ diff --git a/docs/classIir_1_1HighPassTransform-members.html b/docs/classIir_1_1HighPassTransform-members.html index 9997a34..569f831 100644 --- a/docs/classIir_1_1HighPassTransform-members.html +++ b/docs/classIir_1_1HighPassTransform-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1HighPassTransform.html b/docs/classIir_1_1HighPassTransform.html index bd9f279..4891ebf 100644 --- a/docs/classIir_1_1HighPassTransform.html +++ b/docs/classIir_1_1HighPassTransform.html @@ -82,7 +82,7 @@ diff --git a/docs/classIir_1_1Layout-members.html b/docs/classIir_1_1Layout-members.html index adf5bce..b086e77 100644 --- a/docs/classIir_1_1Layout-members.html +++ b/docs/classIir_1_1Layout-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1Layout.html b/docs/classIir_1_1Layout.html index 63d6367..355712e 100644 --- a/docs/classIir_1_1Layout.html +++ b/docs/classIir_1_1Layout.html @@ -84,7 +84,7 @@ diff --git a/docs/classIir_1_1LayoutBase-members.html b/docs/classIir_1_1LayoutBase-members.html index 548a545..faf4def 100644 --- a/docs/classIir_1_1LayoutBase-members.html +++ b/docs/classIir_1_1LayoutBase-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1LayoutBase.html b/docs/classIir_1_1LayoutBase.html index 3ba87c0..d09c105 100644 --- a/docs/classIir_1_1LayoutBase.html +++ b/docs/classIir_1_1LayoutBase.html @@ -95,7 +95,7 @@ diff --git a/docs/classIir_1_1LowPassTransform-members.html b/docs/classIir_1_1LowPassTransform-members.html index dfee718..77fddf4 100644 --- a/docs/classIir_1_1LowPassTransform-members.html +++ b/docs/classIir_1_1LowPassTransform-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1LowPassTransform.html b/docs/classIir_1_1LowPassTransform.html index 5dc3fac..080db90 100644 --- a/docs/classIir_1_1LowPassTransform.html +++ b/docs/classIir_1_1LowPassTransform.html @@ -83,7 +83,7 @@ diff --git a/docs/classIir_1_1PoleFilterBase-members.html b/docs/classIir_1_1PoleFilterBase-members.html index 2646c90..2efaf67 100644 --- a/docs/classIir_1_1PoleFilterBase-members.html +++ b/docs/classIir_1_1PoleFilterBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/classIir_1_1PoleFilterBase.html b/docs/classIir_1_1PoleFilterBase.html index 7c7f434..26612be 100644 --- a/docs/classIir_1_1PoleFilterBase.html +++ b/docs/classIir_1_1PoleFilterBase.html @@ -107,7 +107,7 @@ diff --git a/docs/classIir_1_1PoleFilterBase2-members.html b/docs/classIir_1_1PoleFilterBase2-members.html index f748eb0..6574e60 100644 --- a/docs/classIir_1_1PoleFilterBase2-members.html +++ b/docs/classIir_1_1PoleFilterBase2-members.html @@ -78,7 +78,7 @@ diff --git a/docs/classIir_1_1PoleFilterBase2.html b/docs/classIir_1_1PoleFilterBase2.html index f72ba0f..82eea67 100644 --- a/docs/classIir_1_1PoleFilterBase2.html +++ b/docs/classIir_1_1PoleFilterBase2.html @@ -127,7 +127,7 @@ diff --git a/docs/classIir_1_1TransposedDirectFormII-members.html b/docs/classIir_1_1TransposedDirectFormII-members.html index 30c242f..fb9265f 100644 --- a/docs/classIir_1_1TransposedDirectFormII-members.html +++ b/docs/classIir_1_1TransposedDirectFormII-members.html @@ -74,7 +74,7 @@ diff --git a/docs/classIir_1_1TransposedDirectFormII.html b/docs/classIir_1_1TransposedDirectFormII.html index 793bf86..83d7786 100644 --- a/docs/classIir_1_1TransposedDirectFormII.html +++ b/docs/classIir_1_1TransposedDirectFormII.html @@ -77,7 +77,7 @@ diff --git a/docs/classes.html b/docs/classes.html index 760f7fb..66cbef4 100644 --- a/docs/classes.html +++ b/docs/classes.html @@ -199,7 +199,7 @@ diff --git a/docs/dir_5231e4e0b49b19c482755f817f3ac47e.html b/docs/dir_5231e4e0b49b19c482755f817f3ac47e.html index f6ef8dd..5560ffb 100644 --- a/docs/dir_5231e4e0b49b19c482755f817f3ac47e.html +++ b/docs/dir_5231e4e0b49b19c482755f817f3ac47e.html @@ -72,7 +72,7 @@ diff --git a/docs/files.html b/docs/files.html index 179819a..1cd2ad8 100644 --- a/docs/files.html +++ b/docs/files.html @@ -87,7 +87,7 @@ diff --git a/docs/functions.html b/docs/functions.html index 3d5bc9a..5b1d156 100644 --- a/docs/functions.html +++ b/docs/functions.html @@ -197,7 +197,7 @@

- s -

    diff --git a/docs/functions_func.html b/docs/functions_func.html index 1b42f91..85107f1 100644 --- a/docs/functions_func.html +++ b/docs/functions_func.html @@ -197,7 +197,7 @@

    - s -

      diff --git a/docs/hierarchy.html b/docs/hierarchy.html index eecd266..24800f0 100644 --- a/docs/hierarchy.html +++ b/docs/hierarchy.html @@ -185,7 +185,7 @@ diff --git a/docs/index.html b/docs/index.html index f9f8f7d..91a0dae 100644 --- a/docs/index.html +++ b/docs/index.html @@ -68,7 +68,7 @@ diff --git a/docs/md_README.html b/docs/md_README.html index 6274885..bd27061 100644 --- a/docs/md_README.html +++ b/docs/md_README.html @@ -187,7 +187,7 @@

      Detailed documentation

      A PDF of all classes, methods and in particular setup functions is in the doc/pdf directory.

      -

      Run doxygen to generate the HTML documentation.

      +

      The online documentation is here: http://berndporr.github.io/iir1

      Example filter responses

      These responses have been generated by iirdemo.cpp in the /demo/ directory and then plotted with plot_impulse_fresponse.py.

      @@ -212,7 +212,7 @@

      diff --git a/docs/namespaceIir.html b/docs/namespaceIir.html index 12a674a..a4e2141 100644 --- a/docs/namespaceIir.html +++ b/docs/namespaceIir.html @@ -144,6 +144,14 @@

      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

      "A Collection of Useful C++ Classes for Digital Signal Processing" By Vinnie Falco and Bernd Porr

      Official project location: https://github.com/berndporr/iir1

      +

      See Documentation.cpp for contact information, notes, and bibliography.

      +
      +

      License: MIT License (http://www.opensource.org/licenses/mit-license.php) Copyright (c) 2009 by Vinnie Falco Copyright (c) 2011-2021 by Bernd Porr

      +

      Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

      +

      The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

      +

      THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

      +

      "A Collection of Useful C++ Classes for Digital Signal Processing" By Vinnie Falco and Bernd Porr

      +

      Official project location: https://github.com/berndporr/iir1

      See Documentation.txt for contact information, notes, and bibliography.


      License: MIT License (http://www.opensource.org/licenses/mit-license.php) Copyright (c) 2009 by Vinnie Falco Copyright (c) 2011 by Bernd Porr

      @@ -177,7 +185,7 @@

      diff --git a/docs/namespaceIir_1_1Butterworth.html b/docs/namespaceIir_1_1Butterworth.html index fa07f0c..4ad58e6 100644 --- a/docs/namespaceIir_1_1Butterworth.html +++ b/docs/namespaceIir_1_1Butterworth.html @@ -112,7 +112,7 @@ diff --git a/docs/namespaceIir_1_1ChebyshevI.html b/docs/namespaceIir_1_1ChebyshevI.html index 54a09a2..49c2e6d 100644 --- a/docs/namespaceIir_1_1ChebyshevI.html +++ b/docs/namespaceIir_1_1ChebyshevI.html @@ -112,7 +112,7 @@ diff --git a/docs/namespaceIir_1_1ChebyshevII.html b/docs/namespaceIir_1_1ChebyshevII.html index 902dd2d..8344703 100644 --- a/docs/namespaceIir_1_1ChebyshevII.html +++ b/docs/namespaceIir_1_1ChebyshevII.html @@ -112,7 +112,7 @@ diff --git a/docs/namespaceIir_1_1Custom.html b/docs/namespaceIir_1_1Custom.html index f3b6bc6..241d6bd 100644 --- a/docs/namespaceIir_1_1Custom.html +++ b/docs/namespaceIir_1_1Custom.html @@ -86,7 +86,7 @@ diff --git a/docs/namespacemembers.html b/docs/namespacemembers.html index 78ea7ef..a464589 100644 --- a/docs/namespacemembers.html +++ b/docs/namespacemembers.html @@ -69,7 +69,7 @@ diff --git a/docs/namespacemembers_enum.html b/docs/namespacemembers_enum.html index 37a8ab1..9a55f5e 100644 --- a/docs/namespacemembers_enum.html +++ b/docs/namespacemembers_enum.html @@ -69,7 +69,7 @@ diff --git a/docs/namespaces.html b/docs/namespaces.html index f3b86e2..0181a34 100644 --- a/docs/namespaces.html +++ b/docs/namespaces.html @@ -77,7 +77,7 @@ diff --git a/docs/pages.html b/docs/pages.html index 99068f5..431c1dc 100644 --- a/docs/pages.html +++ b/docs/pages.html @@ -73,7 +73,7 @@ diff --git a/docs/pdf/refman.pdf b/docs/pdf/refman.pdf index 312dc48..f167e80 100644 Binary files a/docs/pdf/refman.pdf and b/docs/pdf/refman.pdf differ diff --git a/docs/structIir_1_1BiquadPoleState-members.html b/docs/structIir_1_1BiquadPoleState-members.html index 2f9a86b..204d562 100644 --- a/docs/structIir_1_1BiquadPoleState-members.html +++ b/docs/structIir_1_1BiquadPoleState-members.html @@ -74,7 +74,7 @@ diff --git a/docs/structIir_1_1BiquadPoleState.html b/docs/structIir_1_1BiquadPoleState.html index 82ecb6d..f33ed1d 100644 --- a/docs/structIir_1_1BiquadPoleState.html +++ b/docs/structIir_1_1BiquadPoleState.html @@ -91,7 +91,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandPass-members.html b/docs/structIir_1_1Butterworth_1_1BandPass-members.html index 545ffbc..d2fcac0 100644 --- a/docs/structIir_1_1Butterworth_1_1BandPass-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandPass.html b/docs/structIir_1_1Butterworth_1_1BandPass.html index 33ee9a3..6fd80a6 100644 --- a/docs/structIir_1_1Butterworth_1_1BandPass.html +++ b/docs/structIir_1_1Butterworth_1_1BandPass.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1BandPassBase-members.html b/docs/structIir_1_1Butterworth_1_1BandPassBase-members.html index 215ce67..a843948 100644 --- a/docs/structIir_1_1Butterworth_1_1BandPassBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandPassBase.html b/docs/structIir_1_1Butterworth_1_1BandPassBase.html index 66a5a64..12b86d0 100644 --- a/docs/structIir_1_1Butterworth_1_1BandPassBase.html +++ b/docs/structIir_1_1Butterworth_1_1BandPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandShelf-members.html b/docs/structIir_1_1Butterworth_1_1BandShelf-members.html index b46dd81..43c67d7 100644 --- a/docs/structIir_1_1Butterworth_1_1BandShelf-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandShelf.html b/docs/structIir_1_1Butterworth_1_1BandShelf.html index 58d7c01..2079c22 100644 --- a/docs/structIir_1_1Butterworth_1_1BandShelf.html +++ b/docs/structIir_1_1Butterworth_1_1BandShelf.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1BandShelfBase-members.html b/docs/structIir_1_1Butterworth_1_1BandShelfBase-members.html index 22537cb..b1f2cb7 100644 --- a/docs/structIir_1_1Butterworth_1_1BandShelfBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandShelfBase.html b/docs/structIir_1_1Butterworth_1_1BandShelfBase.html index 38d8f22..abd2e14 100644 --- a/docs/structIir_1_1Butterworth_1_1BandShelfBase.html +++ b/docs/structIir_1_1Butterworth_1_1BandShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandStop-members.html b/docs/structIir_1_1Butterworth_1_1BandStop-members.html index f0ea609..d528736 100644 --- a/docs/structIir_1_1Butterworth_1_1BandStop-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandStop-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandStop.html b/docs/structIir_1_1Butterworth_1_1BandStop.html index 6219022..764dc3e 100644 --- a/docs/structIir_1_1Butterworth_1_1BandStop.html +++ b/docs/structIir_1_1Butterworth_1_1BandStop.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1BandStopBase-members.html b/docs/structIir_1_1Butterworth_1_1BandStopBase-members.html index cb4794c..a770b6c 100644 --- a/docs/structIir_1_1Butterworth_1_1BandStopBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1BandStopBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1BandStopBase.html b/docs/structIir_1_1Butterworth_1_1BandStopBase.html index b1185f6..4f0fa22 100644 --- a/docs/structIir_1_1Butterworth_1_1BandStopBase.html +++ b/docs/structIir_1_1Butterworth_1_1BandStopBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighPass-members.html b/docs/structIir_1_1Butterworth_1_1HighPass-members.html index c7dca8f..69ed89b 100644 --- a/docs/structIir_1_1Butterworth_1_1HighPass-members.html +++ b/docs/structIir_1_1Butterworth_1_1HighPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighPass.html b/docs/structIir_1_1Butterworth_1_1HighPass.html index f6205e2..4ab68b1 100644 --- a/docs/structIir_1_1Butterworth_1_1HighPass.html +++ b/docs/structIir_1_1Butterworth_1_1HighPass.html @@ -214,7 +214,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1HighPassBase-members.html b/docs/structIir_1_1Butterworth_1_1HighPassBase-members.html index 7f7ea3d..5b9a031 100644 --- a/docs/structIir_1_1Butterworth_1_1HighPassBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1HighPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighPassBase.html b/docs/structIir_1_1Butterworth_1_1HighPassBase.html index 43d2aea..ea56834 100644 --- a/docs/structIir_1_1Butterworth_1_1HighPassBase.html +++ b/docs/structIir_1_1Butterworth_1_1HighPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighShelf-members.html b/docs/structIir_1_1Butterworth_1_1HighShelf-members.html index 1a411c1..4ba093a 100644 --- a/docs/structIir_1_1Butterworth_1_1HighShelf-members.html +++ b/docs/structIir_1_1Butterworth_1_1HighShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighShelf.html b/docs/structIir_1_1Butterworth_1_1HighShelf.html index e512eae..559cd1a 100644 --- a/docs/structIir_1_1Butterworth_1_1HighShelf.html +++ b/docs/structIir_1_1Butterworth_1_1HighShelf.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1HighShelfBase-members.html b/docs/structIir_1_1Butterworth_1_1HighShelfBase-members.html index a7f423f..635d179 100644 --- a/docs/structIir_1_1Butterworth_1_1HighShelfBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1HighShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1HighShelfBase.html b/docs/structIir_1_1Butterworth_1_1HighShelfBase.html index adbfdc7..20b742d 100644 --- a/docs/structIir_1_1Butterworth_1_1HighShelfBase.html +++ b/docs/structIir_1_1Butterworth_1_1HighShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowPass-members.html b/docs/structIir_1_1Butterworth_1_1LowPass-members.html index 6fa0c34..3c2a4c9 100644 --- a/docs/structIir_1_1Butterworth_1_1LowPass-members.html +++ b/docs/structIir_1_1Butterworth_1_1LowPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowPass.html b/docs/structIir_1_1Butterworth_1_1LowPass.html index 997eb59..64cccda 100644 --- a/docs/structIir_1_1Butterworth_1_1LowPass.html +++ b/docs/structIir_1_1Butterworth_1_1LowPass.html @@ -214,7 +214,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1LowPassBase-members.html b/docs/structIir_1_1Butterworth_1_1LowPassBase-members.html index afe42bc..d843bd0 100644 --- a/docs/structIir_1_1Butterworth_1_1LowPassBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1LowPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowPassBase.html b/docs/structIir_1_1Butterworth_1_1LowPassBase.html index 22431ff..8a047b3 100644 --- a/docs/structIir_1_1Butterworth_1_1LowPassBase.html +++ b/docs/structIir_1_1Butterworth_1_1LowPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowShelf-members.html b/docs/structIir_1_1Butterworth_1_1LowShelf-members.html index 0c4555e..a418d03 100644 --- a/docs/structIir_1_1Butterworth_1_1LowShelf-members.html +++ b/docs/structIir_1_1Butterworth_1_1LowShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowShelf.html b/docs/structIir_1_1Butterworth_1_1LowShelf.html index 4679fb3..b253574 100644 --- a/docs/structIir_1_1Butterworth_1_1LowShelf.html +++ b/docs/structIir_1_1Butterworth_1_1LowShelf.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1Butterworth_1_1LowShelfBase-members.html b/docs/structIir_1_1Butterworth_1_1LowShelfBase-members.html index ea2eb65..fe43d05 100644 --- a/docs/structIir_1_1Butterworth_1_1LowShelfBase-members.html +++ b/docs/structIir_1_1Butterworth_1_1LowShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1Butterworth_1_1LowShelfBase.html b/docs/structIir_1_1Butterworth_1_1LowShelfBase.html index da9b9d4..c18e216 100644 --- a/docs/structIir_1_1Butterworth_1_1LowShelfBase.html +++ b/docs/structIir_1_1Butterworth_1_1LowShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1Cascade_1_1Storage-members.html b/docs/structIir_1_1Cascade_1_1Storage-members.html index 4269a57..443d50d 100644 --- a/docs/structIir_1_1Cascade_1_1Storage-members.html +++ b/docs/structIir_1_1Cascade_1_1Storage-members.html @@ -76,7 +76,7 @@ diff --git a/docs/structIir_1_1Cascade_1_1Storage.html b/docs/structIir_1_1Cascade_1_1Storage.html index 96eb2eb..1d82a38 100644 --- a/docs/structIir_1_1Cascade_1_1Storage.html +++ b/docs/structIir_1_1Cascade_1_1Storage.html @@ -132,7 +132,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1BandPass-members.html b/docs/structIir_1_1ChebyshevII_1_1BandPass-members.html index e4bbda9..399ba38 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandPass-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandPass.html b/docs/structIir_1_1ChebyshevII_1_1BandPass.html index 2ca6058..2fe52f3 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandPass.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandPass.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1BandPassBase-members.html b/docs/structIir_1_1ChebyshevII_1_1BandPassBase-members.html index 1c9c232..be0caa2 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandPassBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandPassBase.html b/docs/structIir_1_1ChebyshevII_1_1BandPassBase.html index 8f5272b..bf2cae0 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandPassBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandShelf-members.html b/docs/structIir_1_1ChebyshevII_1_1BandShelf-members.html index 0af8a63..e11e10c 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandShelf-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandShelf.html b/docs/structIir_1_1ChebyshevII_1_1BandShelf.html index 95df42b..4e9d514 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandShelf.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandShelf.html @@ -256,7 +256,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1BandShelfBase-members.html b/docs/structIir_1_1ChebyshevII_1_1BandShelfBase-members.html index e390e7f..4e2422d 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandShelfBase.html b/docs/structIir_1_1ChebyshevII_1_1BandShelfBase.html index ca2b562..603c3f8 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandShelfBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandStop-members.html b/docs/structIir_1_1ChebyshevII_1_1BandStop-members.html index 0ab6842..b94a5e2 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandStop-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandStop-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandStop.html b/docs/structIir_1_1ChebyshevII_1_1BandStop.html index f201030..678ac87 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandStop.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandStop.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1BandStopBase-members.html b/docs/structIir_1_1ChebyshevII_1_1BandStopBase-members.html index 3b6eefd..bd7447c 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandStopBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandStopBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1BandStopBase.html b/docs/structIir_1_1ChebyshevII_1_1BandStopBase.html index 371f81d..03231e2 100644 --- a/docs/structIir_1_1ChebyshevII_1_1BandStopBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1BandStopBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighPass-members.html b/docs/structIir_1_1ChebyshevII_1_1HighPass-members.html index ffec90b..e648467 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighPass-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighPass.html b/docs/structIir_1_1ChebyshevII_1_1HighPass.html index a7a375e..f2af00b 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighPass.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighPass.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1HighPassBase-members.html b/docs/structIir_1_1ChebyshevII_1_1HighPassBase-members.html index 74a5a3b..63a4c4c 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighPassBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighPassBase.html b/docs/structIir_1_1ChebyshevII_1_1HighPassBase.html index fdf7c55..c15893d 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighPassBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighShelf-members.html b/docs/structIir_1_1ChebyshevII_1_1HighShelf-members.html index b2371d1..d44dc7d 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighShelf-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighShelf.html b/docs/structIir_1_1ChebyshevII_1_1HighShelf.html index 43cdbef..a0a5422 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighShelf.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighShelf.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1HighShelfBase-members.html b/docs/structIir_1_1ChebyshevII_1_1HighShelfBase-members.html index 4d070dc..10ab406 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1HighShelfBase.html b/docs/structIir_1_1ChebyshevII_1_1HighShelfBase.html index 4c68d78..bb84908 100644 --- a/docs/structIir_1_1ChebyshevII_1_1HighShelfBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1HighShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowPass-members.html b/docs/structIir_1_1ChebyshevII_1_1LowPass-members.html index 22c0c8d..e9bc24c 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowPass-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowPass.html b/docs/structIir_1_1ChebyshevII_1_1LowPass.html index 556bd08..9d6ab12 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowPass.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowPass.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1LowPassBase-members.html b/docs/structIir_1_1ChebyshevII_1_1LowPassBase-members.html index 3d32270..dfcdcad 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowPassBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowPassBase.html b/docs/structIir_1_1ChebyshevII_1_1LowPassBase.html index 128c39d..2b685b5 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowPassBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowShelf-members.html b/docs/structIir_1_1ChebyshevII_1_1LowShelf-members.html index 6fd9329..e10e8d8 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowShelf-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowShelf.html b/docs/structIir_1_1ChebyshevII_1_1LowShelf.html index 6bbeda2..52852d8 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowShelf.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowShelf.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevII_1_1LowShelfBase-members.html b/docs/structIir_1_1ChebyshevII_1_1LowShelfBase-members.html index cdbc586..a946bc2 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevII_1_1LowShelfBase.html b/docs/structIir_1_1ChebyshevII_1_1LowShelfBase.html index 043ac84..08dab61 100644 --- a/docs/structIir_1_1ChebyshevII_1_1LowShelfBase.html +++ b/docs/structIir_1_1ChebyshevII_1_1LowShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandPass-members.html b/docs/structIir_1_1ChebyshevI_1_1BandPass-members.html index 9d85b81..4631884 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandPass-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandPass.html b/docs/structIir_1_1ChebyshevI_1_1BandPass.html index bbb96f6..d027cd4 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandPass.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandPass.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1BandPassBase-members.html b/docs/structIir_1_1ChebyshevI_1_1BandPassBase-members.html index 46b8901..1509ec1 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandPassBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandPassBase.html b/docs/structIir_1_1ChebyshevI_1_1BandPassBase.html index a4b207f..e4f6a4b 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandPassBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandShelf-members.html b/docs/structIir_1_1ChebyshevI_1_1BandShelf-members.html index 94f2ffc..459dffb 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandShelf-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandShelf.html b/docs/structIir_1_1ChebyshevI_1_1BandShelf.html index d311dfa..1798949 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandShelf.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandShelf.html @@ -256,7 +256,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1BandShelfBase-members.html b/docs/structIir_1_1ChebyshevI_1_1BandShelfBase-members.html index 480c5a5..648fc84 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandShelfBase.html b/docs/structIir_1_1ChebyshevI_1_1BandShelfBase.html index 1b970d9..2c0a579 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandShelfBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandStop-members.html b/docs/structIir_1_1ChebyshevI_1_1BandStop-members.html index bae2e50..669cf07 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandStop-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandStop-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandStop.html b/docs/structIir_1_1ChebyshevI_1_1BandStop.html index 79492cd..abaf0ad 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandStop.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandStop.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1BandStopBase-members.html b/docs/structIir_1_1ChebyshevI_1_1BandStopBase-members.html index 541db16..489e2e5 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandStopBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandStopBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1BandStopBase.html b/docs/structIir_1_1ChebyshevI_1_1BandStopBase.html index a7755da..50c8c62 100644 --- a/docs/structIir_1_1ChebyshevI_1_1BandStopBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1BandStopBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighPass-members.html b/docs/structIir_1_1ChebyshevI_1_1HighPass-members.html index e4b3d46..3b5dd0c 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighPass-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighPass.html b/docs/structIir_1_1ChebyshevI_1_1HighPass.html index 68e8ca3..54a6e13 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighPass.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighPass.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1HighPassBase-members.html b/docs/structIir_1_1ChebyshevI_1_1HighPassBase-members.html index 7cc854f..53dde09 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighPassBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighPassBase.html b/docs/structIir_1_1ChebyshevI_1_1HighPassBase.html index 204bbab..bdc9f23 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighPassBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighShelf-members.html b/docs/structIir_1_1ChebyshevI_1_1HighShelf-members.html index ad07c7d..539d5b1 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighShelf-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighShelf.html b/docs/structIir_1_1ChebyshevI_1_1HighShelf.html index 90db8f0..bc99c75 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighShelf.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighShelf.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1HighShelfBase-members.html b/docs/structIir_1_1ChebyshevI_1_1HighShelfBase-members.html index 6a591cd..cba3793 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1HighShelfBase.html b/docs/structIir_1_1ChebyshevI_1_1HighShelfBase.html index 4197587..c3ec714 100644 --- a/docs/structIir_1_1ChebyshevI_1_1HighShelfBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1HighShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowPass-members.html b/docs/structIir_1_1ChebyshevI_1_1LowPass-members.html index 837fa7b..0b8eedf 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowPass-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowPass-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowPass.html b/docs/structIir_1_1ChebyshevI_1_1LowPass.html index 4ee09b3..eb925aa 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowPass.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowPass.html @@ -228,7 +228,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1LowPassBase-members.html b/docs/structIir_1_1ChebyshevI_1_1LowPassBase-members.html index 75509ea..6d1ec8b 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowPassBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowPassBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowPassBase.html b/docs/structIir_1_1ChebyshevI_1_1LowPassBase.html index 50a755a..77f28a9 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowPassBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowPassBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowShelf-members.html b/docs/structIir_1_1ChebyshevI_1_1LowShelf-members.html index 1011ab3..3b492c0 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowShelf-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowShelf-members.html @@ -80,7 +80,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowShelf.html b/docs/structIir_1_1ChebyshevI_1_1LowShelf.html index a640846..5ada124 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowShelf.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowShelf.html @@ -242,7 +242,7 @@

      diff --git a/docs/structIir_1_1ChebyshevI_1_1LowShelfBase-members.html b/docs/structIir_1_1ChebyshevI_1_1LowShelfBase-members.html index 6db214a..fe0cd47 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowShelfBase-members.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowShelfBase-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1ChebyshevI_1_1LowShelfBase.html b/docs/structIir_1_1ChebyshevI_1_1LowShelfBase.html index b062625..7c9b554 100644 --- a/docs/structIir_1_1ChebyshevI_1_1LowShelfBase.html +++ b/docs/structIir_1_1ChebyshevI_1_1LowShelfBase.html @@ -102,7 +102,7 @@ diff --git a/docs/structIir_1_1ComplexPair-members.html b/docs/structIir_1_1ComplexPair-members.html index 33a5eec..4fedb06 100644 --- a/docs/structIir_1_1ComplexPair-members.html +++ b/docs/structIir_1_1ComplexPair-members.html @@ -76,7 +76,7 @@ diff --git a/docs/structIir_1_1ComplexPair.html b/docs/structIir_1_1ComplexPair.html index ef619ee..ce04b10 100644 --- a/docs/structIir_1_1ComplexPair.html +++ b/docs/structIir_1_1ComplexPair.html @@ -121,7 +121,7 @@

      diff --git a/docs/structIir_1_1Custom_1_1OnePole-members.html b/docs/structIir_1_1Custom_1_1OnePole-members.html index e444242..f52dd2a 100644 --- a/docs/structIir_1_1Custom_1_1OnePole-members.html +++ b/docs/structIir_1_1Custom_1_1OnePole-members.html @@ -90,7 +90,7 @@ diff --git a/docs/structIir_1_1Custom_1_1OnePole.html b/docs/structIir_1_1Custom_1_1OnePole.html index 884ae70..3d698dd 100644 --- a/docs/structIir_1_1Custom_1_1OnePole.html +++ b/docs/structIir_1_1Custom_1_1OnePole.html @@ -134,7 +134,7 @@ diff --git a/docs/structIir_1_1Custom_1_1SOSCascade-members.html b/docs/structIir_1_1Custom_1_1SOSCascade-members.html index 923099e..eae09ca 100644 --- a/docs/structIir_1_1Custom_1_1SOSCascade-members.html +++ b/docs/structIir_1_1Custom_1_1SOSCascade-members.html @@ -81,7 +81,7 @@ diff --git a/docs/structIir_1_1Custom_1_1SOSCascade.html b/docs/structIir_1_1Custom_1_1SOSCascade.html index 26c7a9c..c6835c0 100644 --- a/docs/structIir_1_1Custom_1_1SOSCascade.html +++ b/docs/structIir_1_1Custom_1_1SOSCascade.html @@ -207,7 +207,7 @@

      diff --git a/docs/structIir_1_1Custom_1_1TwoPole-members.html b/docs/structIir_1_1Custom_1_1TwoPole-members.html index f990a97..943ad0d 100644 --- a/docs/structIir_1_1Custom_1_1TwoPole-members.html +++ b/docs/structIir_1_1Custom_1_1TwoPole-members.html @@ -90,7 +90,7 @@ diff --git a/docs/structIir_1_1Custom_1_1TwoPole.html b/docs/structIir_1_1Custom_1_1TwoPole.html index 9bd476b..01b82dd 100644 --- a/docs/structIir_1_1Custom_1_1TwoPole.html +++ b/docs/structIir_1_1Custom_1_1TwoPole.html @@ -135,7 +135,7 @@ diff --git a/docs/structIir_1_1PoleFilter-members.html b/docs/structIir_1_1PoleFilter-members.html index 9e592b2..e59b580 100644 --- a/docs/structIir_1_1PoleFilter-members.html +++ b/docs/structIir_1_1PoleFilter-members.html @@ -78,7 +78,7 @@ diff --git a/docs/structIir_1_1PoleFilter.html b/docs/structIir_1_1PoleFilter.html index 88d28dd..990c956 100644 --- a/docs/structIir_1_1PoleFilter.html +++ b/docs/structIir_1_1PoleFilter.html @@ -104,7 +104,7 @@ diff --git a/docs/structIir_1_1PoleZeroPair-members.html b/docs/structIir_1_1PoleZeroPair-members.html index e0d66ee..357eff0 100644 --- a/docs/structIir_1_1PoleZeroPair-members.html +++ b/docs/structIir_1_1PoleZeroPair-members.html @@ -74,7 +74,7 @@ diff --git a/docs/structIir_1_1PoleZeroPair.html b/docs/structIir_1_1PoleZeroPair.html index b51c814..ccf3f46 100644 --- a/docs/structIir_1_1PoleZeroPair.html +++ b/docs/structIir_1_1PoleZeroPair.html @@ -90,7 +90,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1AllPass-members.html b/docs/structIir_1_1RBJ_1_1AllPass-members.html index 9543ebf..6245772 100644 --- a/docs/structIir_1_1RBJ_1_1AllPass-members.html +++ b/docs/structIir_1_1RBJ_1_1AllPass-members.html @@ -93,7 +93,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1AllPass.html b/docs/structIir_1_1RBJ_1_1AllPass.html index 0b42896..36894b4 100644 --- a/docs/structIir_1_1RBJ_1_1AllPass.html +++ b/docs/structIir_1_1RBJ_1_1AllPass.html @@ -138,7 +138,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1BandPass1-members.html b/docs/structIir_1_1RBJ_1_1BandPass1-members.html index 47be7df..2730876 100644 --- a/docs/structIir_1_1RBJ_1_1BandPass1-members.html +++ b/docs/structIir_1_1RBJ_1_1BandPass1-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1BandPass1.html b/docs/structIir_1_1RBJ_1_1BandPass1.html index 7c7273c..b1e823a 100644 --- a/docs/structIir_1_1RBJ_1_1BandPass1.html +++ b/docs/structIir_1_1RBJ_1_1BandPass1.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1BandPass2-members.html b/docs/structIir_1_1RBJ_1_1BandPass2-members.html index 2e3bf3c..d64f07a 100644 --- a/docs/structIir_1_1RBJ_1_1BandPass2-members.html +++ b/docs/structIir_1_1RBJ_1_1BandPass2-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1BandPass2.html b/docs/structIir_1_1RBJ_1_1BandPass2.html index 52abaae..f5c7f61 100644 --- a/docs/structIir_1_1RBJ_1_1BandPass2.html +++ b/docs/structIir_1_1RBJ_1_1BandPass2.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1BandShelf-members.html b/docs/structIir_1_1RBJ_1_1BandShelf-members.html index 367e777..ca343a8 100644 --- a/docs/structIir_1_1RBJ_1_1BandShelf-members.html +++ b/docs/structIir_1_1RBJ_1_1BandShelf-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1BandShelf.html b/docs/structIir_1_1RBJ_1_1BandShelf.html index 287cdae..3302160 100644 --- a/docs/structIir_1_1RBJ_1_1BandShelf.html +++ b/docs/structIir_1_1RBJ_1_1BandShelf.html @@ -195,7 +195,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1BandStop-members.html b/docs/structIir_1_1RBJ_1_1BandStop-members.html index b5ee664..fdbfcd0 100644 --- a/docs/structIir_1_1RBJ_1_1BandStop-members.html +++ b/docs/structIir_1_1RBJ_1_1BandStop-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1BandStop.html b/docs/structIir_1_1RBJ_1_1BandStop.html index 1a39af5..316f8ce 100644 --- a/docs/structIir_1_1RBJ_1_1BandStop.html +++ b/docs/structIir_1_1RBJ_1_1BandStop.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1HighPass-members.html b/docs/structIir_1_1RBJ_1_1HighPass-members.html index 52e9a98..f8f588c 100644 --- a/docs/structIir_1_1RBJ_1_1HighPass-members.html +++ b/docs/structIir_1_1RBJ_1_1HighPass-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1HighPass.html b/docs/structIir_1_1RBJ_1_1HighPass.html index 3b3cc41..586d547 100644 --- a/docs/structIir_1_1RBJ_1_1HighPass.html +++ b/docs/structIir_1_1RBJ_1_1HighPass.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1HighShelf-members.html b/docs/structIir_1_1RBJ_1_1HighShelf-members.html index a43f633..9f4ff2f 100644 --- a/docs/structIir_1_1RBJ_1_1HighShelf-members.html +++ b/docs/structIir_1_1RBJ_1_1HighShelf-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1HighShelf.html b/docs/structIir_1_1RBJ_1_1HighShelf.html index 3f5686d..ecb6028 100644 --- a/docs/structIir_1_1RBJ_1_1HighShelf.html +++ b/docs/structIir_1_1RBJ_1_1HighShelf.html @@ -195,7 +195,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1IIRNotch-members.html b/docs/structIir_1_1RBJ_1_1IIRNotch-members.html index 2a62815..8ca6e53 100644 --- a/docs/structIir_1_1RBJ_1_1IIRNotch-members.html +++ b/docs/structIir_1_1RBJ_1_1IIRNotch-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1IIRNotch.html b/docs/structIir_1_1RBJ_1_1IIRNotch.html index 40b54a5..c5b959d 100644 --- a/docs/structIir_1_1RBJ_1_1IIRNotch.html +++ b/docs/structIir_1_1RBJ_1_1IIRNotch.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1LowPass-members.html b/docs/structIir_1_1RBJ_1_1LowPass-members.html index 771e603..d03ecce 100644 --- a/docs/structIir_1_1RBJ_1_1LowPass-members.html +++ b/docs/structIir_1_1RBJ_1_1LowPass-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1LowPass.html b/docs/structIir_1_1RBJ_1_1LowPass.html index d19fb34..f8d5d38 100644 --- a/docs/structIir_1_1RBJ_1_1LowPass.html +++ b/docs/structIir_1_1RBJ_1_1LowPass.html @@ -188,7 +188,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1LowShelf-members.html b/docs/structIir_1_1RBJ_1_1LowShelf-members.html index be68a3b..13de77b 100644 --- a/docs/structIir_1_1RBJ_1_1LowShelf-members.html +++ b/docs/structIir_1_1RBJ_1_1LowShelf-members.html @@ -94,7 +94,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1LowShelf.html b/docs/structIir_1_1RBJ_1_1LowShelf.html index c1aae63..20f64f7 100644 --- a/docs/structIir_1_1RBJ_1_1LowShelf.html +++ b/docs/structIir_1_1RBJ_1_1LowShelf.html @@ -195,7 +195,7 @@

      diff --git a/docs/structIir_1_1RBJ_1_1RBJbase-members.html b/docs/structIir_1_1RBJ_1_1RBJbase-members.html index 447b560..7699e18 100644 --- a/docs/structIir_1_1RBJ_1_1RBJbase-members.html +++ b/docs/structIir_1_1RBJ_1_1RBJbase-members.html @@ -93,7 +93,7 @@ diff --git a/docs/structIir_1_1RBJ_1_1RBJbase.html b/docs/structIir_1_1RBJ_1_1RBJbase.html index 5a7e09f..70a4231 100644 --- a/docs/structIir_1_1RBJ_1_1RBJbase.html +++ b/docs/structIir_1_1RBJ_1_1RBJbase.html @@ -150,7 +150,7 @@ diff --git a/iir/Biquad.h b/iir/Biquad.h index e267507..36e0b3c 100644 --- a/iir/Biquad.h +++ b/iir/Biquad.h @@ -53,12 +53,13 @@ namespace Iir { { public: /** - * Calculate filter response at the given normalized frequency. + * Calculate filter response at the given normalized frequency + * and return the complex response. **/ complex_t response (double normalizedFrequency) const; /** - * Returns the pole / zero Pairs as a vector + * Returns the pole / zero Pairs as a vector. **/ std::vector getPoleZeros () const; @@ -96,6 +97,7 @@ namespace Iir { * Filter a sample with the coefficients provided here and the State provided as an argument. * \param s The sample to be filtered. * \param state The Delay lines (instance of a state from State.h) + * \return The filtered sample. **/ template inline double filter(double s, StateType& state) const diff --git a/iir/Cascade.h b/iir/Cascade.h index b4365c6..642b5f3 100644 --- a/iir/Cascade.h +++ b/iir/Cascade.h @@ -12,7 +12,7 @@ * * License: MIT License (http://www.opensource.org/licenses/mit-license.php) * Copyright (c) 2009 by Vinnie Falco - * Copyright (c) 2011 by Bernd Porr + * Copyright (c) 2011-2021 by Bernd Porr * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -43,15 +43,14 @@ #include namespace Iir { - -/* + +/** * Holds coefficients for a cascade of second order sections. - * - */ + **/ class DllExport Cascade { public: - + /** * Pointer to an array of Biquads **/ @@ -81,7 +80,7 @@ namespace Iir { } /** - * returns a reference to a biquad + * Returns a reference to a biquad **/ const Biquad& operator[] (int index) { @@ -116,67 +115,71 @@ namespace Iir { Biquad* m_stageArray; }; -//------------------------------------------------------------------------------ + +//------------------------------------------------------------------------------ + /** * Storage for Cascade: This holds a chain of 2nd order filters * with its coefficients. **/ template - class DllExport CascadeStages { + class DllExport CascadeStages { public: - /** - * Resets all biquads (i.e. the delay lines but not the coefficients) - **/ - void reset () - { - for (auto &state: m_states) - state.reset(); - } - + /** + * Resets all biquads (i.e. the delay lines but not the coefficients) + **/ + void reset () + { + for (auto &state: m_states) + state.reset(); + } + public: - /** - * Sets the coefficients of the whole chain of - * biquads. - * \param sosCoefficients 2D array in Python style sos ordering: 0-2: FIR, 3-5: IIR coeff. - **/ - void setup (const double (&sosCoefficients)[MaxStages][6]) { - for (int i = 0; i < MaxStages; i++) { - m_stages[i].setCoefficients( - sosCoefficients[i][3], - sosCoefficients[i][4], - sosCoefficients[i][5], - sosCoefficients[i][0], - sosCoefficients[i][1], - sosCoefficients[i][2]); - } + /** + * Sets the coefficients of the whole chain of + * biquads. + * \param sosCoefficients 2D array in Python style sos ordering: 0-2: FIR, 3-5: IIR coeff. + **/ + void setup (const double (&sosCoefficients)[MaxStages][6]) { + for (int i = 0; i < MaxStages; i++) { + m_stages[i].setCoefficients( + sosCoefficients[i][3], + sosCoefficients[i][4], + sosCoefficients[i][5], + sosCoefficients[i][0], + sosCoefficients[i][1], + sosCoefficients[i][2]); } + } public: - /** - * Filters one sample through the whole chain of biquads and return the result - * \param in Sample to be filtered - **/ - template - inline Sample filter(const Sample in) - { - double out = in; - StateType* state = m_states; - for (const auto &stage: m_stages) - out = (state++)->filter(out, stage); - return static_cast (out); - } - - Cascade::Storage getCascadeStorage() - { - return Cascade::Storage (MaxStages, m_stages); - } - + /** + * Filters one sample through the whole chain of biquads and return the result + * \param in Sample to be filtered + * \return filtered sample + **/ + template + inline Sample filter(const Sample in) + { + double out = in; + StateType* state = m_states; + for (const auto &stage: m_stages) + out = (state++)->filter(out, stage); + return static_cast (out); + } + + Cascade::Storage getCascadeStorage() + { + return Cascade::Storage (MaxStages, m_stages); + } + + private: - Biquad m_stages[MaxStages]; - StateType m_states[MaxStages]; + Biquad m_stages[MaxStages]; + StateType m_states[MaxStages]; }; - + } #endif