grk::WaveletReverse Class Reference

`#include <WaveletReverse.h>`

## Public Member Functions

| WaveletReverse (TileProcessor *tileProcessor, TileComponent *tilec, uint16_t compno, grk_rect32 window, uint8_t numres, uint8_t qmfbid)
| ~WaveletReverse (void)
bool | decompress (void)

## Static Public Member Functions

static void | decompress_step_97 (dwt_data< vec4f > *GRK_RESTRICT dwt)

## Private Member Functions

template<typename T , uint32_t FILTER_WIDTH, uint32_t VERT_PASS_WIDTH, typename D >
bool | decompress_partial_tile (ISparseCanvas *sa, std::vector< TaskInfo< T, dwt_data< T > > * > &tasks)
void | interleave_h_97 (dwt_data< vec4f > *GRK_RESTRICT dwt, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, uint32_t remaining_height)
void | decompress_h_strip_97 (dwt_data< vec4f > *GRK_RESTRICT horiz, const uint32_t resHeight, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, grk_buf2d_simple< float > winDest)
bool | decompress_h_97 (uint8_t res, uint32_t numThreads, size_t dataLength, dwt_data< vec4f > &GRK_RESTRICT horiz, const uint32_t resHeight, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, grk_buf2d_simple< float > winDest)
void | interleave_v_97 (dwt_data< vec4f > *GRK_RESTRICT dwt, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, uint32_t nb_elts_read)
void | decompress_v_strip_97 (dwt_data< vec4f > *GRK_RESTRICT vert, const uint32_t resWidth, const uint32_t resHeight, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, grk_buf2d_simple< float > winDest)
bool | decompress_v_97 (uint8_t res, uint32_t numThreads, size_t dataLength, dwt_data< vec4f > &GRK_RESTRICT vert, const uint32_t resWidth, const uint32_t resHeight, grk_buf2d_simple< float > winL, grk_buf2d_simple< float > winH, grk_buf2d_simple< float > winDest)
bool | decompress_tile_97 (void)
void | decompress_h_parity_even_53 (int32_t *buf, int32_t *bandL, const uint32_t wL, int32_t *bandH, const uint32_t wH, int32_t *dest)
void | decompress_h_parity_odd_53 (int32_t *buf, int32_t *bandL, const uint32_t wL, int32_t *bandH, const uint32_t wH, int32_t *dest)
void | decompress_v_parity_even_53 (int32_t *buf, int32_t *bandL, const uint32_t hL, const uint32_t strideL, int32_t *bandH, const uint32_t hH, const uint32_t strideH, int32_t *dest, const uint32_t strideDest)
void | decompress_v_parity_odd_53 (int32_t *buf, int32_t *bandL, const uint32_t hL, const uint32_t strideL, int32_t *bandH, const uint32_t hH, const uint32_t strideH, int32_t *dest, const uint32_t strideDest)
void | decompress_h_53 (const dwt_data< int32_t > *dwt, int32_t *bandL, int32_t *bandH, int32_t *dest)
void | decompress_v_53 (const dwt_data< int32_t > *dwt, grk_buf2d_simple< int32_t > winL, grk_buf2d_simple< int32_t > winH, grk_buf2d_simple< int32_t > winDest, uint32_t nb_cols)
void | decompress_h_strip_53 (const dwt_data< int32_t > *horiz, uint32_t hMin, uint32_t hMax, grk_buf2d_simple< int32_t > winL, grk_buf2d_simple< int32_t > winH, grk_buf2d_simple< int32_t > winDest)
bool | decompress_h_53 (uint8_t res, TileComponentWindow< int32_t > *buf, uint32_t resHeight, size_t dataLength)
void | decompress_v_strip_53 (const dwt_data< int32_t > *vert, uint32_t wMin, uint32_t wMax, grk_buf2d_simple< int32_t > winL, grk_buf2d_simple< int32_t > winH, grk_buf2d_simple< int32_t > winDest)
bool | decompress_v_53 (uint8_t res, TileComponentWindow< int32_t > *buf, uint32_t resWidth, size_t dataLength)
bool | decompress_tile_53 (void)

## Static Private Member Functions

static void | decompress_step1_97 (const Params97 &d, const float c)
static Params97 | makeParams97 (dwt_data< vec4f > *dwt, bool isBandL, bool step1)

## Private Attributes

