OpenJPEG  2.4.0
Functions | Variables
mqc.c File Reference
#include "opj_includes.h"
#include <assert.h>

Functions

OPJ_UINT32 opj_mqc_numbytes (opj_mqc_t *mqc)
 Return the number of bytes written/read since initialisation. More...
 
void opj_mqc_init_enc (opj_mqc_t *mqc, OPJ_BYTE *bp)
 Initialize the encoder. More...
 
void opj_mqc_flush (opj_mqc_t *mqc)
 Flush the encoder, so that all remaining data is written. More...
 
void opj_mqc_bypass_init_enc (opj_mqc_t *mqc)
 BYPASS mode switch, initialization operation. More...
 
void opj_mqc_bypass_enc (opj_mqc_t *mqc, OPJ_UINT32 d)
 BYPASS mode switch, coding operation. More...
 
OPJ_UINT32 opj_mqc_bypass_get_extra_bytes (opj_mqc_t *mqc, OPJ_BOOL erterm)
 Return number of extra bytes to add to opj_mqc_numbytes() for theĀ² size of a non-terminating BYPASS pass. More...
 
void opj_mqc_bypass_flush_enc (opj_mqc_t *mqc, OPJ_BOOL erterm)
 BYPASS mode switch, flush operation. More...
 
void opj_mqc_reset_enc (opj_mqc_t *mqc)
 RESET mode switch. More...
 
void opj_mqc_restart_init_enc (opj_mqc_t *mqc)
 RESTART mode switch (TERMALL) reinitialisation. More...
 
void opj_mqc_erterm_enc (opj_mqc_t *mqc)
 ERTERM mode switch (PTERM) More...
 
static INLINE void opj_mqc_renorme (opj_mqc_t *mqc)
 
static INLINE void opj_mqc_codemps (opj_mqc_t *mqc)
 Encode the most probable symbol. More...
 
static INLINE void opj_mqc_codelps (opj_mqc_t *mqc)
 Encode the most least symbol. More...
 
static INLINE void opj_mqc_encode (opj_mqc_t *mqc, OPJ_UINT32 d)
 Encode a symbol using the MQ-coder. More...
 
void opj_mqc_segmark_enc (opj_mqc_t *mqc)
 SEGMARK mode switch (SEGSYM) More...
 
static void opj_mqc_init_dec_common (opj_mqc_t *mqc, OPJ_BYTE *bp, OPJ_UINT32 len, OPJ_UINT32 extra_writable_bytes)
 
void opj_mqc_init_dec (opj_mqc_t *mqc, OPJ_BYTE *bp, OPJ_UINT32 len, OPJ_UINT32 extra_writable_bytes)
 Initialize the decoder for MQ decoding. More...
 
void opj_mqc_raw_init_dec (opj_mqc_t *mqc, OPJ_BYTE *bp, OPJ_UINT32 len, OPJ_UINT32 extra_writable_bytes)
 Initialize the decoder for RAW decoding. More...
 
void opq_mqc_finish_dec (opj_mqc_t *mqc)
 Terminate RAW/MQC decoding. More...
 
void opj_mqc_resetstates (opj_mqc_t *mqc)
 Reset the states of all the context of the coder/decoder (each context is set to a state where 0 and 1 are more or less equiprobable) More...
 
void opj_mqc_setstate (opj_mqc_t *mqc, OPJ_UINT32 ctxno, OPJ_UINT32 msb, OPJ_INT32 prob)
 Set the state of a particular context. More...
 
void opj_mqc_byteout (opj_mqc_t *mqc)
 Output a byte, doing bit-stuffing if necessary. More...
 
Local static functions
static void opj_mqc_setbits (opj_mqc_t *mqc)
 Fill mqc->c with 1's for flushing. More...
 

Variables

static const opj_mqc_state_t mqc_states [47 *2]
 

Function Documentation

void opj_mqc_byteout ( opj_mqc_t mqc)

Output a byte, doing bit-stuffing if necessary.

After a 0xff byte, the next byte must be smaller than 0x90.

Parameters
mqcMQC handle

References opj_mqc::bp, opj_mqc::c, opj_mqc::ct, and opj_mqc::start.

Referenced by opj_mqc_erterm_enc(), opj_mqc_flush(), and opj_mqc_reset_enc().

static INLINE void opj_mqc_codelps ( opj_mqc_t mqc)
static

Encode the most least symbol.

Parameters
mqcMQC handle

References opj_mqc::a, opj_mqc::c, opj_mqc::ct, opj_mqc::curctx, and opj_mqc_codelps_macro.

Referenced by opj_mqc_encode().

static INLINE void opj_mqc_codemps ( opj_mqc_t mqc)
static

Encode the most probable symbol.

Parameters
mqcMQC handle

References opj_mqc::a, opj_mqc::c, opj_mqc::ct, opj_mqc::curctx, and opj_mqc_codemps_macro.

Referenced by opj_mqc_encode().

static INLINE void opj_mqc_encode ( opj_mqc_t mqc,
OPJ_UINT32  d 
)
static

Encode a symbol using the MQ-coder.

Parameters
mqcMQC handle
dThe symbol to be encoded (0 or 1)

References opj_mqc::curctx, opj_mqc_codelps(), and opj_mqc_codemps().

Referenced by opj_mqc_segmark_enc().

static void opj_mqc_init_dec_common ( opj_mqc_t mqc,
OPJ_BYTE bp,
OPJ_UINT32  len,
OPJ_UINT32  extra_writable_bytes 
)
static
static INLINE void opj_mqc_renorme ( opj_mqc_t mqc)
static

Variable Documentation

const opj_mqc_state_t mqc_states[47 *2]
static

Referenced by opj_mqc_resetstates().