QtBase  v6.3.1
Classes | Macros | Functions | Variables
trees.c File Reference
#include "deflate.h"
Include dependency graph for trees.c:

Go to the source code of this file.

Classes

struct  static_tree_desc_s
 

Macros

#define MAX_BL_BITS   7
 
#define END_BLOCK   256
 
#define REP_3_6   16
 
#define REPZ_3_10   17
 
#define REPZ_11_138   18
 
#define DIST_CODE_LEN   512 /* see definition of array dist_code below */
 
#define send_code(s, c, tree)   send_bits(s, tree[c].Code, tree[c].Len)
 
#define put_short(s, w)
 
#define send_bits(s, value, length)
 
#define SMALLEST   1
 
#define pqremove(s, tree, top)
 
#define smaller(tree, n, m, depth)
 

Functions

void tr_static_init OF ((void))
 
void init_block OF ((deflate_state *s))
 
void pqdownheap OF ((deflate_state *s, ct_data *tree, int k))
 
void gen_bitlen OF ((deflate_state *s, tree_desc *desc))
 
void gen_codes OF ((ct_data *tree, int max_code, ushf *bl_count))
 
void scan_tree OF ((deflate_state *s, ct_data *tree, int max_code))
 
void send_all_trees OF ((deflate_state *s, int lcodes, int dcodes, int blcodes))
 
void compress_block OF ((deflate_state *s, const ct_data *ltree, const ct_data *dtree))
 
unsigned bi_reverse OF ((unsigned code, int len))
 
void tr_static_init ()
 
void ZLIB_INTERNAL _tr_init (deflate_state *s)
 
void init_block (deflate_state *s)
 
void pqdownheap (deflate_state *s, ct_data *tree, int k)
 
void gen_bitlen (deflate_state *s, tree_desc *desc)
 
void gen_codes (ct_data *tree, int max_code, ushf *bl_count)
 
void build_tree (deflate_state *s, tree_desc *desc)
 
void scan_tree (deflate_state *s, ct_data *tree, int max_code)
 
void send_tree (deflate_state *s, ct_data *tree, int max_code)
 
int build_bl_tree (deflate_state *s)
 
void send_all_trees (deflate_state *s, int lcodes, int dcodes, int blcodes)
 
void ZLIB_INTERNAL _tr_stored_block (deflate_state *s, charf *buf, ulg stored_len, int last)
 
void ZLIB_INTERNAL _tr_flush_bits (deflate_state *s)
 
void ZLIB_INTERNAL _tr_align (deflate_state *s)
 
void ZLIB_INTERNAL _tr_flush_block (deflate_state *s, charf *buf, ulg stored_len, int last)
 
int ZLIB_INTERNAL _tr_tally (deflate_state *s, unsigned dist, unsigned lc)
 
void compress_block (deflate_state *s, const ct_data *ltree, const ct_data *dtree)
 
int detect_data_type (deflate_state *s)
 
unsigned bi_reverse (unsigned code, int len)
 
void bi_flush (deflate_state *s)
 
void bi_windup (deflate_state *s)
 

Variables

const int extra_lbits [LENGTH_CODES] = {0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0}
 
const int extra_dbits [D_CODES] = {0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}
 
const int extra_blbits [BL_CODES] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7}
 
const uch bl_order [BL_CODES] = {16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15}
 
ct_data static_ltree [L_CODES+2]
 
ct_data static_dtree [D_CODES]
 
uch _dist_code [DIST_CODE_LEN]
 
uch _length_code [MAX_MATCH-MIN_MATCH+1]
 
int base_length [LENGTH_CODES]
 
int base_dist [D_CODES]
 
const static_tree_desc static_l_desc
 
const static_tree_desc static_d_desc
 
const static_tree_desc static_bl_desc
 

Macro Definition Documentation

◆ DIST_CODE_LEN

#define DIST_CODE_LEN   512 /* see definition of array dist_code below */

Definition at line 81 of file trees.c.

◆ END_BLOCK

#define END_BLOCK   256

Definition at line 50 of file trees.c.

◆ MAX_BL_BITS

#define MAX_BL_BITS   7

Definition at line 47 of file trees.c.

◆ pqremove

#define pqremove (   s,
  tree,
  top 
)
Value:
{\
top = s->heap[SMALLEST]; \
s->heap[SMALLEST] = s->heap[s->heap_len--]; \
pqdownheap(s, tree, SMALLEST); \
}
GLdouble s
[6]
Definition: qopenglext.h:235
#define SMALLEST
Definition: trees.c:422