TileProcessor * | tileProcessor_
Scheduler * | scheduler_
TileComponent * | tilec_
uint16_t | compno_
grk_rect32 | unreducedWindow_
uint8_t | numres_
uint8_t | qmfbid_
dwt_data< int32_t > | horiz_
dwt_data< int32_t > | vert_
dwt_data< vec4f > | horizF_
dwt_data< vec4f > | vertF_
std::vector< TaskInfo< vec4f, dwt_data< vec4f > > * > | tasksF_
std::vector< TaskInfo< int32_t, dwt_data< int32_t > > * > | tasks_

## Constructor & Destructor Documentation

## WaveletReverse()

grk::WaveletReverse::WaveletReverse | ( | TileProcessor * | tileProcessor,
|  | TileComponent * | tilec,
|  | uint16_t | compno,
|  | grk_rect32 | window,
|  | uint8_t | numres,
|  | uint8_t | qmfbid
| ) |  |

## ~WaveletReverse()

grk::WaveletReverse::~WaveletReverse | ( | void |  | ) |

## Member Function Documentation

## decompress()

bool grk::WaveletReverse::decompress | ( | void |  | ) |

Referenced by grk::DecompressScheduler::scheduleWavelet().

## decompress_h_53() [1/2]

void grk::WaveletReverse::decompress_h_53 | ( | const dwt_data< int32_t > * | dwt,
|  | int32_t * | bandL,
|  | int32_t * | bandH,
|  | int32_t * | dest
| ) |  |

private

## decompress_h_53() [2/2]

bool grk::WaveletReverse::decompress_h_53 | ( | uint8_t | res,
|  | TileComponentWindow< int32_t > * | buf,
|  | uint32_t | resHeight,
|  | size_t | dataLength
| ) |  |

private

## decompress_h_97()

bool grk::WaveletReverse::decompress_h_97 | ( | uint8_t | res,
|  | uint32_t | numThreads,
|  | size_t | dataLength,
|  | dwt_data< vec4f > &GRK_RESTRICT | horiz,
|  | const uint32_t | resHeight,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | grk_buf2d_simple< float > | winDest
| ) |  |

private

## decompress_h_parity_even_53()

void grk::WaveletReverse::decompress_h_parity_even_53 | ( | int32_t * | buf,
|  | int32_t * | bandL,
|  | const uint32_t | wL,
|  | int32_t * | bandH,
|  | const uint32_t | wH,
|  | int32_t * | dest
| ) |  |

private

## decompress_h_parity_odd_53()

void grk::WaveletReverse::decompress_h_parity_odd_53 | ( | int32_t * | buf,
|  | int32_t * | bandL,
|  | const uint32_t | wL,
|  | int32_t * | bandH,
|  | const uint32_t | wH,
|  | int32_t * | dest
| ) |  |

private

## decompress_h_strip_53()

void grk::WaveletReverse::decompress_h_strip_53 | ( | const dwt_data< int32_t > * | horiz,
|  | uint32_t | hMin,
|  | uint32_t | hMax,
|  | grk_buf2d_simple< int32_t > | winL,
|  | grk_buf2d_simple< int32_t > | winH,
|  | grk_buf2d_simple< int32_t > | winDest
| ) |  |

private

## decompress_h_strip_97()

void grk::WaveletReverse::decompress_h_strip_97 | ( | dwt_data< vec4f > *GRK_RESTRICT | horiz,
|  | const uint32_t | resHeight,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | grk_buf2d_simple< float > | winDest
| ) |  |

private

## decompress_partial_tile()

template<typename T , uint32_t FILTER_WIDTH, uint32_t VERT_PASS_WIDTH, typename D >

bool grk::WaveletReverse::decompress_partial_tile | ( | ISparseCanvas * | sa,
|  | std::vector< TaskInfo< T, dwt_data< T > > * > & | tasks
| ) |  |

private

## decompress_step1_97()

static void grk::WaveletReverse::decompress_step1_97 | ( | const Params97 & | d,
|  | const float | c
| ) |  |

static private

## decompress_step_97()

static void grk::WaveletReverse::decompress_step_97 | ( | dwt_data< vec4f > *GRK_RESTRICT | dwt | ) |

static

## decompress_tile_53()

bool grk::WaveletReverse::decompress_tile_53 | ( | void |  | ) |

private

## decompress_tile_97()

bool grk::WaveletReverse::decompress_tile_97 | ( | void |  | ) |

private

## decompress_v_53() [1/2]

void grk::WaveletReverse::decompress_v_53 | ( | const dwt_data< int32_t > * | dwt,
|  | grk_buf2d_simple< int32_t > | winL,
|  | grk_buf2d_simple< int32_t > | winH,
|  | grk_buf2d_simple< int32_t > | winDest,
|  | uint32_t | nb_cols
| ) |  |

