/* ======================================================================== */
/*  TEXAS INSTRUMENTS, INC.                                                 */
/*                                                                          */
/*  NAME                                                                    */
/*   DSPF_sp_iir -- Single Precision IIR filter (used in the VSELP vocoder) */
/*                                                                          */
/*  USAGE                                                                   */
/*                                                                          */
/*   This routine is C callable, and has the following C prototype:         */
/*                                                                          */
/*      void DSPF_sp_iir    (float* restrict r1,                            */
/*                      const float*    x,                                  */
/*                      float* restrict r2,                                 */
/*                      const float*    h2,                                 */
/*                      const float*    h1,                                 */
/*                      int nr                                              */
/*                     );                                                   */
/*                                                                          */
/*           r1[nr+4]   :  Delay element values (i/p and o/p)               */
/*           x[nr]      :  Pointer to the input array                       */
/*           r2[nr+4]   :  Pointer to the output array                      */
/*           h2[5]      :  Auto-regressive filter coefficients              */
/*           h1[5]      :  Moving average filter coefficients               */
/*           nr         :  Number of output samples                         */
/*                                                                          */
/*  DESCRIPTION                                                             */
/*                                                                          */
/*    The IIR performs an auto-regressive moving-average (ARMA)             */
/*    filter with 4 auto-regressive filter coefficients and 5               */
/*    moving-average filter coefficients for nr output samples.             */
/*    The output vector is stored in two locations. This routine            */
/*    is used as a high pass filter in the VSELP vocoder. The               */
/*    4 values in the r1 vector store the initial values of the             */
/*    delays.                                                               */
/*                                                                          */
/* ------------------------------------------------------------------------ */
/*            Copyright (c) 2003 Texas Instruments, Incorporated.           */
/*                           All Rights Reserved.                           */
/* ======================================================================== */
#ifndef DSPF_SP_IIR_
#define DSPF_SP_IIR_ 1

void DSPF_sp_iir(
                 float *restrict r1,
                 const float * x,
                 float *restrict r2,
                 const float * h2,
                 const float * h1,
                 int nr
                );

#endif
/* ======================================================================== */
/*  End of file: dspf_sp_iir.h                                              */
/* ------------------------------------------------------------------------ */
/*          Copyright (C) 2003 Texas Instruments, Incorporated.             */
/*                          All Rights Reserved.                            */
/* ======================================================================== */