Definition at line 430 of file trees.c.

◆ put_short

#define put_short (   s,
  w 
)
Value:
{ \
put_byte(s, (uch)((w) & 0xff)); \
put_byte(s, (uch)((ush)(w) >> 8)); \
}
unsigned short ush
Definition: zutil.h:36
unsigned char uch
Definition: zutil.h:34
GLfloat GLfloat GLfloat w
[0]

Definition at line 174 of file trees.c.

◆ REP_3_6

#define REP_3_6   16

Definition at line 53 of file trees.c.

◆ REPZ_11_138

#define REPZ_11_138   18

Definition at line 59 of file trees.c.

◆ REPZ_3_10

#define REPZ_3_10   17

Definition at line 56 of file trees.c.

◆ send_bits

#define send_bits (   s,
  value,
  length 
)
Value:
{ int len = length;\
if (s->bi_valid > (int)Buf_size - len) {\
int val = (int)value;\
s->bi_buf |= (ush)val << s->bi_valid;\
put_short(s, s->bi_buf);\
s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
s->bi_valid += len - Buf_size;\
} else {\
s->bi_buf |= (ush)(value) << s->bi_valid;\
s->bi_valid += len;\
}\
}
#define Buf_size
Definition: deflate.h:51
EGLOutputLayerEXT EGLint EGLAttrib value
GLenum GLuint GLenum GLsizei length
Definition: qopengl.h:270
GLuint GLfloat * val
Definition: qopenglext.h:1513
GLenum GLsizei len
Definition: qopenglext.h:3292
#define put_short(s, w)
Definition: trees.c:174

Definition at line 211 of file trees.c.

◆ send_code

#define send_code (   s,
  c,
  tree 
)    send_bits(s, tree[c].Code, tree[c].Len)

Definition at line 161 of file trees.c.

◆ smaller

#define smaller (   tree,
  n,
  m,
  depth 
)
Value:
(tree[n].Freq < tree[m].Freq || \
(tree[n].Freq == tree[m].Freq && depth[n] <= depth[m]))
GLint GLenum GLsizei GLsizei GLsizei depth
const GLfloat * m
GLfloat n

Definition at line 441 of file trees.c.

◆ SMALLEST

#define SMALLEST   1

Definition at line 422 of file trees.c.

Function Documentation

◆ _tr_align()

void ZLIB_INTERNAL _tr_align ( deflate_state s)

Definition at line 897 of file trees.c.

Here is the call graph for this function:

◆ _tr_flush_bits()

void ZLIB_INTERNAL _tr_flush_bits ( deflate_state s)

Definition at line 887 of file trees.c.

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

◆ _tr_flush_block()

void ZLIB_INTERNAL _tr_flush_block ( deflate_state s,
charf buf,
ulg  stored_len,
int  last 
)

Definition at line 912 of file trees.c.

Here is the call graph for this function:

◆ _tr_init()

void ZLIB_INTERNAL _tr_init ( deflate_state s)

Definition at line 379 of file trees.c.

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

◆ _tr_stored_block()

void ZLIB_INTERNAL _tr_stored_block ( deflate_state s,
charf buf,
ulg  stored_len,
int  last 
)

Definition at line 863 of file trees.c.

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

◆ _tr_tally()

int ZLIB_INTERNAL _tr_tally ( deflate_state s,
unsigned  dist,
unsigned  lc 
)

Definition at line 1015 of file trees.c.

Here is the call graph for this function:

◆ bi_flush()

void bi_flush ( deflate_state s)

Definition at line 1152 of file trees.c.

Here is the caller graph for this function:

◆ bi_reverse()

unsigned bi_reverse ( unsigned  code,
int  len 
)

Definition at line 1137 of file trees.c.

Here is the caller graph for this function:

◆ bi_windup()

void bi_windup ( deflate_state s)

Definition at line 1169 of file trees.c.

Here is the caller graph for this function:

◆ build_bl_tree()

int build_bl_tree ( deflate_state s)

Definition at line 799 of file trees.c.

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

◆ build_tree()

void build_tree ( deflate_state s,
tree_desc desc 
)

Definition at line 615 of file trees.c.

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

◆ compress_block()

void compress_block ( deflate_state s,
const ct_data ltree,
const ct_data dtree 
)

Definition at line 1043 of file trees.c.

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