private

## decompress_v_53() [2/2]

bool grk::WaveletReverse::decompress_v_53 | ( | uint8_t | res,
|  | TileComponentWindow< int32_t > * | buf,
|  | uint32_t | resWidth,
|  | size_t | dataLength
| ) |  |

private

## decompress_v_97()

bool grk::WaveletReverse::decompress_v_97 | ( | uint8_t | res,
|  | uint32_t | numThreads,
|  | size_t | dataLength,
|  | dwt_data< vec4f > &GRK_RESTRICT | vert,
|  | const uint32_t | resWidth,
|  | const uint32_t | resHeight,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | grk_buf2d_simple< float > | winDest
| ) |  |

private

## decompress_v_parity_even_53()

void grk::WaveletReverse::decompress_v_parity_even_53 | ( | int32_t * | buf,
|  | int32_t * | bandL,
|  | const uint32_t | hL,
|  | const uint32_t | strideL,
|  | int32_t * | bandH,
|  | const uint32_t | hH,
|  | const uint32_t | strideH,
|  | int32_t * | dest,
|  | const uint32_t | strideDest
| ) |  |

private

## decompress_v_parity_odd_53()

void grk::WaveletReverse::decompress_v_parity_odd_53 | ( | int32_t * | buf,
|  | int32_t * | bandL,
|  | const uint32_t | hL,
|  | const uint32_t | strideL,
|  | int32_t * | bandH,
|  | const uint32_t | hH,
|  | const uint32_t | strideH,
|  | int32_t * | dest,
|  | const uint32_t | strideDest
| ) |  |

private

## decompress_v_strip_53()

void grk::WaveletReverse::decompress_v_strip_53 | ( | const dwt_data< int32_t > * | vert,
|  | uint32_t | wMin,
|  | uint32_t | wMax,
|  | grk_buf2d_simple< int32_t > | winL,
|  | grk_buf2d_simple< int32_t > | winH,
|  | grk_buf2d_simple< int32_t > | winDest
| ) |  |

private

## decompress_v_strip_97()

void grk::WaveletReverse::decompress_v_strip_97 | ( | dwt_data< vec4f > *GRK_RESTRICT | vert,
|  | const uint32_t | resWidth,
|  | const uint32_t | resHeight,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | grk_buf2d_simple< float > | winDest
| ) |  |

private

## interleave_h_97()

void grk::WaveletReverse::interleave_h_97 | ( | dwt_data< vec4f > *GRK_RESTRICT | dwt,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | uint32_t | remaining_height
| ) |  |

private

## interleave_v_97()

void grk::WaveletReverse::interleave_v_97 | ( | dwt_data< vec4f > *GRK_RESTRICT | dwt,
|  | grk_buf2d_simple< float > | winL,
|  | grk_buf2d_simple< float > | winH,
|  | uint32_t | nb_elts_read
| ) |  |

private

## makeParams97()

static Params97 grk::WaveletReverse::makeParams97 | ( | dwt_data< vec4f > * | dwt,
|  | bool | isBandL,
|  | bool | step1
| ) |  |

static private

## Member Data Documentation

## compno_

uint16_t grk::WaveletReverse::compno_

private

## horiz_

dwt_data<int32_t> grk::WaveletReverse::horiz_

private

## horizF_

dwt_data<vec4f> grk::WaveletReverse::horizF_

private

## numres_

uint8_t grk::WaveletReverse::numres_

private

## qmfbid_

uint8_t grk::WaveletReverse::qmfbid_

private

## scheduler_

Scheduler* grk::WaveletReverse::scheduler_

private

## tasks_

std::vector<TaskInfo<int32_t, dwt_data<int32_t> >*> grk::WaveletReverse::tasks_

private

## tasksF_

std::vector<TaskInfo<vec4f, dwt_data<vec4f> >*> grk::WaveletReverse::tasksF_

private

## tilec_

TileComponent* grk::WaveletReverse::tilec_

private

## tileProcessor_

TileProcessor* grk::WaveletReverse::tileProcessor_

private

## unreducedWindow_

grk_rect32 grk::WaveletReverse::unreducedWindow_

private

## vert_

dwt_data<int32_t> grk::WaveletReverse::vert_

private

## vertF_

dwt_data<vec4f> grk::WaveletReverse::vertF_

private

The documentation for this class was generated from the following file:

- WaveletReverse.h