Grok  7.6.2
Classes | Namespaces | Macros | Typedefs | Functions | Variables
CodeStream.h File Reference
#include <vector>
#include <map>
#include "CodingParams.h"

Go to the source code of this file.

Classes

struct  grk::marker_handler
 
struct  grk::ICodeStream
 
struct  grk::CodeStream
 

Namespaces

 grk
 Copyright (C) 2016-2020 Grok Image Compression Inc.
 

Macros

#define J2K_CP_CSTY_PRT   0x01
 
#define J2K_CP_CSTY_SOP   0x02
 
#define J2K_CP_CSTY_EPH   0x04
 
#define J2K_CCP_CSTY_PRT   0x01
 
#define J2K_CCP_QNTSTY_NOQNT   0
 
#define J2K_CCP_QNTSTY_SIQNT   1
 
#define J2K_CCP_QNTSTY_SEQNT   2
 
#define GRK_J2K_DEFAULT_CBLK_DATA_SIZE   8192
 
#define J2K_MS_SOC   0xff4f
 SOC marker value. More...
 
#define J2K_MS_SOT   0xff90
 SOT marker value. More...
 
#define J2K_MS_SOD   0xff93
 SOD marker value. More...
 
#define J2K_MS_EOC   0xffd9
 EOC marker value. More...
 
#define J2K_MS_CAP   0xff50
 CAP marker value. More...
 
#define J2K_MS_SIZ   0xff51
 SIZ marker value. More...
 
#define J2K_MS_COD   0xff52
 COD marker value. More...
 
#define J2K_MS_COC   0xff53
 COC marker value. More...
 
#define J2K_MS_RGN   0xff5e
 RGN marker value. More...
 
#define J2K_MS_QCD   0xff5c
 QCD marker value. More...
 
#define J2K_MS_QCC   0xff5d
 QCC marker value. More...
 
#define J2K_MS_POC   0xff5f
 POC marker value. More...
 
#define J2K_MS_TLM   0xff55
 TLM marker value. More...
 
#define J2K_MS_PLM   0xff57
 PLM marker value. More...
 
#define J2K_MS_PLT   0xff58
 PLT marker value. More...
 
#define J2K_MS_PPM   0xff60
 PPM marker value. More...
 
#define J2K_MS_PPT   0xff61
 PPT marker value. More...
 
#define J2K_MS_SOP   0xff91
 SOP marker value. More...
 
#define J2K_MS_EPH   0xff92
 EPH marker value. More...
 
#define J2K_MS_CRG   0xff63
 CRG marker value. More...
 
#define J2K_MS_COM   0xff64
 COM marker value. More...
 
#define J2K_MS_CBD   0xff78
 CBD marker value. More...
 
#define J2K_MS_MCC   0xff75
 MCC marker value. More...
 
#define J2K_MS_MCT   0xff74
 MCT marker value. More...
 
#define J2K_MS_MCO   0xff77
 MCO marker value. More...
 
#define J2K_MS_UNK   0
 UNKNOWN marker value. More...
 

Typedefs

typedef bool(* grk::j2k_procedure) (CodeStream *codeStream)
 
typedef bool(* grk::marker_callback) (CodeStream *codeStream, uint8_t *p_header_data, uint16_t header_size)
 

Functions

bool grk::grk_image_single_component_data_alloc (grk_image_comp *image)
 Allocate data for single image component. More...
 
Exported functions
char * grk::j2k_convert_progression_order (GRK_PROG_ORDER prg_order)
 Converts an enum type progression order to string type. More...
 
bool grk::j2k_decompress_tile (CodeStream *codeStream, grk_image *p_image, uint16_t tile_index)
 
bool grk::j2k_init_mct_encoding (TileCodingParams *p_tcp, grk_image *p_image)
 

Variables

const uint32_t grk::sot_marker_segment_len = 12U
 
const uint32_t grk::grk_marker_length = 4U
 
const uint32_t grk::SPCod_SPCoc_len = 5U
 
const uint32_t grk::cod_coc_len = 5U
 
const uint32_t grk::tlm_len_per_tile_part = 5
 
const uint32_t grk::GRK_COMP_PARAM_DEFAULT_CBLOCKW = 64
 
const uint32_t grk::GRK_COMP_PARAM_DEFAULT_CBLOCKH = 64
 
const GRK_PROG_ORDER grk::GRK_COMP_PARAM_DEFAULT_PROG_ORDER = GRK_LRCP
 
