#include <Rtrsmra_Data_t_scalar.h>
Collaboration diagram for Rtrsmra< Data_t, scalar >:

Public Types | |
| typedef Data_t | DataType |
Public Member Functions | |
| void | assign (const Data_t data) |
| virtual Data_t | ave (const int m) |
| virtual Data_t | ave0 (const int m) |
| virtual Data_t | ave1 (const int m) |
| virtual Data_t | avers (const int m) |
| virtual Data_t | chg (const int m) |
| virtual Data_t | chg0 (const int m) |
| virtual Data_t | chg1 (const int m) |
| virtual Data_t | chgrs (const int m) |
| virtual void | clear () |
| virtual void | detectge (const Data_t *thresh, int *hit) |
| virtual void | detectgt (const Data_t *thresh, int *hit) |
| virtual void | detectle (const Data_t *thresh, int *hit) |
| virtual void | detectlt (const Data_t *thresh, int *hit) |
| virtual int | imcycle () |
| bool | isvalid (const int m) |
| bool | isvalid0 (const int m) |
| bool | isvalid1 (const int m) |
| bool | isvalidrs (const int m) |
| virtual int | mcycle () |
| virtual int | mcycle0 () |
| virtual int | mcycle1 () |
| virtual int | mcyclers () |
| int | mmax () |
| int | mrastep (const int mrastep) |
| int | mrastep () |
| operator Data_t () | |
| int | operator++ (int) |
| int | operator++ () |
| int | operator-- (int) |
| int | operator-- () |
| Rtrsmra< Data_t, scalar > & | operator= (const Data_t data) |
| virtual void | remalloc (const int msize=8) |
| virtual void | rtiwt () |
| Rtrsmra (const Rtrsmra &rhs) | |
| Rtrsmra (const int msize=8) | |
| virtual void | rtwt () |
| virtual void | scal (const int m, Data_t tmp) |
| virtual Data_t | scal (const int m) |
| virtual Data_t | scal0 (const int m) |
| virtual Data_t | scal1 (const int m) |
| virtual Data_t | scalrs (const int m) |
| virtual void | wav (const int m, Data_t tmp) |
| virtual Data_t | wav (const int m) |
| virtual Data_t | wav0 (const int m) |
| virtual Data_t | wav1 (const int m) |
| virtual Data_t | wavrs (const int m) |
| void | zero () |
| virtual | ~Rtrsmra () |
Static Public Attributes | |
| const int | ArrayDim = 0 |
Protected Attributes | |
| Data_t * | _data |
| int | _mmax |
| Data_t * | _mracoef |
| Data_t * | _mracoefrs |
| int | _mrastep |
| int | _Msize |
|
|||||
|
Definition at line 26 of file Rtrsmra_Data_t_scalar.h. |
|
|||||||||
|
Definition at line 118 of file Rtrsmra_Data_t_scalar.h.
00119 {
00120 if ( _data != 0 ) { delete _data; _data = 0; }
00121 if ( _mracoefrs != 0 ) { delete [] _mracoefrs; _mracoefrs = 0; }
00122 if ( _mracoef != 0 ) { delete [] _mracoef; _mracoef = 0; }
00123 }
|
|
||||||||||
|
Definition at line 34 of file Rtrsmra_Data_t_scalar.h.
00034 { *_data = data; }
|
|
||||||||||
|
Definition at line 63 of file Rtrsmra_Data_t_scalar.h.
00063 { return ave0(m); }
|
|
||||||||||
|
Definition at line 311 of file Rtrsmra_Data_t_scalar.h. References INVSQRT2, and rtrsmrascala().
00312 {
00313 Data_t scala;
00314 #ifdef STORM_USEC
00315 rtrsmrascala(
00316 _Msize, _mmax, _mrastep,
00317 _mracoef, _mracoefrs,
00318 m, scala
00319 );
00320 #else
00321 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00322 scala = _mracoef[ 2*m ] * pow(INVSQRT2,m);
00323 // } else {
00324 // scala = 1.0/0;
00325 // }
00326 #endif
00327 return scala;
00328 }
|
|
||||||||||
|
Definition at line 331 of file Rtrsmra_Data_t_scalar.h. References INVSQRT2, and rtrsmrascalars().
00332 {
00333 Data_t scalars;
00334 #ifdef STORM_USEC
00335 rtrsmrascalars(
00336 _Msize, _mmax, _mrastep,
00337 _mracoef, _mracoefrs,
00338 m, scalars
00339 );
00340 #else
00341 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00342 scalars = _mracoefrs[ 2*m ] * pow(INVSQRT2,m);
00343 // } else {
00344 // scalars = 1.0/0;
00345 // }
00346 #endif
00347 return scalars;
00348 }
|
|
||||||||||
|
Definition at line 65 of file Rtrsmra_Data_t_scalar.h.
00065 { return ave1(m); }
|
|
||||||||||
|
Definition at line 67 of file Rtrsmra_Data_t_scalar.h.
00067 { return chg0(m); }
|
|
||||||||||
|
Definition at line 351 of file Rtrsmra_Data_t_scalar.h. References INVSQRT2, and rtrsmrawavd().
00352 {
00353 Data_t wavd;
00354 #ifdef STORM_USEC
00355 rtrsmrawavd(
00356 _Msize, _mmax, _mrastep,
00357 _mracoef, _mracoefrs,
00358 m, wavd
00359 );
00360 #else
00361 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00362 wavd = _mracoef[ 2*m +1 ] * pow(INVSQRT2,m);
00363 // } else {
00364 // wavd = 1.0/0;
00365 // }
00366 #endif
00367 return wavd;
00368 }
|
|
||||||||||
|
Definition at line 371 of file Rtrsmra_Data_t_scalar.h. References INVSQRT2, and rtrsmrawavdrs().
00372 {
00373 Data_t wavdrs;
00374 #ifdef STORM_USEC
00375 rtrsmrawavdrs(
00376 _Msize, _mmax, _mrastep,
00377 _mracoef, _mracoefrs,
00378 m, wavdrs );
00379 #else
00380 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00381 wavdrs = _mracoefrs[ 2*m +1 ] * pow(INVSQRT2,m);
00382 // } else {
00383 // wavdrs = 1.0/0;
00384 // }
00385 #endif
00386 return wavdrs;
00387 }
|
|
||||||||||
|
Definition at line 69 of file Rtrsmra_Data_t_scalar.h.
00069 { return chg1(m); }
|
|
|||||||||
|
Definition at line 145 of file Rtrsmra_Data_t_scalar.h.
00146 {
00147 _mrastep = -1;
00148 for( int i = 0; i < _Msize*2; i++ ) { _mracoef[i] = 0; }
00149 for( int i = 0; i < _Msize*2; i++ ) { _mracoefrs[i] = 0; }
00150 *_data = 0;
00151 }
|
|
||||||||||||||||
|
Definition at line 399 of file Rtrsmra_Data_t_scalar.h. References rtrsdetectge().
00400 {
00401 #ifdef STORM_USEC
00402 rtrsdetectge(
00403 _Msize, _mmax, _mrastep,
00404 _mracoef, _mracoefrs,
00405 thresh, hit
00406 );
00407 #else
00408 for( int m = 0; m <= _mmax; m++ ) {
00409 if ( abs( _mracoef[ 2*m + 1 ] + _mracoefrs[ 2*m + 1 ] ) >= thresh[m] ) {
00410 hit[m]=1;
00411 }
00412 else {
00413 hit[m]=0;
00414 }
00415 }
00416 #endif
00417 }
|
|
||||||||||||||||
|
Definition at line 420 of file Rtrsmra_Data_t_scalar.h. References rtrsdetectgt().
00421 {
00422 #ifdef STORM_USEC
00423 rtrsdetectgt(
00424 _Msize, _mmax, _mrastep,
00425 _mracoef, _mracoefrs,
00426 thresh, hit
00427 );
00428 #else
00429 for( int m = 0; m <= _mmax; m++ ) {
00430 if ( abs( _mracoef[ 2*m + 1 ] + _mracoefrs[ 2*m + 1 ] ) > thresh[m] ) {
00431 hit[m]=1;
00432 }
00433 else {
00434 hit[m]=0;
00435 }
00436 }
00437 #endif
00438 }
|
|
||||||||||||||||
|
Definition at line 441 of file Rtrsmra_Data_t_scalar.h. References rtrsdetectle().
00442 {
00443 #ifdef STORM_USEC
00444 rtrsdetectle(
00445 _Msize, _mmax, _mrastep,
00446 _mracoef, _mracoefrs,
00447 thresh, hit
00448 );
00449 #else
00450 for( int m = 0; m <= _mmax; m++ ) {
00451 if ( abs( _mracoef[ 2*m + 1 ] + _mracoefrs[ 2*m + 1 ] ) <= thresh[m] ) {
00452 hit[m]=1;
00453 }
00454 else {
00455 hit[m]=0;
00456 }
00457 }
00458 #endif
00459 }
|
|
||||||||||||||||
|
Definition at line 462 of file Rtrsmra_Data_t_scalar.h. References rtrsdetectlt().
00463 {
00464 #ifdef STORM_USEC
00465 rtrsdetectlt(
00466 _Msize, _mmax, _mrastep,
00467 _mracoef, _mracoefrs,
00468 thresh, hit
00469 );
00470 #else
00471 for( int m = 0; m <= _mmax; m++ ) {
00472 if ( abs( _mracoef[ 2*m + 1 ] + _mracoefrs[ 2*m + 1 ] ) < thresh[m] ) {
00473 hit[m]=1;
00474 }
00475 else {
00476 hit[m]=0;
00477 }
00478 }
00479 #endif
00480 }
|
|
|||||||||
|
Definition at line 390 of file Rtrsmra_Data_t_scalar.h.
00390 { return 0; }
|
|
||||||||||
|
Definition at line 52 of file Rtrsmra_Data_t_scalar.h.
00052 { return ( m < mcycle() ) ; }
|
|
||||||||||
|
Definition at line 51 of file Rtrsmra_Data_t_scalar.h.
00051 { return ( m < mcycle0() ) ; }
|
|
||||||||||
|
Definition at line 53 of file Rtrsmra_Data_t_scalar.h.
00053 { return ( m < mcycle1() ) ; }
|
|
||||||||||
|
Definition at line 54 of file Rtrsmra_Data_t_scalar.h.
00054 { return ( m < mcyclers() ) ; }
|
|
|||||||||
|
Definition at line 47 of file Rtrsmra_Data_t_scalar.h.
00047 { return mcycle0(); }
|
|
|||||||||
|
Definition at line 203 of file Rtrsmra_Data_t_scalar.h. References rtrsmramcycle().
00204 {
00205 int mcycle = 0;
00206 #ifdef STORM_USEC
00207 rtrsmramcycle( _Msize, _mmax, _mrastep, mcycle );
00208 #else
00209 while ( ( _mrastep & (1<<mcycle) ) && ( mcycle < _mmax ) ) { mcycle++; }
00210 #endif
00211 return mcycle;
00212 }
|
|
|||||||||
|
Definition at line 215 of file Rtrsmra_Data_t_scalar.h. References rtrsmramcyclers().
00216 {
00217 int mcyclers = 0;
00218 #ifdef STORM_USEC
00219 rtrsmramcyclers( _Msize, _mmax, _mrastep, mcyclers );
00220 #else
00221 while ( ( _mrastep & (1<<mcyclers) ) && ( mcyclers < _mmax ) ) {
00222 mcyclers++;
00223 }
00224 mcyclers++;
00225 if ( ( _mrastep < (1<<mcyclers) ) || ( mcyclers > _mmax ) ) { mcyclers = 0; }
00226 #endif
00227 return mcyclers;
00228 }
|
|
|||||||||
|
Definition at line 49 of file Rtrsmra_Data_t_scalar.h.
00049 { return mcycle1(); }
|
|
|||||||||
|
Definition at line 41 of file Rtrsmra_Data_t_scalar.h.
00041 { return _mmax; }
|
|
||||||||||
|
Definition at line 46 of file Rtrsmra_Data_t_scalar.h.
00046 { _mrastep = mrastep; } //DEBUG
|
|
|||||||||
|
Definition at line 45 of file Rtrsmra_Data_t_scalar.h.
00045 { return _mrastep; }
|
|
|||||||||
|
Definition at line 37 of file Rtrsmra_Data_t_scalar.h.
00037 { return *_data; }
|
|
||||||||||
|
Definition at line 40 of file Rtrsmra_Data_t_scalar.h.
00040 { rtwt(); return 0; }
|
|
|||||||||
|
Definition at line 39 of file Rtrsmra_Data_t_scalar.h.
00039 { rtwt(); return 0; }
|
|
||||||||||
|
Definition at line 44 of file Rtrsmra_Data_t_scalar.h.
00044 { rtiwt(); return 0; }
|
|
|||||||||
|
Definition at line 43 of file Rtrsmra_Data_t_scalar.h.
00043 { rtiwt(); return 0; }
|
|
||||||||||
|
Definition at line 155 of file Rtrsmra_Data_t_scalar.h.
00156 {
00157 assign(data);
00158 return *this;
00159 }
|
|
||||||||||
|
Definition at line 126 of file Rtrsmra_Data_t_scalar.h.
00127 {
00128 _Msize = msize;
00129 _mmax = msize-1;
00130 _mrastep = -1;
00131 if (_mracoef) delete [] _mracoef; _mracoef = 0;
00132 _mracoef = new Data_t[ _Msize*2 ];
00133 for( int i = 0; i< _Msize*2; i++ ) { _mracoef[i] = 0; }
00134
00135 if (_mracoefrs) delete [] _mracoefrs; _mracoefrs = 0;
00136 _mracoefrs = new Data_t[ _Msize*2 ];
00137 for( int i = 0; i < _Msize*2; i++) { _mracoefrs[i] = 0; }
00138
00139 if (_data) delete _data; _data = 0;
00140 _data = new Data_t;
00141 *_data = 0;
00142 }
|
|
|||||||||
|
Definition at line 200 of file Rtrsmra_Data_t_scalar.h.
00200 {}
|
|
||||||||||
|
Definition at line 104 of file Rtrsmra_Data_t_scalar.h.
00105 : _Msize( rhs._Msize ), _mmax( rhs._mmax ), _mrastep( rhs._mrastep ) 00106 { 00107 _mracoef = new Data_t[ _Msize*2 ]; 00108 for( int i = 0; i < _Msize*2; i++ ) { _mracoef[i] = rhs._mracoef[i]; } 00109 00110 _mracoefrs = new Data_t[ _Msize*2 ]; 00111 for( int i = 0; i < _Msize*2 ; i++ ) { _mracoefrs[i] = rhs._mracoefrs[i]; } 00112 00113 _data = new Data_t; 00114 *_data = rhs._data; 00115 } |
|
||||||||||
|
Definition at line 90 of file Rtrsmra_Data_t_scalar.h.
00091 : _Msize(msize), _mmax(msize-1), _mrastep(-1) 00092 { 00093 _mracoef = new Data_t[ _Msize*2 ]; 00094 for( int i = 0; i < _Msize*2; i++ ) { _mracoef[i] = 0; } 00095 00096 _mracoefrs = new Data_t[ _Msize*2 ]; 00097 for( int i = 0; i < _Msize*2 ; i++ ) { _mracoefrs[i] = 0; } 00098 00099 _data = new Data_t; 00100 *_data = 0; 00101 } |
|
|||||||||
|
Definition at line 162 of file Rtrsmra_Data_t_scalar.h. References INVSQRT2, and rtrsmrartrswt().
00163 {
00164 #ifdef STORM_USEC
00165 rtrsmrartrswt(
00166 _Msize, _mmax, _mrastep,
00167 _mracoef, _mracoefrs,
00168 *_data
00169 );
00170 #else
00171 _mrastep++;
00172 int mcycle = 0;
00173 while ( ( _mrastep & (1<<mcycle) ) && ( mcycle < _mmax ) ) { mcycle++; }
00174 int mcyclers = mcycle + 1;
00175 if ( ( _mrastep < (1<<mcyclers) ) || ( mcyclers > _mmax ) ) { mcyclers = 0; }
00176 float tmp = *_data;
00177 int m = 1;
00178 float tmpold, tmps, tmpw;
00179 while ( m <= mcycle ) {
00180 tmpold = _mracoef[ 2*(m-1) ];
00181 tmps = (tmpold+tmp) * INVSQRT2;
00182 tmpw = (tmpold-tmp) * INVSQRT2;
00183 _mracoef[ 2*(m-1) ] = tmp;
00184 _mracoef[ 2*m + 1 ] = tmpw;
00185 tmp = tmps;
00186 m++;
00187 }
00188 if ( m == mcyclers ) {
00189 tmpold = _mracoef[ 2*(m-1) ];
00190 tmps = (tmpold+tmp) * INVSQRT2;
00191 tmpw = (tmpold-tmp) * INVSQRT2;
00192 _mracoefrs[ 2*m ] = tmps;
00193 _mracoefrs[ 2*m + 1 ] = tmpw;
00194 }
00195 _mracoef[ 2*(m-1) ] = tmp;
00196 #endif
00197 }
|
|
||||||||||||||||
|
Definition at line 393 of file Rtrsmra_Data_t_scalar.h.
00393 {}
|
|
||||||||||
|
Definition at line 55 of file Rtrsmra_Data_t_scalar.h.
00055 { return scal0(m); }
|
|
||||||||||
|
Definition at line 231 of file Rtrsmra_Data_t_scalar.h. References rtrsmrascalcoef().
00232 {
00233 Data_t scalcoef;
00234 #ifdef STORM_USEC
00235 rtrsmrascalcoef(
00236 _Msize, _mmax, _mrastep,
00237 _mracoef, _mracoefrs,
00238 m, scalcoef
00239 );
00240 #else
00241 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00242 scalcoef = _mracoef[ 2*m ];
00243 // } else {
00244 // scalcoef = 1.0/0;
00245 // }
00246 #endif
00247 return scalcoef;
00248 }
|
|
||||||||||
|
Definition at line 251 of file Rtrsmra_Data_t_scalar.h. References rtrsmrascalcoefrs().
00252 {
00253 Data_t scalcoefrs;
00254 #ifdef STORM_USEC
00255 rtrsmrascalcoefrs(
00256 _Msize, _mmax, _mrastep,
00257 _mracoef, _mracoefrs,
00258 m, scalcoefrs
00259 );
00260 #else
00261 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00262 scalcoefrs = _mracoefrs[ 2*m ];
00263 // } else {
00264 // scalcoefrs = 1.0/0;
00265 // }
00266 #endif
00267 return scalcoefrs;
00268 }
|
|
||||||||||
|
Definition at line 57 of file Rtrsmra_Data_t_scalar.h.
00057 { return scal1(m); }
|
|
||||||||||||||||
|
Definition at line 396 of file Rtrsmra_Data_t_scalar.h.
00396 {}
|
|
||||||||||
|
Definition at line 59 of file Rtrsmra_Data_t_scalar.h.
00059 { return wav0(m); }
|
|
||||||||||
|
Definition at line 271 of file Rtrsmra_Data_t_scalar.h. References rtrsmrawavcoef().
00272 {
00273 Data_t wavcoef;
00274 #ifdef STORM_USEC
00275 rtrsmrawavcoef(
00276 _Msize, _mmax, _mrastep,
00277 _mracoef, _mracoefrs,
00278 m, wavcoef
00279 );
00280 #else
00281 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00282 wavcoef = _mracoef[ 2*m + 1 ];
00283 // } else {
00284 // wavcoef = 1.0/0;
00285 // }
00286 #endif
00287 return wavcoef;
00288 }
|
|
||||||||||
|
Definition at line 291 of file Rtrsmra_Data_t_scalar.h. References rtrsmrawavcoefrs().
00292 {
00293 Data_t wavcoefrs;
00294 #ifdef STORM_USEC
00295 rtrsmrawavcoefrs(
00296 _Msize, _mmax, _mrastep,
00297 _mracoef, _mracoefrs,
00298 m, wavcoefrs
00299 );
00300 #else
00301 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00302 wavcoefrs = _mracoefrs[ 2*m +1 ];
00303 // } else {
00304 // wavcoefrs = 1.0/0;
00305 // }
00306 #endif
00307 return wavcoefrs;
00308 }
|
|
||||||||||
|
Definition at line 61 of file Rtrsmra_Data_t_scalar.h.
00061 { return wav1(m); }
|
|
|||||||||
|
Definition at line 35 of file Rtrsmra_Data_t_scalar.h.
00035 { *_data = 0; }
|
|
|||||
|
Definition at line 85 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 81 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 83 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 84 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 82 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 80 of file Rtrsmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 27 of file Rtrsmra_Data_t_scalar.h. |
1.3.6