coherent WaveBurst
Library Reference Guide
home
cWB_docker
git
cWB
library
wat
Symlet.hh
Go to the documentation of this file.
1
/*
2
# Copyright (C) 2019 Sergey Klimenko
3
#
4
# This program is free software: you can redistribute it and/or modify
5
# it under the terms of the GNU General Public License as published by
6
# the Free Software Foundation, either version 3 of the License, or
7
# (at your option) any later version.
8
#
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
# GNU General Public License for more details.
13
#
14
# You should have received a copy of the GNU General Public License
15
# along with this program. If not, see <https://www.gnu.org/licenses/>.
16
*/
17
18
19
// Wavelet Analysis Tool
20
//--------------------------------------------------------------------
21
// Implementation of
22
// Symlet wavelets using Fast Wavelet Transform
23
// References:
24
// I.Daubechies, Ten lectures on wavelets
25
// ISBN 0-89871-274-2, 1992
26
//--------------------------------------------------------------------
27
28
//$Id: Symlet.hh,v 0.2 2001/08/06 19:37:00 klimenko Exp $
29
#ifndef SYMLET_HH
30
#define SYMLET_HH
31
32
#include "
WaveDWT.hh
"
33
34
//namespace datacondAPI {
35
//namespace wat {
36
37
template
<
class
DataType_t>
38
class
Symlet
:
public
WaveDWT
<DataType_t>
39
{
40
private
:
41
42
//: forward LP filter coefficients.
43
double
*
pLForward
;
//!
44
//: inverse LP filter coefficients.
45
double
*
pLInverse
;
//!
46
//: forward LP filter coefficients.
47
double
*
pHForward
;
//!
48
//: inverse LP filter coefficients.
49
double
*
pHInverse
;
//!
50
51
void
setFilter
();
52
53
public
:
54
55
//: construct from base class
56
Symlet
(
const
Wavelet
&);
57
58
//: copy constructors
59
Symlet
(
const
Symlet<DataType_t>
&);
60
61
//: construct from wavelet parameters
62
Symlet
(
int
order=4,
int
tree
=0,
enum
BORDER
border=
B_CYCLE
);
63
64
//: destructor
65
virtual
~Symlet
();
66
67
//: Duplicate on heap
68
virtual
Symlet
*
Clone
()
const
;
69
70
//: decomposition method
71
virtual
void
forward
(
int
level,
int
layer);
72
//: reconstruction method
73
virtual
void
inverse
(
int
level,
int
layer);
74
75
ClassDef(
Symlet
,1)
76
77
};
// class Symlet
78
79
//}; // namespace wat
80
//}; // namespace datacondAPI
81
82
#endif // SYMLET_HH
83
84
85
86
87
88
89
90
91
92
93
94
tree
TTree * tree
Definition:
TimeSortTree.C:20
Symlet::pLForward
double * pLForward
Definition:
Symlet.hh:43
Symlet::Symlet
Symlet(const Wavelet &)
Definition:
Symlet.cc:359
B_CYCLE
Definition:
Wavelet.hh:37
WaveDWT
Definition:
WaveDWT.hh:44
BORDER
BORDER
Definition:
Wavelet.hh:36
Symlet::forward
virtual void forward(int level, int layer)
Definition:
Symlet.cc:467
Wavelet
Definition:
Wavelet.hh:51
Symlet::pHForward
double * pHForward
Definition:
Symlet.hh:47
WaveDWT.hh
Symlet::~Symlet
virtual ~Symlet()
Definition:
Symlet.cc:381
Symlet::inverse
virtual void inverse(int level, int layer)
Definition:
Symlet.cc:476
Symlet::setFilter
void setFilter()
Definition:
Symlet.cc:397
Symlet::pHInverse
double * pHInverse
Definition:
Symlet.hh:49
Symlet
Definition:
Symlet.hh:38
Symlet::Clone
virtual Symlet * Clone() const
return: Wavelet* - duplicate of *this, allocated on heap
Definition:
Symlet.cc:391
Symlet::pLInverse
double * pLInverse
Definition:
Symlet.hh:45