/******************************************************************** * * * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. * * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY * * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. * * PLEASE READ THESE TERMS DISTRIBUTING. * * * * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-2000 * * by Monty and The XIPHOPHORUS Company * * http://www.xiph.org/ * * * ******************************************************************** function: Direct Form I, II IIR filters, plus some specializations last mod: $Id$ ********************************************************************/ #ifndef _V_IIR_H_ #define _V_IIR_H_ typedef struct { int stages; double *coeff_A; double *coeff_B; double *z_A; double *z_B; int ring; double gain; } IIR_state; void IIR_init(IIR_state *s,int stages,double gain, double *A, double *B); void IIR_clear(IIR_state *s); double IIR_filter(IIR_state *s,double in); double IIR_filter_ChebBand(IIR_state *s,double in); #endif