SPUC  3.0
Public Member Functions | Protected Attributes | List of all members
SPUC::iir_allpass1< Numeric, Coeff > Class Template Reference

Template Class for IIR Filter using 2 1st order sections. More...

#include <iir_allpass1.h>

Collaboration diagram for SPUC::iir_allpass1< Numeric, Coeff >:
Collaboration graph
[legend]

Public Member Functions

 iir_allpass1 (Coeff c0, Coeff c1, long round_bits=0)
 
 iir_allpass1 (float_type fp)
 
void reset ()
 reset More...
 
Numeric clock (Numeric input)
 Shift inputs by one time sample and place new sample into array. More...
 

Protected Attributes

int Delay
 The 2 1st order allpass filters. More...
 
allpass_1< Numeric, Coeff > A0
 
allpass_1< Numeric, Coeff > A1
 
Numeric prev_input
 

Detailed Description

template<class Numeric, class Coeff = float_type>
class SPUC::iir_allpass1< Numeric, Coeff >

Template Class for IIR Filter using 2 1st order sections.

The filter is a combination of 2 Allpass sections of the form G(z) = (a*z*z + 1)/(z*z+a) so that the overall H(z) is H(z) = 1/z*G(z,a0) + G(z,a1) The combination of these two allpass functions result in a lowpass/highpass complementary pair. The class only uses the low pass filter. This class needs the allpass_1 class

Author
Tony Kirke
allpass_halfband.gif

Constructor & Destructor Documentation

template<class Numeric , class Coeff = float_type>
SPUC::iir_allpass1< Numeric, Coeff >::iir_allpass1 ( Coeff  c0,
Coeff  c1,
long  round_bits = 0 
)
inline

References SPUC::iir_allpass1< Numeric, Coeff >::reset().

Here is the call graph for this function:

template<class Numeric , class Coeff = float_type>
SPUC::iir_allpass1< Numeric, Coeff >::iir_allpass1 ( float_type  fp)
inline

Member Function Documentation

template<class Numeric , class Coeff = float_type>
Numeric SPUC::iir_allpass1< Numeric, Coeff >::clock ( Numeric  input)
inline

Shift inputs by one time sample and place new sample into array.

References SPUC::allpass_1< Numeric, Coeff >::clock(), and SPUC::round().

Here is the call graph for this function:

template<class Numeric , class Coeff = float_type>
void SPUC::iir_allpass1< Numeric, Coeff >::reset ( void  )
inline

reset

References SPUC::allpass_1< Numeric, Coeff >::reset().

Referenced by SPUC::iir_allpass1< Numeric, Coeff >::iir_allpass1().

Here is the call graph for this function:

Member Data Documentation

template<class Numeric , class Coeff = float_type>
allpass_1<Numeric,Coeff> SPUC::iir_allpass1< Numeric, Coeff >::A0
protected
template<class Numeric , class Coeff = float_type>
allpass_1<Numeric,Coeff> SPUC::iir_allpass1< Numeric, Coeff >::A1
protected
template<class Numeric , class Coeff = float_type>
int SPUC::iir_allpass1< Numeric, Coeff >::Delay
protected

The 2 1st order allpass filters.

template<class Numeric , class Coeff = float_type>
Numeric SPUC::iir_allpass1< Numeric, Coeff >::prev_input
protected

The documentation for this class was generated from the following file: