PandA-2024.02
Functions | Variables
huffman.c File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

static int pgetc ()
 
int buf_getb ()
 
int buf_getv (int n)
 
int huff_make_dhuff_tb (int *p_xhtbl_bits, int p_dhtbl_ml, int *p_dhtbl_maxcode, int *p_dhtbl_mincode, int *p_dhtbl_valptr)
 
int DecodeHuffman (int *Xhuff_huffval, int Dhuff_ml, int *Dhuff_maxcode, int *Dhuff_mincode, int *Dhuff_valptr)
 
void DecodeHuffMCU (int *out_buf, int num_cmp)
 

Variables

static const int extend_mask [20]
 
const int bit_set_mask [32]
 
const int lmask [32]
 
static unsigned int current_read_byte
 
static int read_position = -1
 

Function Documentation

◆ buf_getb()

int buf_getb ( )

Definition at line 116 of file huffman.c.

References bit_set_mask, current_read_byte, pgetc(), and read_position.

Referenced by DecodeHuffman().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ buf_getv()

int buf_getv ( int  n)

Definition at line 137 of file huffman.c.

References current_read_byte, lmask, pgetc(), and read_position.

Referenced by DecodeHuffMCU().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DecodeHuffman()

int DecodeHuffman ( int *  Xhuff_huffval,
int  Dhuff_ml,
int *  Dhuff_maxcode,
int *  Dhuff_mincode,
int *  Dhuff_valptr 
)

Definition at line 251 of file huffman.c.

References buf_getb(), EXIT, and main_result.

Referenced by DecodeHuffMCU().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DecodeHuffMCU()

void DecodeHuffMCU ( int *  out_buf,
int  num_cmp 
)

Definition at line 281 of file huffman.c.

Referenced by decode_block().

Here is the caller graph for this function:

◆ huff_make_dhuff_tb()

int huff_make_dhuff_tb ( int *  p_xhtbl_bits,
int  p_dhtbl_ml,
int *  p_dhtbl_maxcode,
int *  p_dhtbl_mincode,
int *  p_dhtbl_valptr 
)

Definition at line 179 of file huffman.c.

Referenced by jpeg_init_decompress().

Here is the caller graph for this function:

◆ pgetc()

static int pgetc ( )
static

Definition at line 93 of file huffman.c.

References CurHuffReadBuf, and MARKER_MARKER.

Referenced by buf_getb(), and buf_getv().

Here is the caller graph for this function:

Variable Documentation

◆ bit_set_mask

const int bit_set_mask[32]
Initial value:
= {
0x00000001, 0x00000002, 0x00000004, 0x00000008,
0x00000010, 0x00000020, 0x00000040, 0x00000080,
0x00000100, 0x00000200, 0x00000400, 0x00000800,
0x00001000, 0x00002000, 0x00004000, 0x00008000,
0x00010000, 0x00020000, 0x00040000, 0x00080000,
0x00100000, 0x00200000, 0x00400000, 0x00800000,
0x01000000, 0x02000000, 0x04000000, 0x08000000,
0x10000000, 0x20000000, 0x40000000, 0x80000000
}

Definition at line 63 of file huffman.c.

Referenced by buf_getb(), and DecodeHuffMCU().

◆ current_read_byte

unsigned int current_read_byte
static

Definition at line 85 of file huffman.c.

Referenced by buf_getb(), and buf_getv().

◆ extend_mask

const int extend_mask[20]
static
Initial value:
= {
0xFFFFFFFE, 0xFFFFFFFC, 0xFFFFFFF8, 0xFFFFFFF0, 0xFFFFFFE0, 0xFFFFFFC0,
0xFFFFFF80, 0xFFFFFF00, 0xFFFFFE00, 0xFFFFFC00, 0xFFFFF800, 0xFFFFF000,
0xFFFFE000, 0xFFFFC000, 0xFFFF8000, 0xFFFF0000, 0xFFFE0000, 0xFFFC0000,
0xFFF80000, 0xFFF00000
}

Definition at line 54 of file huffman.c.

Referenced by DecodeHuffMCU().

◆ lmask

const int lmask[32]
Initial value:
= {
0x00000001, 0x00000003, 0x00000007, 0x0000000f,
0x0000001f, 0x0000003f, 0x0000007f, 0x000000ff,
0x000001ff, 0x000003ff, 0x000007ff, 0x00000fff,
0x00001fff, 0x00003fff, 0x00007fff, 0x0000ffff,
0x0001ffff, 0x0003ffff, 0x0007ffff, 0x000fffff,
0x001fffff, 0x003fffff, 0x007fffff, 0x00ffffff,
0x01ffffff, 0x03ffffff, 0x07ffffff, 0x0fffffff,
0x1fffffff, 0x3fffffff, 0x7fffffff, 0xffffffff
}

Definition at line 74 of file huffman.c.

Referenced by buf_getv().

◆ read_position

int read_position = -1
static

Definition at line 86 of file huffman.c.

Referenced by buf_getb(), and buf_getv().


Generated on Mon Feb 12 2024 13:03:07 for PandA-2024.02 by doxygen 1.8.13