OpenJPEG: t1.h File Reference

OpenJPEG 2.3.0

Data Structures | Macros | Typedefs
t1.h File Reference

Implementation of the tier-1 coding (coding of code-block coefficients) (T1) More...

Go to the source code of this file.

## Data Structures
struct | opj_t1
| Tier-1 coding (coding of code-block coefficients) More...

## Macros
#define | T1_NMSEDEC_BITS 7
#define | T1_NUMCTXS_ZC 9
#define | T1_NUMCTXS_SC 5
#define | T1_NUMCTXS_MAG 3
#define | T1_NUMCTXS_AGG 1
#define | T1_NUMCTXS_UNI 1
#define | T1_CTXNO_ZC 0
#define | T1_CTXNO_SC (T1_CTXNO_ZC+T1_NUMCTXS_ZC)
#define | T1_CTXNO_MAG (T1_CTXNO_SC+T1_NUMCTXS_SC)
#define | T1_CTXNO_AGG (T1_CTXNO_MAG+T1_NUMCTXS_MAG)
#define | T1_CTXNO_UNI (T1_CTXNO_AGG+T1_NUMCTXS_AGG)
#define | T1_NUMCTXS (T1_CTXNO_UNI+T1_NUMCTXS_UNI)
#define | T1_NMSEDEC_FRACBITS (T1_NMSEDEC_BITS-1)
#define | T1_TYPE_MQ 0
| Normal coding using entropy coder. More...
#define | T1_TYPE_RAW 1
| No encoding the information is store under raw format in codestream (mode switch RAW) More...
#define | T1_SIGMA_0 (1U << 0)
| We hold the state of individual data points for the T1 encoder using a single 32-bit flags word to hold the state of 4 data points. More...
#define | T1_SIGMA_1 (1U << 1)
#define | T1_SIGMA_2 (1U << 2)
#define | T1_SIGMA_3 (1U << 3)
#define | T1_SIGMA_4 (1U << 4)
#define | T1_SIGMA_5 (1U << 5)
#define | T1_SIGMA_6 (1U << 6)
#define | T1_SIGMA_7 (1U << 7)
#define | T1_SIGMA_8 (1U << 8)
#define | T1_SIGMA_9 (1U << 9)
#define | T1_SIGMA_10 (1U << 10)
#define | T1_SIGMA_11 (1U << 11)
#define | T1_SIGMA_12 (1U << 12)
#define | T1_SIGMA_13 (1U << 13)
#define | T1_SIGMA_14 (1U << 14)
#define | T1_SIGMA_15 (1U << 15)
#define | T1_SIGMA_16 (1U << 16)
#define | T1_SIGMA_17 (1U << 17)
#define | T1_CHI_0 (1U << 18)
#define | T1_CHI_0_I 18
#define | T1_CHI_1 (1U << 19)
#define | T1_CHI_1_I 19
#define | T1_MU_0 (1U << 20)
#define | T1_PI_0 (1U << 21)
#define | T1_CHI_2 (1U << 22)
#define | T1_CHI_2_I 22
#define | T1_MU_1 (1U << 23)
#define | T1_PI_1 (1U << 24)
#define | T1_CHI_3 (1U << 25)
#define | T1_MU_2 (1U << 26)
#define | T1_PI_2 (1U << 27)
#define | T1_CHI_4 (1U << 28)
#define | T1_MU_3 (1U << 29)
#define | T1_PI_3 (1U << 30)
#define | T1_CHI_5 (1U << 31)
#define | T1_CHI_5_I 31
#define | T1_SIGMA_NW T1_SIGMA_0
| As an example, the bits T1_SIGMA_3, T1_SIGMA_4 and T1_SIGMA_5 indicate the significance state of the west neighbour of data point zero of our four, the point itself, and its east neighbour respectively. More...
#define | T1_SIGMA_N T1_SIGMA_1
#define | T1_SIGMA_NE T1_SIGMA_2
#define | T1_SIGMA_W T1_SIGMA_3
#define | T1_SIGMA_THIS T1_SIGMA_4
#define | T1_SIGMA_E T1_SIGMA_5
#define | T1_SIGMA_SW T1_SIGMA_6
#define | T1_SIGMA_S T1_SIGMA_7
#define | T1_SIGMA_SE T1_SIGMA_8
#define | T1_SIGMA_NEIGHBOURS (T1_SIGMA_NW | T1_SIGMA_N | T1_SIGMA_NE | T1_SIGMA_W | T1_SIGMA_E | T1_SIGMA_SW | T1_SIGMA_S | T1_SIGMA_SE)
#define | T1_CHI_THIS T1_CHI_1
#define | T1_CHI_THIS_I T1_CHI_1_I
#define | T1_MU_THIS T1_MU_0
#define | T1_PI_THIS T1_PI_0
#define | T1_CHI_S T1_CHI_2
#define | T1_LUT_SGN_W (1U << 0)
#define | T1_LUT_SIG_N (1U << 1)
#define | T1_LUT_SGN_E (1U << 2)
#define | T1_LUT_SIG_W (1U << 3)
#define | T1_LUT_SGN_N (1U << 4)
#define | T1_LUT_SIG_E (1U << 5)
#define | T1_LUT_SGN_S (1U << 6)
#define | T1_LUT_SIG_S (1U << 7)

## Typedefs
typedef OPJ_UINT32 | opj_flag_t
| Flags for 4 consecutive rows of a column. More...
typedef struct opj_t1 | opj_t1_t
| Tier-1 coding (coding of code-block coefficients) More...

## Functions
Exported functions
OPJ_BOOL | opj_t1_encode_cblks (opj_t1_t *t1, opj_tcd_tile_t *tile, opj_tcp_t *tcp, const OPJ_FLOAT64 *mct_norms, OPJ_UINT32 mct_numcomps)
| Encode the code-blocks of a tile More...
void | opj_t1_decode_cblks (opj_tcd_t *tcd, volatile OPJ_BOOL *pret, opj_tcd_tilecomp_t *tilec, opj_tccp_t *tccp, opj_event_mgr_t *p_manager, opj_mutex_t *p_manager_mutex, OPJ_BOOL check_pterm)
| Decode the code-blocks of a tile More...
opj_t1_t * | opj_t1_create (OPJ_BOOL isEncoder)
| Creates a new Tier 1 handle and initializes the look-up tables of the Tier-1 coder/decoder. More...
void | opj_t1_destroy (opj_t1_t *p_t1)
| Destroys a previously created T1 handle. More...

## Detailed Description

Implementation of the tier-1 coding (coding of code-block coefficients) (T1)

The functions in T1.C have for goal to realize the tier-1 coding operation. The functions in T1.C are used by some function in TCD.C.