spandsp  0.0.6
filter_tools.h
1 /*
2  * SpanDSP - a series of DSP components for telephony
3  *
4  * filter_tools.h - A collection of routines used for filter design.
5  *
6  * Written by Steve Underwood <steveu@coppice.org>
7  *
8  * Copyright (C) 2008 Steve Underwood
9  *
10  * Based on:
11  * mkshape -- design raised cosine FIR filter
12  * A.J. Fisher, University of York <fisher@minster.york.ac.uk>, November 1996
13  *
14  * All rights reserved.
15  *
16  * This program is free software; you can redistribute it and/or modify
17  * it under the terms of the GNU Lesser General Public License version 2.1,
18  * as published by the Free Software Foundation.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU Lesser General Public License for more details.
24  *
25  * You should have received a copy of the GNU Lesser General Public
26  * License along with this program; if not, write to the Free Software
27  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
28  */
29 
30 #if !defined(_FILTER_TOOLS_H_)
31 #define _FILTER_TOOLS_H_
32 
33 #if defined(__cplusplus)
34 extern "C"
35 {
36 #endif
37 
38 void ifft(complex_t data[], int len);
39 void apply_hamming_window(double coeffs[], int len);
40 void truncate_coeffs(double coeffs[], int len, int bits, int hilbert);
41 
42 void compute_raised_cosine_filter(double coeffs[],
43  int len,
44  int root,
45  int sinc_compensate,
46  double alpha,
47  double beta);
48 
49 void compute_hilbert_transform(double coeffs[], int len);
50 
51 
52 #if defined(__cplusplus)
53 }
54 #endif
55 
56 #endif
57 /*- End of file ------------------------------------------------------------*/
Definition: complex.h:53