Blob


1 #ifndef _FLATE_H_
2 #define _FLATE_H_ 1
3 #if defined(__cplusplus)
4 extern "C" {
5 #endif
7 AUTOLIB(flate)
8 /*
9 #pragma lib "libflate.a"
10 #pragma src "/sys/src/libflate"
11 */
13 /*
14 * errors from deflate, deflateinit, deflateblock,
15 * inflate, inflateinit, inflateblock.
16 * convertable to a string by flateerr
17 */
18 enum
19 {
20 FlateOk = 0,
21 FlateNoMem = -1,
22 FlateInputFail = -2,
23 FlateOutputFail = -3,
24 FlateCorrupted = -4,
25 FlateInternal = -5
26 };
28 int deflateinit(void);
29 int deflate(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
31 int inflateinit(void);
32 int inflate(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
34 int inflateblock(uchar *dst, int dsize, uchar *src, int ssize);
35 int deflateblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
37 int deflatezlib(void *wr, int (*w)(void*, void*, int), void *rr, int (*r)(void*, void*, int), int level, int debug);
38 int inflatezlib(void *wr, int (*w)(void*, void*, int), void *getr, int (*get)(void*));
40 int inflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize);
41 int deflatezlibblock(uchar *dst, int dsize, uchar *src, int ssize, int level, int debug);
43 char *flateerr(int err);
45 uint32 *mkcrctab(uint32);
46 uint32 blockcrc(uint32 *tab, uint32 crc, void *buf, int n);
48 uint32 adler32(uint32 adler, void *buf, int n);
49 #if defined(__cplusplus)
50 }
51 #endif
52 #endif