DWT Class Reference

DWT class. More...

#include <dwt.hpp>


Static Public Member Functions

static __forceinline void set_zlib_compr_flag (int flag_val)
 Set Zlib compression flag.
static void dwt_fwdlift_53_2D (float *array, int pitch)
 Do forward transform.
static void dwt_fwdlift_53_2D (float *array, int pitch, int transform_levels)
 Do forward transform.
static __forceinline void dwt_invlift_53_2D (float *array, int pitch, int transform_levels)
 Do inverse transform.
static void ezw_scanorder_indices (void)
 Initialize a datastructure for the EZW tree.
static void print_array (float *array)
 Debug function.
static void ezw_encode (float *work_array, int w, int h, int passes, uchar_t *ext_compr_data_dom, uchar_t *ext_compr_data_sub)
 EZW encoding.
static __forceinline void ezw_decode (float *work_array, int w, int h, int passes, uchar_t *ext_compr_data_dom, uchar_t *ext_compr_data_sub)
 EZW decoding.


Detailed Description

DWT class.

Handles the discrete wavelet transform and the EZW compression (Shapiro).


Member Function Documentation

static void DWT::dwt_fwdlift_53_2D ( float *  array,
int  pitch,
int  transform_levels 
) [inline, static]

Do forward transform.

Do a 2D forward discrete wavelet transform by doing two 1D forward dwts on the colums and the rows of the 2D input-data. Note: array must be nxn, where n is "power of 2"

Parameters:
array Source-data and destination for final transform.
pitch Bytes per "line".
transform_levels Determines, "how many passes" to perform on the input-data.

static void DWT::dwt_fwdlift_53_2D ( float *  array,
int  pitch 
) [inline, static]

Do forward transform.

Do a 2D forward discrete wavelet transform by doing two 1D forward dwts on the colums and the rows of the 2D input-data. Note: array must be nxn, where n is "power of 2"

Parameters:
array Source-data and destination for final transform.
pitch Bytes per "line".

static __forceinline void DWT::dwt_invlift_53_2D ( float *  array,
int  pitch,
int  transform_levels 
) [inline, static]

Do inverse transform.

Do a 2D inverse discrete wavelet transform by doing two 1D inverse dwts on the colums and the rows of the 2D input-data. Note: array must be nxn, where n is "power of 2"

Parameters:
array Source-data and destination for final transform.
pitch Bytes per "line".
transform_levels Determines, "how many passes" to perform on the input-data.

static __forceinline void DWT::ezw_decode ( float *  work_array,
int  w,
int  h,
int  passes,
uchar_t *  ext_compr_data_dom,
uchar_t *  ext_compr_data_sub 
) [inline, static]

EZW decoding.

Parameters:
work_array The input array.
w The array's width.
h The array's height.
passes How many EZW passes to use.
ext_compr_data_dom The source of the symbols of the dominant pass.
ext_compr_data_sub The source of the symbols of the subordinate pass.

static void DWT::ezw_encode ( float *  work_array,
int  w,
int  h,
int  passes,
uchar_t *  ext_compr_data_dom,
uchar_t *  ext_compr_data_sub 
) [inline, static]

EZW encoding.

Parameters:
work_array The input array.
w The array's width.
h The array's height.
passes How many EZW passes to use.
ext_compr_data_dom The destination for the symbols of the dominant pass.
ext_compr_data_sub The destination for the symbols of the subordinate pass.

static void DWT::ezw_scanorder_indices ( void   )  [inline, static]

Initialize a datastructure for the EZW tree.

This datastructure allows the traversal of the quadtree-like EZW tree.

static void DWT::print_array ( float *  array  )  [inline, static]

Debug function.

Prints the array (can be called either before or after the wavelet transform).

Parameters:
array The array to print.

static __forceinline void DWT::set_zlib_compr_flag ( int  flag_val  )  [inline, static]

Set Zlib compression flag.

This flag indicates, if the symbols from next transform are to be Zlib-compressed or not.

Parameters:
flag_val The flag value (0 for no compression).


The documentation for this class was generated from the following file:
Generated on Tue Jun 26 04:22:56 2007 for YAZAPA - yet another zooming and panning application by  doxygen 1.4.7