src/filter_tools.h

00001 /*
00002  * SpanDSP - a series of DSP components for telephony
00003  *
00004  * filter_tools.h - A collection of routines used for filter design.
00005  *
00006  * Written by Steve Underwood <steveu@coppice.org>
00007  *
00008  * Copyright (C) 2008 Steve Underwood
00009  *
00010  * Based on:
00011  * mkshape -- design raised cosine FIR filter
00012  * A.J. Fisher, University of York <fisher@minster.york.ac.uk>,  November 1996
00013  *
00014  * All rights reserved.
00015  *
00016  * This program is free software; you can redistribute it and/or modify
00017  * it under the terms of the GNU Lesser General Public License version 2.1,
00018  * as published by the Free Software Foundation.
00019  *
00020  * This program is distributed in the hope that it will be useful,
00021  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00022  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023  * GNU Lesser General Public License for more details.
00024  *
00025  * You should have received a copy of the GNU Lesser General Public
00026  * License along with this program; if not, write to the Free Software
00027  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00028  *
00029  * $Id: filter_tools.h,v 1.3 2008/04/17 14:26:56 steveu Exp $
00030  */
00031 
00032 #if !defined(_FILTER_TOOLS_H_)
00033 #define _FILTER_TOOLS_H_
00034 
00035 #if defined(__cplusplus)
00036 extern "C"
00037 {
00038 #endif
00039 
00040 void ifft(complex_t data[], int len);
00041 void apply_hamming_window(double coeffs[], int len);
00042 void truncate_coeffs(double coeffs[], int len, int bits, int hilbert);
00043 
00044 void compute_raised_cosine_filter(double coeffs[],
00045                                   int len,
00046                                   int root,
00047                                   int sinc_compensate,
00048                                   double alpha,
00049                                   double beta);
00050 
00051 void compute_hilbert_transform(double coeffs[], int len);
00052 
00053     
00054 #if defined(__cplusplus)
00055 }
00056 #endif
00057 
00058 #endif
00059 /*- End of file ------------------------------------------------------------*/

Generated on Tue Oct 7 20:25:46 2008 for spandsp by  doxygen 1.5.6