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

Template Class for IIR filter consisting of 2 1st Order Allpass sections. More...

#include <iir_delay_allpass1.h>

Public Member Functions

 iir_delay_allpass1 (Coeff c0, Coeff c1, long delay=2, long round_bits=0)
 
void reset ()
 Reset. More...
 
void set_delay (int d)
 
Numeric clock (Numeric input)
 Shift inputs by one time sample and place new sample into array. More...
 

Protected Attributes

allpass_1< Numeric, Coeff > A0
 
allpass_1< Numeric, Coeff > A1
 
delay< Numeric > dly
 
long delay_size
 

Detailed Description

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

Template Class for IIR filter consisting of 2 1st Order Allpass 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

allpass_iir.gif
Author
Tony Kirke

Constructor & Destructor Documentation

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

References SPUC::delay< Numeric >::set_size().

Here is the call graph for this function:

Member Function Documentation

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

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

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

Here is the call graph for this function:

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

Reset.

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

Here is the call graph for this function:

template<class Numeric , class Coeff = float_type>
void SPUC::iir_delay_allpass1< Numeric, Coeff >::set_delay ( int  d)
inline

References SPUC::delay< Numeric >::set_size().

Here is the call graph for this function:

Member Data Documentation

template<class Numeric , class Coeff = float_type>
allpass_1<Numeric,Coeff> SPUC::iir_delay_allpass1< Numeric, Coeff >::A0
protected
template<class Numeric , class Coeff = float_type>
allpass_1<Numeric,Coeff> SPUC::iir_delay_allpass1< Numeric, Coeff >::A1
protected
template<class Numeric , class Coeff = float_type>
long SPUC::iir_delay_allpass1< Numeric, Coeff >::delay_size
protected
template<class Numeric , class Coeff = float_type>
delay<Numeric> SPUC::iir_delay_allpass1< Numeric, Coeff >::dly
protected

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