annotate dsp/rateconversion/Decimator.h @ 0:d7116e3183f8
* Queen Mary C++ DSP library
author |
cannam |
date |
Wed, 05 Apr 2006 17:35:59 +0000 |
parents |
|
children |
f7edcd9138bd |
rev |
line source |
cannam@0
|
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
|
cannam@0
|
2 /*
|
cannam@0
|
3 QM DSP Library
|
cannam@0
|
4
|
cannam@0
|
5 Centre for Digital Music, Queen Mary, University of London.
|
cannam@0
|
6 This file copyright 2005-2006 Christian Landone.
|
cannam@0
|
7 All rights reserved.
|
cannam@0
|
8 */
|
cannam@0
|
9
|
cannam@0
|
10 #ifndef DECIMATOR_H
|
cannam@0
|
11 #define DECIMATOR_H
|
cannam@0
|
12
|
cannam@0
|
13 class Decimator
|
cannam@0
|
14 {
|
cannam@0
|
15 public:
|
cannam@0
|
16 void process( double* src, double* dst );
|
cannam@0
|
17 void doAntiAlias( double* src, double* dst, unsigned int length );
|
cannam@0
|
18
|
cannam@0
|
19 Decimator( unsigned int inLength, unsigned int decFactor );
|
cannam@0
|
20 virtual ~Decimator();
|
cannam@0
|
21
|
cannam@0
|
22 private:
|
cannam@0
|
23 void resetFilter();
|
cannam@0
|
24 void deInitialise();
|
cannam@0
|
25 void initialise( unsigned int inLength, unsigned int decFactor );
|
cannam@0
|
26
|
cannam@0
|
27 unsigned int m_inputLength;
|
cannam@0
|
28 unsigned int m_outputLength;
|
cannam@0
|
29 unsigned int m_decFactor;
|
cannam@0
|
30
|
cannam@0
|
31 double Input;
|
cannam@0
|
32 double Output ;
|
cannam@0
|
33
|
cannam@0
|
34 double o1,o2,o3,o4,o5,o6,o7;
|
cannam@0
|
35
|
cannam@0
|
36 double a[ 9 ];
|
cannam@0
|
37 double b[ 9 ];
|
cannam@0
|
38
|
cannam@0
|
39 double* decBuffer;
|
cannam@0
|
40 };
|
cannam@0
|
41
|
cannam@0
|
42 #endif //
|