◆ detect_data_type()

int detect_data_type ( deflate_state s)

Definition at line 1103 of file trees.c.

Here is the caller graph for this function:

◆ gen_bitlen()

void gen_bitlen ( deflate_state s,
tree_desc desc 
)

Definition at line 486 of file trees.c.

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

◆ gen_codes()

void gen_codes ( ct_data tree,
int  max_code,
ushf bl_count 
)

Definition at line 572 of file trees.c.

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

◆ init_block()

void init_block ( deflate_state s)

Definition at line 407 of file trees.c.

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

◆ OF() [1/9]

void gen_codes OF ( (ct_data *tree, int max_code, ushf *bl_count)  )

◆ OF() [2/9]

◆ OF() [3/9]

◆ OF() [4/9]

void pqdownheap OF ( (deflate_state *s, ct_data *tree, int k)  )

◆ OF() [5/9]

void scan_tree OF ( (deflate_state *s, ct_data *tree, int max_code)  )

◆ OF() [6/9]

void send_all_trees OF ( (deflate_state *s, int lcodes, int dcodes, int blcodes)  )

◆ OF() [7/9]

void gen_bitlen OF ( (deflate_state *s, tree_desc *desc)  )

◆ OF() [8/9]

unsigned bi_reverse OF ( (unsigned code, int len )

◆ OF() [9/9]

void tr_static_init OF ( (void )

◆ pqdownheap()

void pqdownheap ( deflate_state s,
ct_data tree,
int  k 
)

Definition at line 451 of file trees.c.

Here is the caller graph for this function:

◆ scan_tree()

void scan_tree ( deflate_state s,
ct_data tree,
int  max_code 
)

Definition at line 703 of file trees.c.

Here is the caller graph for this function:

◆ send_all_trees()

void send_all_trees ( deflate_state s,
int  lcodes,
int  dcodes,
int  blcodes 
)

Definition at line 834 of file trees.c.

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

◆ send_tree()

void send_tree ( deflate_state s,
ct_data tree,
int  max_code 
)

Definition at line 748 of file trees.c.

Here is the caller graph for this function:

◆ tr_static_init()

void tr_static_init ( )

Definition at line 232 of file trees.c.

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

Variable Documentation

◆ _dist_code

uch _dist_code[DIST_CODE_LEN]

Definition at line 98 of file trees.c.

◆ _length_code

uch _length_code[MAX_MATCH-MIN_MATCH+1]

Definition at line 104 of file trees.c.

◆ base_dist

int base_dist[D_CODES]

Definition at line 110 of file trees.c.

◆ base_length

int base_length[LENGTH_CODES]

Definition at line 107 of file trees.c.

◆ bl_order

const uch bl_order[BL_CODES] = {16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15}

Definition at line 71 of file trees.c.

◆ extra_blbits

const int extra_blbits[BL_CODES] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7}

Definition at line 68 of file trees.c.

◆ extra_dbits

const int extra_dbits[D_CODES] = {0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}

Definition at line 65 of file trees.c.

◆ extra_lbits

const int extra_lbits[LENGTH_CODES] = {0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0}

Definition at line 62 of file trees.c.

◆ static_bl_desc

const static_tree_desc static_bl_desc
Initial value:
=
#define BL_CODES
Definition: deflate.h:42
const int extra_blbits[BL_CODES]
Definition: trees.c:69
#define MAX_BL_BITS
Definition: trees.c:47

Definition at line 131 of file trees.c.

◆ static_d_desc

const static_tree_desc static_d_desc
Initial value:
=
#define MAX_BITS
Definition: deflate.h:48
#define D_CODES
Definition: deflate.h:39
ct_data static_dtree[D_CODES]
Definition: trees.c:93
const int extra_dbits[D_CODES]
Definition: trees.c:66

Definition at line 128 of file trees.c.

◆ static_dtree

ct_data static_dtree[D_CODES]

Definition at line 93 of file trees.c.

◆ static_l_desc

const static_tree_desc static_l_desc
Initial value:
=
#define L_CODES
Definition: deflate.h:36
#define LITERALS
Definition: deflate.h:33
const int extra_lbits[LENGTH_CODES]
Definition: trees.c:63
ct_data static_ltree[L_CODES+2]
Definition: trees.c:86

Definition at line 125 of file trees.c.

◆ static_ltree

ct_data static_ltree[L_CODES+2]

Definition at line 86 of file trees.c.