-
Notifications
You must be signed in to change notification settings - Fork 6
/
Symlet.hh
74 lines (46 loc) · 1.49 KB
/
Symlet.hh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// Wavelet Analysis Tool
//--------------------------------------------------------------------
// Implementation of
// Symlet wavelets using Fast Wavelet Transform
// References:
// I.Daubechies, Ten lectures on wavelets
// ISBN 0-89871-274-2, 1992
//--------------------------------------------------------------------
//$Id: Symlet.hh,v 0.2 2001/08/06 19:37:00 klimenko Exp $
#ifndef SYMLET_HH
#define SYMLET_HH
#include "WaveDWT.hh"
//namespace datacondAPI {
//namespace wat {
template<class DataType_t>
class Symlet : public WaveDWT<DataType_t>
{
private:
//: forward LP filter coefficients.
double *pLForward;
//: inverse LP filter coefficients.
double *pLInverse;
//: forward LP filter coefficients.
double *pHForward;
//: inverse LP filter coefficients.
double *pHInverse;
void setFilter();
public:
//: construct from base class
Symlet(const Wavelet &);
//: copy constructors
Symlet(const Symlet<DataType_t> &);
//: construct from wavelet parameters
Symlet(int order=4, int tree=0, enum BORDER border=B_CYCLE);
//: destructor
virtual ~Symlet();
//: Duplicate on heap
virtual Symlet* Clone() const;
//: decomposition method
virtual void forward(int level, int layer);
//: reconstruction method
virtual void inverse(int level, int layer);
}; // class Symlet
//}; // namespace wat
//}; // namespace datacondAPI
#endif // SYMLET_HH