Lines Matching +full:half +full:- +full:length

1 /* deflate.h -- internal compression state
2 * Copyright (C) 1995-2010 Jean-loup Gailly
31 /* number of length codes, not counting the special END_BLOCK code */
37 /* number of Literal or Length codes, including the END_BLOCK code */
69 ush len; /* length of bit string */
111 uInt w_mask; /* w_size - 1 */
114 /* Sliding window. Input bytes are read into the second half of the window,
115 * and move to the first half later to keep a dictionary of at least wSize
117 * wSize-MAX_MATCH bytes, but this ensures that IO is always
118 * performed with a length multiple of the block size. Also, it limits
139 uInt hash_mask; /* hash_size-1 */
153 uInt match_length; /* length of best match */
161 /* Length of the best match at previous step. Matches not greater than this
167 * length. A higher limit improves compression ratio but degrades the
177 /* Insert new strings in the hash table only if the match length is not
178 * greater than this length. This saves time but degrades compression.
192 struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */
198 struct tree_desc_s bl_desc; /* desc. for bit length tree */
201 /* number of codes at each bit length for an optimal tree */
219 * - frequencies can be kept in 16 bit counters
220 * - if compression is not successful for the first block, all input
224 * - if compression is not successful for a file smaller than 64K, we can
227 * - creating new Huffman trees less frequently may not provide fast
233 * - I can't count above 4
244 ulg opt_len; /* bit length of current block with optimal trees */
245 ulg static_len; /* bit length of current block with static trees */
247 int last_eob_len; /* bit length of EOB code for last block */
250 ulg compressed_len; /* total bit length of compressed file mod 2^32 */
251 ulg bits_sent; /* bit length of compressed data sent mod 2^32 */
264 /* High water mark offset in window for initialized bytes -- bytes above
275 #define put_byte(s, c) {s->pending_buf[s->pending++] = (c);}
283 #define MAX_DIST(s) ((s)->w_size-MIN_LOOKAHEAD)
303 /* Mapping from a distance to a distance code. dist is the distance - 1 and
321 s->d_buf[s->last_lit] = 0; \
322 s->l_buf[s->last_lit++] = cc; \
323 s->dyn_ltree[cc].Freq++; \
324 flush = (s->last_lit == s->lit_bufsize-1); \
326 # define _tr_tally_dist(s, distance, length, flush) \ argument
327 { uch len = (length); \
329 s->d_buf[s->last_lit] = dist; \
330 s->l_buf[s->last_lit++] = len; \
331 dist--; \
332 s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \
333 s->dyn_dtree[d_code(dist)].Freq++; \
334 flush = (s->last_lit == s->lit_bufsize-1); \
338 # define _tr_tally_dist(s, distance, length, flush) \ argument
339 flush = _tr_tally(s, distance, length)