alpar@9: /* zutil.h (internal interface of the zlib compression library) */ alpar@9: alpar@9: /* Modified by Andrew Makhorin , April 2011 */ alpar@9: alpar@9: /* Copyright (C) 1995-2010 Jean-loup Gailly alpar@9: * For conditions of distribution and use, see copyright notice in alpar@9: * zlib.h */ alpar@9: alpar@9: /* WARNING: this file should *not* be used by applications. It is alpar@9: part of the implementation of the compression library and is alpar@9: subject to change. Applications should only use zlib.h. */ alpar@9: alpar@9: #ifndef ZUTIL_H alpar@9: #define ZUTIL_H alpar@9: alpar@9: #define ZLIB_INTERNAL alpar@9: alpar@9: #include "zlib.h" alpar@9: alpar@9: #include alpar@9: #include alpar@9: #include alpar@9: alpar@9: #define local static alpar@9: alpar@9: typedef unsigned char uch; alpar@9: typedef uch uchf; alpar@9: typedef unsigned short ush; alpar@9: typedef ush ushf; alpar@9: typedef unsigned long ulg; alpar@9: alpar@9: extern const char * const z_errmsg[10]; alpar@9: alpar@9: #define ERR_MSG(err) z_errmsg[Z_NEED_DICT-(err)] alpar@9: alpar@9: #define ERR_RETURN(strm, err) \ alpar@9: return (strm->msg = (char *)ERR_MSG(err), (err)) alpar@9: alpar@9: #define DEF_WBITS MAX_WBITS alpar@9: alpar@9: #if MAX_MEM_LEVEL >= 8 alpar@9: #define DEF_MEM_LEVEL 8 alpar@9: #else alpar@9: #define DEF_MEM_LEVEL MAX_MEM_LEVEL alpar@9: #endif alpar@9: alpar@9: #define STORED_BLOCK 0 alpar@9: #define STATIC_TREES 1 alpar@9: #define DYN_TREES 2 alpar@9: alpar@9: #define MIN_MATCH 3 alpar@9: #define MAX_MATCH 258 alpar@9: alpar@9: #define PRESET_DICT 0x20 alpar@9: alpar@9: #define OS_CODE 0x03 /* assume Unix */ alpar@9: alpar@9: #define HAVE_MEMCPY 1 alpar@9: #define zmemcpy memcpy alpar@9: #define zmemzero(dest, len) memset(dest, 0, len) alpar@9: alpar@9: #ifdef DEBUG alpar@9: #include alpar@9: extern int ZLIB_INTERNAL z_verbose; alpar@9: extern void ZLIB_INTERNAL z_error OF((char *m)); alpar@9: #define Assert(cond, msg) { if(!(cond)) z_error(msg); } alpar@9: #define Trace(x) { if (z_verbose >= 0) fprintf x; } alpar@9: #define Tracev(x) { if (z_verbose > 0) fprintf x; } alpar@9: #define Tracevv(x) {if (z_verbose > 1) fprintf x; } alpar@9: #define Tracec(c, x) {if (z_verbose > 0 && (c)) fprintf x; } alpar@9: #define Tracecv(c, x) {if (z_verbose > 1 && (c)) fprintf x; } alpar@9: #else alpar@9: #define Assert(cond, msg) alpar@9: #define Trace(x) alpar@9: #define Tracev(x) alpar@9: #define Tracevv(x) alpar@9: #define Tracec(c, x) alpar@9: #define Tracecv(c, x) alpar@9: #endif alpar@9: alpar@9: voidpf ZLIB_INTERNAL zcalloc OF((voidpf opaque, unsigned items, alpar@9: unsigned size)); alpar@9: void ZLIB_INTERNAL zcfree OF((voidpf opaque, voidpf ptr)); alpar@9: alpar@9: #define ZALLOC(strm, items, size) \ alpar@9: (*((strm)->zalloc))((strm)->opaque, (items), (size)) alpar@9: #define ZFREE(strm, addr) \ alpar@9: (*((strm)->zfree))((strm)->opaque, (voidpf)(addr)) alpar@9: #define TRY_FREE(s, p) { if (p) ZFREE(s, p); } alpar@9: alpar@9: #endif alpar@9: alpar@9: /* eof */