VAPOR3 3.9.4
MatWaveWavedec.h
Go to the documentation of this file.
1
2#ifndef _MatWaveWavedec_h_
3#define _MatWaveWavedec_h_
4
5#include "MatWaveDwt.h"
6
7namespace VAPoR {
8
9//
22public:
38 MatWaveWavedec(const string &wname, const string &mode);
39 MatWaveWavedec(const string &wname);
40 virtual ~MatWaveWavedec();
41
64 //
65 int wavedec(const double *sigIn, size_t sigInLength, int n, double *C, size_t *L);
66 int wavedec(const float *sigIn, size_t sigInLength, int n, float *C, size_t *L);
67 int wavedec(const long *sigIn, size_t sigInLength, int n, long *C, size_t *L);
68 int wavedec(const int *sigIn, size_t sigInLength, int n, int *C, size_t *L);
69
86 //
87 int waverec(const double *C, const size_t *L, int n, double *sigOut);
88 int waverec(const float *C, const size_t *L, int n, float *sigOut);
89 int waverec(const long *C, const size_t *L, int n, long *sigOut);
90 int waverec(const int *C, const size_t *L, int n, int *sigOut);
91
115 //
116 int wavedec2(const double *sigIn, size_t sigInX, size_t sigInY, int n, double *C, size_t *L);
117 int wavedec2(const float *sigIn, size_t sigInX, size_t sigInY, int n, float *C, size_t *L);
118 int wavedec2(const long *sigIn, size_t sigInX, size_t sigInY, int n, long *C, size_t *L);
119 int wavedec2(const int *sigIn, size_t sigInX, size_t sigInY, int n, int *C, size_t *L);
120
137 //
138 int waverec2(const double *C, const size_t *L, int n, double *sigOut);
139 int waverec2(const float *C, const size_t *L, int n, float *sigOut);
140 int waverec2(const long *C, const size_t *L, int n, long *sigOut);
141 int waverec2(const int *C, const size_t *L, int n, int *sigOut);
142
169 //
170 int wavedec3(const double *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, double *C, size_t *L);
171 int wavedec3(const float *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, float *C, size_t *L);
172 int wavedec3(const long *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, long *C, size_t *L);
173 int wavedec3(const int *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, int *C, size_t *L);
174
191 //
192 int waverec3(const double *C, const size_t *L, int n, double *sigOut);
193 int waverec3(const float *C, const size_t *L, int n, float *sigOut);
194 int waverec3(const long *C, const size_t *L, int n, long *sigOut);
195 int waverec3(const int *C, const size_t *L, int n, int *sigOut);
196
197 int appcoef(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut);
198 int appcoef(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut);
199 int appcoef2(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut);
200 int appcoef2(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut);
201 int appcoef3(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut);
202 int appcoef3(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut);
203 int appcoef(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut);
204 int appcoef(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut);
205 int appcoef2(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut);
206 int appcoef2(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut);
207 int appcoef3(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut);
208 int appcoef3(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut);
209
210 //
227 //
228 size_t coefflength(size_t sigInLen, int n) const;
229 size_t coefflength(const size_t *L, int n) const;
230
231 //
242 //
243 size_t approxlength(size_t sigInLen, int n) const;
244
245 //
262 //
263 void approxlength(const size_t *L, int n, int l, size_t *len) const;
264
265 //
283 //
284 size_t coefflength2(size_t sigInX, size_t sigInY, int n) const;
285 size_t coefflength2(const size_t *L, int n) const;
286
287 //
305 //
306 void approxlength2(const size_t *L, int n, int l, size_t *lenx, size_t *leny) const;
307
308 //
327 size_t coefflength3(size_t sigInX, size_t sigInY, size_t sigInZ, int n) const;
328 size_t coefflength3(const size_t *L, int n) const;
329
348 //
349 void approxlength3(const size_t *L, int n, int l, size_t *lenx, size_t *leny, size_t *lenz) const;
350
351 //
359 //
360 void computeL(size_t sigInLen, int n, size_t *L) const;
361
362 //
371 //
372 void computeL2(size_t sigInX, size_t sigInY, int n, size_t *L) const;
373
374 //
384 //
385 void computeL3(size_t sigInX, size_t sigInY, size_t sigInZ, int n, size_t *L) const;
386
387private:
388};
389
390} // namespace VAPoR
391
392#endif
Implements a single level wavelet filter.
Definition: MatWaveDwt.h:23
Implements a multi-level wavelet filter.
void computeL3(size_t sigInX, size_t sigInY, size_t sigInZ, int n, size_t *L) const
int waverec2(const int *C, const size_t *L, int n, int *sigOut)
int waverec3(const double *C, const size_t *L, int n, double *sigOut)
int appcoef(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut)
int appcoef3(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut)
int waverec(const double *C, const size_t *L, int n, double *sigOut)
int wavedec3(const float *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, float *C, size_t *L)
int wavedec(const long *sigIn, size_t sigInLength, int n, long *C, size_t *L)
int appcoef2(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut)
size_t coefflength2(size_t sigInX, size_t sigInY, int n) const
void approxlength3(const size_t *L, int n, int l, size_t *lenx, size_t *leny, size_t *lenz) const
int waverec(const float *C, const size_t *L, int n, float *sigOut)
void approxlength2(const size_t *L, int n, int l, size_t *lenx, size_t *leny) const
int wavedec2(const long *sigIn, size_t sigInX, size_t sigInY, int n, long *C, size_t *L)
int wavedec2(const double *sigIn, size_t sigInX, size_t sigInY, int n, double *C, size_t *L)
int wavedec(const float *sigIn, size_t sigInLength, int n, float *C, size_t *L)
int wavedec(const double *sigIn, size_t sigInLength, int n, double *C, size_t *L)
int appcoef(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut)
void approxlength(const size_t *L, int n, int l, size_t *len) const
int wavedec3(const double *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, double *C, size_t *L)
int waverec(const long *C, const size_t *L, int n, long *sigOut)
size_t coefflength2(const size_t *L, int n) const
int appcoef2(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut)
int appcoef3(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut)
int wavedec3(const int *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, int *C, size_t *L)
int appcoef3(const int *C, const size_t *L, int n, int l, bool normal, int *sigOut)
int waverec(const int *C, const size_t *L, int n, int *sigOut)
void computeL2(size_t sigInX, size_t sigInY, int n, size_t *L) const
size_t coefflength3(const size_t *L, int n) const
int waverec2(const float *C, const size_t *L, int n, float *sigOut)
int wavedec2(const int *sigIn, size_t sigInX, size_t sigInY, int n, int *C, size_t *L)
int waverec2(const double *C, const size_t *L, int n, double *sigOut)
size_t coefflength3(size_t sigInX, size_t sigInY, size_t sigInZ, int n) const
size_t approxlength(size_t sigInLen, int n) const
int waverec3(const int *C, const size_t *L, int n, int *sigOut)
int waverec3(const long *C, const size_t *L, int n, long *sigOut)
int wavedec(const int *sigIn, size_t sigInLength, int n, int *C, size_t *L)
int wavedec3(const long *sigIn, size_t sigInX, size_t sigInY, size_t sigInZ, int n, long *C, size_t *L)
int wavedec2(const float *sigIn, size_t sigInX, size_t sigInY, int n, float *C, size_t *L)
int appcoef2(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut)
void computeL(size_t sigInLen, int n, size_t *L) const
size_t coefflength(const size_t *L, int n) const
int waverec3(const float *C, const size_t *L, int n, float *sigOut)
MatWaveWavedec(const string &wname, const string &mode)
size_t coefflength(size_t sigInLen, int n) const
int waverec2(const long *C, const size_t *L, int n, long *sigOut)
int appcoef(const double *C, const size_t *L, int n, int l, bool normal, double *sigOut)
int appcoef2(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut)
int appcoef(const float *C, const size_t *L, int n, int l, bool normal, float *sigOut)
MatWaveWavedec(const string &wname)
int appcoef3(const long *C, const size_t *L, int n, int l, bool normal, long *sigOut)
#define WASP_API
Definition: common.h:74