grk::mct Class Reference

`#include <mct.h>`

## Public Member Functions

| mct (Tile *tile, GrkImage *image, TileCodingParams *tcp, StripCache *stripCache)
void | compress_rev (FlowComponent *flow)
| Apply a reversible multi-component transform to an image.
void | decompress_rev (FlowComponent *flow)
| Apply a reversible multi-component inverse transform to an image.
void | compress_irrev (FlowComponent *flow)
| Apply an irreversible multi-component transform to an image.
void | decompress_irrev (FlowComponent *flow)
| Apply an irreversible multi-component inverse transform to an image.
void | decompress_dc_shift_rev (FlowComponent *flow, uint16_t compno)
| Apply a reversible inverse dc shift to an image.
void | decompress_dc_shift_irrev (FlowComponent *flow, uint16_t compno)
| Apply an irreversible inverse dc shift to an image.

## Static Public Member Functions

static const double * | get_norms_rev (void)
| Get wavelet norms for reversible transform.
static const double * | get_norms_irrev (void)
| Get wavelet norms for irreversible transform.
static bool | compress_custom (uint8_t *p_coding_data, uint64_t n, uint8_t **p_data, uint16_t numComps, uint32_t is_signed)
| Custom MCT transform.
static bool | decompress_custom (uint8_t *pDecodingData, uint64_t n, uint8_t **pData, uint16_t pNbComp, uint32_t isSigned)
| Custom MCT decode.
static void | calculate_norms (double *pNorms, uint16_t nb_comps, float *pMatrix)
| Calculate norm of MCT transform.

## Private Member Functions

void | genShift (uint16_t compno, int32_t sign, std::vector< ShiftInfo > &shiftInfo)
void | genShift (int32_t sign, std::vector< ShiftInfo > &shiftInfo)

## Private Attributes

Tile * | tile_
GrkImage * | image_
TileCodingParams * | tcp_
StripCache * | stripCache_

## Constructor & Destructor Documentation

## mct()

grk::mct::mct | ( | Tile * | tile,
|  | GrkImage * | image,
|  | TileCodingParams * | tcp,
|  | StripCache * | stripCache
| ) |  |

## Member Function Documentation

## calculate_norms()

static void grk::mct::calculate_norms | ( | double * | pNorms,
|  | uint16_t | nb_comps,
|  | float * | pMatrix
| ) |  |

static

Calculate norm of MCT transform.

Parameters

  pNorms | MCT data
  nb_comps | number of components
  pMatrix | components

Referenced by grk::CodeStreamCompress::init().

## compress_custom()

static bool grk::mct::compress_custom | ( | uint8_t * | p_coding_data,
|  | uint64_t | n,
|  | uint8_t ** | p_data,
|  | uint16_t | numComps,
|  | uint32_t | is_signed
| ) |  |

static

Custom MCT transform.

Parameters

  p_coding_data | MCT data
  n | size of components
  p_data | components
  numComps | nb of components (i.e. size of p_data)
  is_signed | indicates if the data is signed

Returns
  false if function encounter a problem, true otherwise

Referenced by grk::TileProcessor::mct_encode().

## compress_irrev()

void grk::mct::compress_irrev | ( | FlowComponent * | flow | ) |

Apply an irreversible multi-component transform to an image.

Referenced by grk::TileProcessor::mct_encode().

## compress_rev()

void grk::mct::compress_rev | ( | FlowComponent * | flow | ) |

Apply a reversible multi-component transform to an image.

Referenced by grk::TileProcessor::mct_encode().

## decompress_custom()

static bool grk::mct::decompress_custom | ( | uint8_t * | pDecodingData,
|  | uint64_t | n,
|  | uint8_t ** | pData,
|  | uint16_t | pNbComp,
|  | uint32_t | isSigned
| ) |  |

static

Custom MCT decode.

Parameters

  pDecodingData | MCT data
  n | size of components
  pData | components
  pNbComp | nb of components (i.e. size of p_data)
  isSigned | tells if the data is signed

Returns
  false if function encounter a problem, true otherwise

Referenced by grk::TileProcessor::mctDecompress().

## decompress_dc_shift_irrev()

void grk::mct::decompress_dc_shift_irrev | ( | FlowComponent * | flow,
|  | uint16_t | compno
| ) |  |

Apply an irreversible inverse dc shift to an image.

Referenced by grk::TileProcessor::decompressT2T1().

## decompress_dc_shift_rev()

void grk::mct::decompress_dc_shift_rev | ( | FlowComponent * | flow,
|  | uint16_t | compno
| ) |  |

Apply a reversible inverse dc shift to an image.

Referenced by grk::TileProcessor::decompressT2T1().

## decompress_irrev()

void grk::mct::decompress_irrev | ( | FlowComponent * | flow | ) |

Apply an irreversible multi-component inverse transform to an image.

Referenced by grk::TileProcessor::mctDecompress().

## decompress_rev()

void grk::mct::decompress_rev | ( | FlowComponent * | flow | ) |

Apply a reversible multi-component inverse transform to an image.

Referenced by grk::TileProcessor::mctDecompress().

## genShift() [1/2]

void grk::mct::genShift | ( | int32_t | sign,
|  | std::vector< ShiftInfo > & | shiftInfo
| ) |  |

private

## genShift() [2/2]

void grk::mct::genShift | ( | uint16_t | compno,
|  | int32_t | sign,
|  | std::vector< ShiftInfo > & | shiftInfo
| ) |  |

private

## get_norms_irrev()

static const double * grk::mct::get_norms_irrev | ( | void |  | ) |

static

Get wavelet norms for irreversible transform.

Referenced by grk::TileProcessor::t1_encode().

## get_norms_rev()

static const double * grk::mct::get_norms_rev | ( | void |  | ) |

static

Get wavelet norms for reversible transform.

Referenced by grk::TileProcessor::t1_encode().

## Member Data Documentation

## image_

GrkImage* grk::mct::image_

private

## stripCache_

StripCache* grk::mct::stripCache_

private

## tcp_

TileCodingParams* grk::mct::tcp_

private

## tile_

Tile* grk::mct::tile_

private

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

- mct.h