SPUC::allpass_2nd< Numeric, Coeff > Class Template Reference
[SPUC double templatesAllpass filters]

Template for 2nd order allpass filter. More...

#include <allpass_2nd.h>

Collaboration diagram for SPUC::allpass_2nd< Numeric, Coeff >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef mixed_type< Numeric,
Coeff >::dtype 
sum_type

Public Member Functions

 allpass_2nd (Coeff B0, Coeff A0, long b=0)
 allpass_2nd ()
void set_round_bits (long x)
void reset ()
void set_a (Coeff A0)
void set_b (Coeff B0)
void set_coeffs (Coeff B0, Coeff A0)
 allpass_2nd (const char *file)
 Constructor reading coefficients from a file.
void print ()
 Print out coefficients.
Numeric clock (Numeric input)
 Input new sample and calculate output.

Public Attributes

Numeric fb2
Numeric fb1
Numeric fb0
Numeric scale
quantiser< Numeric > Q
quantiser< Numeric > OQ

Protected Attributes

long round_bits
Coeff b
Coeff a
Numeric in [3]

Detailed Description

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

Template for 2nd order allpass filter.

Author:
Tony Kirke
allpass_2nd.png
Template for 2nd order allpass filter

The filter is assumed to be a 2nd order allpass section of the form $ G(z) = \frac{z^2 + b*z+a}{(a*z^2+b*z+1)} $


Member Typedef Documentation

template<class Numeric, class Coeff = float_type>
typedef mixed_type<Numeric,Coeff>::dtype SPUC::allpass_2nd< Numeric, Coeff >::sum_type


Constructor & Destructor Documentation

template<class Numeric, class Coeff = float_type>
SPUC::allpass_2nd< Numeric, Coeff >::allpass_2nd ( Coeff  B0,
Coeff  A0,
long  b = 0 
) [inline]

template<class Numeric, class Coeff = float_type>
SPUC::allpass_2nd< Numeric, Coeff >::allpass_2nd (  )  [inline]

template<class Numeric, class Coeff = float_type>
SPUC::allpass_2nd< Numeric, Coeff >::allpass_2nd ( const char *  file  )  [inline]

Constructor reading coefficients from a file.


Member Function Documentation

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

Input new sample and calculate output.

template<class Numeric, class Coeff = float_type>
void SPUC::allpass_2nd< Numeric, Coeff >::print (  )  [inline]

Print out coefficients.

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

template<class Numeric, class Coeff = float_type>
void SPUC::allpass_2nd< Numeric, Coeff >::set_a ( Coeff  A0  )  [inline]

template<class Numeric, class Coeff = float_type>
void SPUC::allpass_2nd< Numeric, Coeff >::set_b ( Coeff  B0  )  [inline]

template<class Numeric, class Coeff = float_type>
void SPUC::allpass_2nd< Numeric, Coeff >::set_coeffs ( Coeff  B0,
Coeff  A0 
) [inline]

template<class Numeric, class Coeff = float_type>
void SPUC::allpass_2nd< Numeric, Coeff >::set_round_bits ( long  x  )  [inline]


Member Data Documentation

template<class Numeric, class Coeff = float_type>
Coeff SPUC::allpass_2nd< Numeric, Coeff >::a [protected]

template<class Numeric, class Coeff = float_type>
Coeff SPUC::allpass_2nd< Numeric, Coeff >::b [protected]

template<class Numeric, class Coeff = float_type>
Numeric SPUC::allpass_2nd< Numeric, Coeff >::fb0

template<class Numeric, class Coeff = float_type>
Numeric SPUC::allpass_2nd< Numeric, Coeff >::fb1

template<class Numeric, class Coeff = float_type>
Numeric SPUC::allpass_2nd< Numeric, Coeff >::fb2

template<class Numeric, class Coeff = float_type>
Numeric SPUC::allpass_2nd< Numeric, Coeff >::in[3] [protected]

template<class Numeric, class Coeff = float_type>
quantiser<Numeric> SPUC::allpass_2nd< Numeric, Coeff >::OQ

template<class Numeric, class Coeff = float_type>
quantiser<Numeric> SPUC::allpass_2nd< Numeric, Coeff >::Q

template<class Numeric, class Coeff = float_type>
long SPUC::allpass_2nd< Numeric, Coeff >::round_bits [protected]

template<class Numeric, class Coeff = float_type>
Numeric SPUC::allpass_2nd< Numeric, Coeff >::scale


The documentation for this class was generated from the following file:
Generated on Mon Jun 9 19:40:31 2008 for DSPTemplates by  doxygen 1.4.7