30 #define BIORTHOGONAL_CC 63 template<
class DataType_t>
68 template<
class DataType_t>
77 template<
class DataType_t>
81 register int stride = 1<<level;
84 double sq2 = sqrt(2.);
86 register DataType_t *dataA;
87 register DataType_t *dataD;
93 for(i=0; i<this->
nWWS; i+=stride) {
94 *(dataD+
i) -= *(dataA+i);
98 for(i=0; i<this->
nWWS; i+=stride) {
99 *(dataA+
i) += *(dataD+i) * 0.5;
103 for(i=0; i<this->
nWWS; i+=stride) {
113 template<
class DataType_t>
117 register int stride = 1<<level;
120 double sq2 = sqrt(2.);
122 register DataType_t *dataA;
123 register DataType_t *dataD;
129 for(i=0; i<this->
nWWS; i+=stride) {
135 for(i=0; i<this->
nWWS; i+=stride) {
136 *(dataA+
i) -= *(dataD+i) * 0.5;
140 for(i=0; i<this->
nWWS; i+=stride) {
141 *(dataD+
i) += *(dataA+i);
148 #define CLASS_INSTANTIATION(class_) template class Haar< class_ >; 155 #undef CLASS_INSTANTIATION
void inverse(int level, int layer)
virtual Haar * Clone() const
return: Wavelet* - duplicate of *this, allocated on heap
#define CLASS_INSTANTIATION(class_)
unsigned long nWWS
pointer to wavelet work space
virtual int getOffset(int, int)
void forward(int level, int layer)