Mercurial > hg > qm-dsp
comparison dsp/signalconditioning/DFProcess.h @ 0:d7116e3183f8
* Queen Mary C++ DSP library
author | cannam |
---|---|
date | Wed, 05 Apr 2006 17:35:59 +0000 |
parents | |
children | da277e8b5244 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:d7116e3183f8 |
---|---|
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ | |
2 | |
3 /* | |
4 QM DSP Library | |
5 | |
6 Centre for Digital Music, Queen Mary, University of London. | |
7 This file copyright 2005-2006 Christian Landone. | |
8 All rights reserved. | |
9 */ | |
10 | |
11 #ifndef CDFPROCESS_H | |
12 #define CDFPROCESS_H | |
13 | |
14 #include <stdio.h> | |
15 #include "FiltFilt.h" | |
16 | |
17 struct DFProcConfig{ | |
18 unsigned int length; | |
19 unsigned int LPOrd; | |
20 double *LPACoeffs; | |
21 double *LPBCoeffs; | |
22 unsigned int winPre; | |
23 unsigned int winPost; | |
24 double AlphaNormParam; | |
25 bool isMedianPositive;}; | |
26 | |
27 class DFProcess | |
28 { | |
29 public: | |
30 DFProcess( DFProcConfig Config ); | |
31 virtual ~DFProcess(); | |
32 | |
33 void process( double* src, double* dst ); | |
34 | |
35 | |
36 private: | |
37 void initialise( DFProcConfig Config ); | |
38 void deInitialise(); | |
39 void removeDCNormalize( double *src, double*dst ); | |
40 void medianFilter( double* src, double* dst ); | |
41 | |
42 unsigned int m_length; | |
43 unsigned int m_FFOrd; | |
44 | |
45 unsigned int m_winPre; | |
46 unsigned int m_winPost; | |
47 | |
48 double m_alphaNormParam; | |
49 | |
50 double* filtSrc; | |
51 double* filtDst; | |
52 | |
53 double* m_filtScratchIn; | |
54 double* m_filtScratchOut; | |
55 | |
56 FiltFiltConfig m_FilterConfigParams; | |
57 | |
58 FiltFilt* m_FiltFilt; | |
59 | |
60 bool m_isMedianPositive; | |
61 }; | |
62 | |
63 #endif |