const uint32_t grk::GRK_COMP_PARAM_DEFAULT_NUMRESOLUTION = 6
 
const uint32_t grk::max_precision_jpeg_2000 = 38
 
const uint32_t grk::max_num_components = 16384
 
const uint32_t grk::max_passes_per_segment = (max_precision_jpeg_2000-1) * 3 +1
 
const uint32_t grk::max_num_tiles = 65535
 
const uint32_t grk::max_num_tile_parts_per_tile = 255
 
const uint32_t grk::max_num_tile_parts = 65535
 
const uint32_t grk::max_tile_part_size = UINT_MAX
 
const uint32_t grk::max_supported_precision = 16
 
const uint32_t grk::default_numbers_segments = 10
 
const uint32_t grk::default_header_size = 1000
 
const uint32_t grk::default_number_mcc_records = 10
 
const uint32_t grk::default_number_mct_records = 10
 

Macro Definition Documentation

◆ GRK_J2K_DEFAULT_CBLK_DATA_SIZE

#define GRK_J2K_DEFAULT_CBLK_DATA_SIZE   8192

◆ J2K_CCP_CSTY_PRT

#define J2K_CCP_CSTY_PRT   0x01

◆ J2K_CCP_QNTSTY_NOQNT

#define J2K_CCP_QNTSTY_NOQNT   0

◆ J2K_CCP_QNTSTY_SEQNT

#define J2K_CCP_QNTSTY_SEQNT   2

◆ J2K_CCP_QNTSTY_SIQNT

#define J2K_CCP_QNTSTY_SIQNT   1

◆ J2K_CP_CSTY_EPH

#define J2K_CP_CSTY_EPH   0x04

◆ J2K_CP_CSTY_PRT

#define J2K_CP_CSTY_PRT   0x01

◆ J2K_CP_CSTY_SOP

#define J2K_CP_CSTY_SOP   0x02

◆ J2K_MS_CAP

#define J2K_MS_CAP   0xff50

CAP marker value.

◆ J2K_MS_CBD

#define J2K_MS_CBD   0xff78

CBD marker value.

◆ J2K_MS_COC

#define J2K_MS_COC   0xff53

COC marker value.

◆ J2K_MS_COD

#define J2K_MS_COD   0xff52

COD marker value.

◆ J2K_MS_COM

#define J2K_MS_COM   0xff64

COM marker value.

◆ J2K_MS_CRG

#define J2K_MS_CRG   0xff63

CRG marker value.

◆ J2K_MS_EOC

#define J2K_MS_EOC   0xffd9

EOC marker value.

◆ J2K_MS_EPH

#define J2K_MS_EPH   0xff92

EPH marker value.

◆ J2K_MS_MCC

#define J2K_MS_MCC   0xff75

MCC marker value.

◆ J2K_MS_MCO

#define J2K_MS_MCO   0xff77

MCO marker value.

◆ J2K_MS_MCT

#define J2K_MS_MCT   0xff74

MCT marker value.

◆ J2K_MS_PLM

#define J2K_MS_PLM   0xff57

PLM marker value.

◆ J2K_MS_PLT

#define J2K_MS_PLT   0xff58

PLT marker value.

◆ J2K_MS_POC

#define J2K_MS_POC   0xff5f

POC marker value.

◆ J2K_MS_PPM

#define J2K_MS_PPM   0xff60

PPM marker value.

◆ J2K_MS_PPT

#define J2K_MS_PPT   0xff61

PPT marker value.

◆ J2K_MS_QCC

#define J2K_MS_QCC   0xff5d

QCC marker value.

◆ J2K_MS_QCD

#define J2K_MS_QCD   0xff5c

QCD marker value.

◆ J2K_MS_RGN

#define J2K_MS_RGN   0xff5e

RGN marker value.

◆ J2K_MS_SIZ

#define J2K_MS_SIZ   0xff51

SIZ marker value.

◆ J2K_MS_SOC

#define J2K_MS_SOC   0xff4f

SOC marker value.

◆ J2K_MS_SOD

#define J2K_MS_SOD   0xff93

SOD marker value.

◆ J2K_MS_SOP

#define J2K_MS_SOP   0xff91

SOP marker value.

◆ J2K_MS_SOT

#define J2K_MS_SOT   0xff90

SOT marker value.

◆ J2K_MS_TLM

#define J2K_MS_TLM   0xff55

TLM marker value.

◆ J2K_MS_UNK

#define J2K_MS_UNK   0

UNKNOWN marker value.