Annotation of coherent/g/usr/bin/gzip/lzw.h, revision 1.1.1.1

1.1       root        1: /* lzw.h -- define the lzw functions.
                      2:  * Copyright (C) 1992-1993 Jean-loup Gailly.
                      3:  * This is free software; you can redistribute it and/or modify it under the
                      4:  * terms of the GNU General Public License, see the file COPYING.
                      5:  */
                      6: 
                      7: #if !defined(OF) && defined(lint)
                      8: #  include "gzip.h"
                      9: #endif
                     10: 
                     11: #ifndef BITS
                     12: #  define BITS 16
                     13: #endif
                     14: #define INIT_BITS 9              /* Initial number of bits per code */
                     15: 
                     16: #define        LZW_MAGIC  "\037\235"   /* Magic header for lzw files, 1F 9D */
                     17: 
                     18: #define BIT_MASK    0x1f /* Mask for 'number of compresssion bits' */
                     19: /* Mask 0x20 is reserved to mean a fourth header byte, and 0x40 is free.
                     20:  * It's a pity that old uncompress does not check bit 0x20. That makes
                     21:  * extension of the format actually undesirable because old compress
                     22:  * would just crash on the new format instead of giving a meaningful
                     23:  * error message. It does check the number of bits, but it's more
                     24:  * helpful to say "unsupported format, get a new version" than
                     25:  * "can only handle 16 bits".
                     26:  */
                     27: 
                     28: #define BLOCK_MODE  0x80
                     29: /* Block compresssion: if table is full and compression rate is dropping,
                     30:  * clear the dictionary.
                     31:  */
                     32: 
                     33: #define LZW_RESERVED 0x60 /* reserved bits */
                     34: 
                     35: #define        CLEAR  256       /* flush the dictionary */
                     36: #define FIRST  (CLEAR+1) /* first free entry */
                     37: 
                     38: extern int maxbits;      /* max bits per code for LZW */
                     39: extern int block_mode;   /* block compress mode -C compatible with 2.0 */
                     40: 
                     41: extern void lzw    OF((int in, int out));
                     42: extern void unlzw  OF((int in, int out));

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.