Data Structures |
| struct | LZXstate |
| struct | lzx_bits |
Defines |
| #define | LZX_MIN_MATCH (2) |
| #define | LZX_MAX_MATCH (257) |
| #define | LZX_NUM_CHARS (256) |
| #define | LZX_BLOCKTYPE_INVALID (0) /* also blocktypes 4-7 invalid */ |
| #define | LZX_BLOCKTYPE_VERBATIM (1) |
| #define | LZX_BLOCKTYPE_ALIGNED (2) |
| #define | LZX_BLOCKTYPE_UNCOMPRESSED (3) |
| #define | LZX_PRETREE_NUM_ELEMENTS (20) |
| #define | LZX_ALIGNED_NUM_ELEMENTS (8) /* aligned offset tree #elements */ |
| #define | LZX_NUM_PRIMARY_LENGTHS (7) /* this one missing from spec! */ |
| #define | LZX_NUM_SECONDARY_LENGTHS (249) /* length tree #elements */ |
| #define | LZX_PRETREE_MAXSYMBOLS (LZX_PRETREE_NUM_ELEMENTS) |
| #define | LZX_PRETREE_TABLEBITS (6) |
| #define | LZX_MAINTREE_MAXSYMBOLS (LZX_NUM_CHARS + 50*8) |
| #define | LZX_MAINTREE_TABLEBITS (12) |
| #define | LZX_LENGTH_MAXSYMBOLS (LZX_NUM_SECONDARY_LENGTHS+1) |
| #define | LZX_LENGTH_TABLEBITS (12) |
| #define | LZX_ALIGNED_MAXSYMBOLS (LZX_ALIGNED_NUM_ELEMENTS) |
| #define | LZX_ALIGNED_TABLEBITS (7) |
| #define | LZX_LENTABLE_SAFETY (64) /* we allow length table decoding overruns */ |
| #define | LZX_DECLARE_TABLE(tbl) |
| #define | ULONG_BITS (sizeof(ULONG)<<3) |
| #define | INIT_BITSTREAM do { bitsleft = 0; bitbuf = 0; } while (0) |
| #define | ENSURE_BITS(n) |
| #define | PEEK_BITS(n) (bitbuf >> (ULONG_BITS - (n))) |
| #define | REMOVE_BITS(n) ((bitbuf <<= (n)), (bitsleft -= (n))) |
| #define | READ_BITS(v, n) |
| #define | TABLEBITS(tbl) (LZX_##tbl##_TABLEBITS) |
| #define | MAXSYMBOLS(tbl) (LZX_##tbl##_MAXSYMBOLS) |
| #define | SYMTABLE(tbl) (pState->tbl##_table) |
| #define | LENTABLE(tbl) (pState->tbl##_len) |
| #define | BUILD_TABLE(tbl) |
| #define | READ_HUFFSYM(tbl, var) |
| #define | READ_LENGTHS(tbl, first, last) |
Typedefs |
| typedef unsigned char | UBYTE |
| typedef unsigned short | UWORD |
Functions |
| struct LZXstate * | LZXinit (int window) |
| void | LZXteardown (struct LZXstate *pState) |
| int | LZXreset (struct LZXstate *pState) |
| static int | make_decode_table (ULONG nsyms, ULONG nbits, UBYTE *length, UWORD *table) |
| static int | lzx_read_lens (struct LZXstate *pState, UBYTE *lens, ULONG first, ULONG last, struct lzx_bits *lb) |
| int | LZXdecompress (struct LZXstate *pState, unsigned char *inpos, unsigned char *outpos, int inlen, int outlen) |
Variables |
| struct LZXstate | helpstring |
| static const UBYTE | extra_bits [51] |
| static const ULONG | position_base [51] |