Logo coherent WaveBurst  
Library Reference Guide
Logo
Biorthogonal.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 // Bi-orthogonal wavelet transforms using lifting scheme
23 // References:
24 // A.Cohen, I.Daubechies, J.Feauveau Bases of compactly supported wavelets
25 // Comm. Pure. Appl. Math. 45, 485-560, 1992
26 //--------------------------------------------------------------------
27 
28 //$Id: Biorthogonal.hh,v 0.2 2001/08/06 19:37:00 klimenko Exp $
29 #ifndef BIORTHOGONAL_HH
30 #define BIORTHOGONAL_HH
31 
32 #include "WaveDWT.hh"
33 
34 //namespace datacondAPI {
35 //namespace wat {
36 
37 template<class DataType_t>
38 class Biorthogonal : public WaveDWT<DataType_t>
39 {
40 // private:
41  public:
42 
43  //: pointer to array of forward predict filter coefficients.
44  double *PForward; //!
45  //: pointer to array of inverse predict filter coefficients.
46  double *PInverse; //!
47  //: pointer to array of forward update filter coefficients.
48  double *UForward; //!
49  //: pointer to array of inverse update filter coefficients.
50  double *UInverse; //!
51 
52  void setFilter();
53 
54 
55  //: construct from base class
56  Biorthogonal(const Wavelet &);
57 
58  //: copy constructors
60 
61  //: construct from wavelet parameters
62  Biorthogonal(int order=4, int tree=0, enum BORDER border=B_POLYNOM);
63 
64  //: destructor
65  virtual ~Biorthogonal();
66 
67  //: Duplicate on heap
68  virtual Biorthogonal* Clone() const;
69 
70  //: decomposition method
71  void forward(int level, int layer);
72  //: reconstruction method
73  void inverse(int level, int layer);
74 
75  ClassDef(Biorthogonal,1)
76 
77 }; // class Biorthogonal
78 
79 //}; // namespace wat
80 //}; // namespace datacondAPI
81 
82 #endif // BIORTHOGONAL_HH
83 
84 
85 
86 
87 
88 
89 
90 
91 
92 
93 
94 
TTree * tree
Definition: TimeSortTree.C:20
double * PInverse
Definition: Biorthogonal.hh:46
void setFilter()
Definition: Biorthogonal.cc:81
BORDER
Definition: Wavelet.hh:36
void inverse(int level, int layer)
double * PForward
Definition: Biorthogonal.hh:44
void forward(int level, int layer)
virtual Biorthogonal * Clone() const
return: Wavelet* - duplicate of *this, allocated on heap
Definition: Biorthogonal.cc:74
virtual ~Biorthogonal()
Definition: Biorthogonal.cc:64
Biorthogonal(const Wavelet &)
Definition: Biorthogonal.cc:42
double * UInverse
Definition: Biorthogonal.hh:50
double * UForward
Definition: Biorthogonal.hh:48