|
fltk 1.3.0rc3
About: FLTK (Fast Light Tool Kit) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. Release candidate.
SfR Fresh Dox: fltk-1.3.0rc3-source.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation) ![]() |
#include "deflate.h"
Go to the source code of this file.
Classes | |
| struct | static_tree_desc_s |
Defines | |
| #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 | Buf_size (8 * 2*sizeof(char)) |
| #define | DIST_CODE_LEN 512 |
| #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 | |
| local void tr_static_init | OF ((void)) |
| local void init_block | OF ((deflate_state *s)) |
| local void pqdownheap | OF ((deflate_state *s, ct_data *tree, int k)) |
| local void gen_bitlen | OF ((deflate_state *s, tree_desc *desc)) |
| local void gen_codes | OF ((ct_data *tree, int max_code, ushf *bl_count)) |
| local void scan_tree | OF ((deflate_state *s, ct_data *tree, int max_code)) |
| local void send_all_trees | OF ((deflate_state *s, int lcodes, int dcodes, int blcodes)) |
| local void compress_block | OF ((deflate_state *s, ct_data *ltree, ct_data *dtree)) |
| local unsigned bi_reverse | OF ((unsigned value, int length)) |
| local void copy_block | OF ((deflate_state *s, charf *buf, unsigned len, int header)) |
| local void | tr_static_init () |
| void | _tr_init (deflate_state *s) |
| local void | init_block (deflate_state *s) |
| local void | pqdownheap (deflate_state *s, ct_data *tree, int k) |
| local void | gen_bitlen (deflate_state *s, tree_desc *desc) |
| local void | gen_codes (ct_data *tree, int max_code, ushf *bl_count) |
| local void | build_tree (deflate_state *s, tree_desc *desc) |
| local void | scan_tree (deflate_state *s, ct_data *tree, int max_code) |
| local void | send_tree (deflate_state *s, ct_data *tree, int max_code) |
| local int | build_bl_tree (deflate_state *s) |
| local void | send_all_trees (deflate_state *s, int lcodes, int dcodes, int blcodes) |
| void | _tr_stored_block (deflate_state *s, charf *buf, ulg stored_len, int eof) |
| void | _tr_align (deflate_state *s) |
| void | _tr_flush_block (deflate_state *s, charf *buf, ulg stored_len, int eof) |
| int | _tr_tally (deflate_state *s, unsigned dist, unsigned lc) |
| local void | compress_block (deflate_state *s, ct_data *ltree, ct_data *dtree) |
| local void | set_data_type (deflate_state *s) |
| local unsigned | bi_reverse (unsigned code, int len) |
| local void | bi_flush (deflate_state *s) |
| local void | bi_windup (deflate_state *s) |
| local void | copy_block (deflate_state *s, charf *buf, unsigned len, int header) |
Variables | |
| local 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} |
| local 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} |
| local 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} |
| local 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} |
| local ct_data | static_ltree [L_CODES+2] |
| local ct_data | static_dtree [D_CODES] |
| uch | _dist_code [DIST_CODE_LEN] |
| uch | _length_code [MAX_MATCH-MIN_MATCH+1] |
| local int | base_length [LENGTH_CODES] |
| local int | base_dist [D_CODES] |
| local static_tree_desc | static_l_desc |
| local static_tree_desc | static_d_desc |
| local static_tree_desc | static_bl_desc |
| #define END_BLOCK 256 |
Definition at line 49 of file trees.c.
Referenced by _tr_align(), compress_block(), and init_block().
| #define pqremove | ( | s, | |
| tree, | |||
| top | |||
| ) |
{\
top = s->heap[SMALLEST]; \
s->heap[SMALLEST] = s->heap[s->heap_len--]; \
pqdownheap(s, tree, SMALLEST); \
}
Definition at line 434 of file trees.c.
Referenced by build_tree().
| #define put_short | ( | s, | |
| w | |||
| ) |
Definition at line 180 of file trees.c.
Referenced by bi_flush(), bi_windup(), and copy_block().
| #define REP_3_6 16 |
Definition at line 52 of file trees.c.
Referenced by scan_tree(), and send_tree().
| #define REPZ_11_138 18 |
Definition at line 58 of file trees.c.
Referenced by scan_tree(), and send_tree().
| #define REPZ_3_10 17 |
Definition at line 55 of file trees.c.
Referenced by scan_tree(), and send_tree().
{ int len = length;\
if (s->bi_valid > (int)Buf_size - len) {\
int val = value;\
s->bi_buf |= (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 |= (value) << s->bi_valid;\
s->bi_valid += len;\
}\
}
Definition at line 217 of file trees.c.
Referenced by _tr_align(), _tr_flush_block(), _tr_stored_block(), compress_block(), send_all_trees(), and send_tree().
| #define send_code | ( | s, | |
| c, | |||
| tree | |||
| ) | send_bits(s, tree[c].Code, tree[c].Len) |
Definition at line 167 of file trees.c.
Referenced by _tr_align(), compress_block(), and send_tree().
| #define smaller | ( | tree, | |
| n, | |||
| m, | |||
| depth | |||
| ) |
| #define SMALLEST 1 |
Definition at line 426 of file trees.c.
Referenced by build_tree().
| void _tr_align | ( | deflate_state * | s | ) |
Definition at line 892 of file trees.c.
References bi_flush(), END_BLOCK, send_bits, send_code, static_ltree, and STATIC_TREES.
Referenced by deflate().
| void _tr_flush_block | ( | deflate_state * | s, |
| charf * | buf, | ||
| ulg | stored_len, | ||
| int | eof | ||
| ) |
Definition at line 921 of file trees.c.
References _tr_stored_block(), Assert, bi_windup(), build_bl_tree(), build_tree(), compress_block(), DYN_TREES, init_block(), send_all_trees(), send_bits, set_data_type(), static_dtree, static_ltree, STATIC_TREES, Tracev, Z_FIXED, and Z_UNKNOWN.
| void _tr_init | ( | deflate_state * | s | ) |
Definition at line 382 of file trees.c.
References init_block(), static_bl_desc, static_d_desc, static_l_desc, and tr_static_init().
Referenced by deflateReset().
| void _tr_stored_block | ( | deflate_state * | s, |
| charf * | buf, | ||
| ulg | stored_len, | ||
| int | eof | ||
| ) |
Definition at line 867 of file trees.c.
References copy_block(), send_bits, and STORED_BLOCK.
Referenced by _tr_flush_block(), and deflate().
| int _tr_tally | ( | deflate_state * | s, |
| unsigned | dist, | ||
| unsigned | lc | ||
| ) |
Definition at line 1022 of file trees.c.
References _length_code, Assert, internal_state::d_buf, d_code, D_CODES, extra_dbits, LITERALS, MAX_DIST, MAX_MATCH, and Tracev.
| local void bi_flush | ( | deflate_state * | s | ) |
Definition at line 1161 of file trees.c.
References put_byte, and put_short.
Referenced by _tr_align().
| local unsigned bi_reverse | ( | unsigned | code, |
| int | len | ||
| ) |
Definition at line 1146 of file trees.c.
Referenced by gen_codes(), and tr_static_init().
| local void bi_windup | ( | deflate_state * | s | ) |
Definition at line 1178 of file trees.c.
References put_byte, and put_short.
Referenced by _tr_flush_block(), and copy_block().
| local int build_bl_tree | ( | deflate_state * | s | ) |
Definition at line 803 of file trees.c.
References BL_CODES, bl_order, build_tree(), scan_tree(), and Tracev.
Referenced by _tr_flush_block().
| local void build_tree | ( | deflate_state * | s, |
| tree_desc * | desc | ||
| ) |
Definition at line 619 of file trees.c.
References tree_desc_s::dyn_tree, static_tree_desc_s::elems, Freq, gen_bitlen(), gen_codes(), HEAP_SIZE, m, tree_desc_s::max_code, pqdownheap(), pqremove, SMALLEST, tree_desc_s::stat_desc, and static_tree_desc_s::static_tree.
Referenced by _tr_flush_block(), and build_bl_tree().
| local void compress_block | ( | deflate_state * | s, |
| ct_data * | ltree, | ||
| ct_data * | dtree | ||
| ) |
Definition at line 1072 of file trees.c.
References _length_code, Assert, base_dist, base_length, d_code, END_BLOCK, extra_dbits, extra_lbits, LITERALS, send_bits, send_code, and Tracecv.
Referenced by _tr_flush_block().
| local void copy_block | ( | deflate_state * | s, |
| charf * | buf, | ||
| unsigned | len, | ||
| int | header | ||
| ) |
Definition at line 1197 of file trees.c.
References bi_windup(), put_byte, and put_short.
Referenced by _tr_stored_block().
| local void gen_bitlen | ( | deflate_state * | s, |
| tree_desc * | desc | ||
| ) |
Definition at line 490 of file trees.c.
References tree_desc_s::dyn_tree, static_tree_desc_s::extra_base, static_tree_desc_s::extra_bits, f, h, HEAP_SIZE, Len, m, MAX_BITS, tree_desc_s::max_code, static_tree_desc_s::max_length, tree_desc_s::stat_desc, static_tree_desc_s::static_tree, and Trace.
Referenced by build_tree().
Definition at line 577 of file trees.c.
References Assert, bi_reverse(), Code, MAX_BITS, static_ltree, Tracecv, and Tracev.
Referenced by build_tree(), and tr_static_init().
| local void init_block | ( | deflate_state * | s | ) |
Definition at line 411 of file trees.c.
References BL_CODES, D_CODES, internal_state::dyn_ltree, END_BLOCK, and L_CODES.
Referenced by _tr_flush_block(), and _tr_init().
| local void gen_bitlen OF | ( | (deflate_state *s, tree_desc *desc) | ) |
| local void send_all_trees OF | ( | (deflate_state *s, int lcodes, int dcodes, int blcodes) | ) |
| local void init_block OF | ( | (deflate_state *s) | ) |
| local void compress_block OF | ( | (deflate_state *s, ct_data *ltree, ct_data *dtree) | ) |
| local void scan_tree OF | ( | (deflate_state *s, ct_data *tree, int max_code) | ) |
| local void copy_block OF | ( | (deflate_state *s, charf *buf, unsigned len, int header) | ) |
| local void tr_static_init OF | ( | (void) | ) |
| local void pqdownheap OF | ( | (deflate_state *s, ct_data *tree, int k) | ) |
| local void pqdownheap | ( | deflate_state * | s, |
| ct_data * | tree, | ||
| int | k | ||
| ) |
| local void scan_tree | ( | deflate_state * | s, |
| ct_data * | tree, | ||
| int | max_code | ||
| ) |
Definition at line 707 of file trees.c.
References REP_3_6, REPZ_11_138, and REPZ_3_10.
Referenced by build_bl_tree().
| local void send_all_trees | ( | deflate_state * | s, |
| int | lcodes, | ||
| int | dcodes, | ||
| int | blcodes | ||
| ) |
Definition at line 838 of file trees.c.
References Assert, BL_CODES, bl_order, send_bits, send_tree(), and Tracev.
Referenced by _tr_flush_block().
| local void send_tree | ( | deflate_state * | s, |
| ct_data * | tree, | ||
| int | max_code | ||
| ) |
Definition at line 752 of file trees.c.
References Assert, REP_3_6, REPZ_11_138, REPZ_3_10, send_bits, and send_code.
Referenced by send_all_trees().
| local void set_data_type | ( | deflate_state * | s | ) |
Definition at line 1126 of file trees.c.
References internal_state::strm, Z_BINARY, and Z_TEXT.
Referenced by _tr_flush_block().
| local void tr_static_init | ( | ) |
Definition at line 238 of file trees.c.
References _dist_code, _length_code, Assert, base_dist, base_length, bi_reverse(), D_CODES, static_tree_desc_s::extra_bits, extra_blbits, extra_dbits, extra_lbits, gen_codes(), L_CODES, length, LENGTH_CODES, MAX_BITS, static_bl_desc, static_d_desc, static_dtree, static_l_desc, static_ltree, and static_tree_desc_s::static_tree.
Referenced by _tr_init().
| uch _dist_code[DIST_CODE_LEN] |
| uch _length_code[MAX_MATCH-MIN_MATCH+1] |
| local int base_dist[D_CODES] |
Definition at line 114 of file trees.c.
Referenced by compress_block(), and tr_static_init().
| local int base_length[LENGTH_CODES] |
Definition at line 111 of file trees.c.
Referenced by compress_block(), and tr_static_init().
Definition at line 71 of file trees.c.
Referenced by build_bl_tree(), and send_all_trees().
| local 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.
Referenced by tr_static_init().
| local 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.
Referenced by _tr_tally(), compress_block(), and tr_static_init().
| local 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.
Referenced by compress_block(), and tr_static_init().
{(const ct_data *)0, extra_blbits, 0, BL_CODES, MAX_BL_BITS}
Definition at line 135 of file trees.c.
Referenced by _tr_init(), and tr_static_init().
{static_dtree, extra_dbits, 0, D_CODES, MAX_BITS}
Definition at line 132 of file trees.c.
Referenced by _tr_init(), and tr_static_init().
| local ct_data static_dtree[D_CODES] |
Definition at line 97 of file trees.c.
Referenced by _tr_flush_block(), and tr_static_init().
{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS}
Definition at line 129 of file trees.c.
Referenced by _tr_init(), and tr_static_init().
| local ct_data static_ltree[L_CODES+2] |
Definition at line 90 of file trees.c.
Referenced by _tr_align(), _tr_flush_block(), gen_codes(), and tr_static_init().