📄 zutil.h
字号:
/****************************************************************************** Copyright (c) 2004, UTStarcom, Inc.** All Rights Reserved.**** Subsystem : all modules** File : zutil.h** Created By : Pengliang ** Created On : 2/2/ 2005**** Purpose:** ****************************************************************************//* zutil.h -- internal interface and configuration of the compression library * Copyright (C) 1995-1996 Jean-loup Gailly. * For conditions of distribution and use, see copyright notice in zlib.h *//* WARNING: this file should *not* be used by applications. It is part of the implementation of the compression library and is subject to change. Applications should only use zlib.h. */#ifndef _Z_UTIL_H#define _Z_UTIL_H#include "stdio.h"#include "string.h"#include "zlib.h"#ifndef local# define local static#endif/* compile with -Dlocal if your debugger can't find static symbols */typedef unsigned char uch;typedef uch FAR uchf;typedef unsigned short ush;typedef ush FAR ushf;typedef unsigned long ulg;extern unzip_const char *z_errmsg[10]; /* indexed by 2-zlib_error *//* (size given to avoid silly warnings with Visual C++) */#define ERR_MSG(err) z_errmsg[Z_NEED_DICT-(err)]#define ERR_RETURN(strm,err) \ return (strm->msg = (char*)ERR_MSG(err), (err))/* To be used only when the state is known to be valid */ /* common constants */#ifndef DEF_WBITS# define DEF_WBITS MAX_WBITS#endif/* default windowBits for decompression. MAX_WBITS is for compression only */#if MAX_MEM_LEVEL >= 8# define DEF_MEM_LEVEL 8#else# define DEF_MEM_LEVEL MAX_MEM_LEVEL#endif/* default memLevel */#define STORED_BLOCK 0#define STATIC_TREES 1#define DYN_TREES 2/* The three kinds of block type */#define MIN_MATCH 3#define MAX_MATCH 258/* The minimum and maximum match lengths */#define PRESET_DICT 0x20 /* preset dictionary flag in zlib header */ /* target dependencies */#if 0#ifdef MSDOS# define OS_CODE 0x00# ifdef __TURBOC__# include <alloc.h># else /* MSC or DJGPP */# include <malloc.h># endif#endif#endif#ifdef OS2# define OS_CODE 0x06#endif#ifdef WIN32 /* Window 95 & Windows NT */# define OS_CODE 0x0b#endif#if defined(VAXC) || defined(VMS)# define OS_CODE 0x02#endif#ifdef AMIGA# define OS_CODE 0x01#endif#if defined(ATARI) || defined(atarist)# define OS_CODE 0x05#endif#ifdef MACOS# define OS_CODE 0x07#endif#ifdef __50SERIES /* Prime/PRIMOS */# define OS_CODE 0x0F#endif#ifdef TOPS20# define OS_CODE 0x0a#endif /* Common defaults */#ifndef OS_CODE# define OS_CODE 0x03 /* assume Unix */#endif /* functions */#define HAVE_MEMCPY#ifdef HAVE_MEMCPY#define zmemcpy memcpy#define zmemcmp memcmp#define zmemzero(dest, len) memset(dest, 0, len)#else extern void zmemcpy OF((Bytef* dest, Bytef* source, uInt len)); extern int zmemcmp OF((Bytef* s1, Bytef* s2, uInt len)); extern void zmemzero OF((Bytef* dest, uInt len));#endif/* Diagnostic functions */#if 0#ifdef DEBUG# include <stdio.h># ifndef verbose# define verbose 0# endif extern void z_error OF((char *m));# define Assert(cond,msg) {if(!(cond)) z_error(msg);}# define Trace(x) fprintf x# define Tracev(x) {if (verbose) fprintf x ;}# define Tracevv(x) {if (verbose>1) fprintf x ;}# define Tracec(c,x) {if (verbose && (c)) fprintf x ;}# define Tracecv(c,x) {if (verbose>1 && (c)) fprintf x ;}#else# define Assert(cond,msg)# define Trace(x)# define Tracev(x)# define Tracevv(x)# define Tracec(c,x)# define Tracecv(c,x)#endif#else# define Assert(cond,msg)# define Trace(x)# define Tracev(x)# define Tracevv(x)# define Tracec(c,x)# define Tracecv(c,x)#endiftypedef uLong (*check_func) OF((uLong check, unzip_const Bytef *buf, uInt len));voidpf zcalloc OF((voidpf opaque, unsigned items, unsigned size));void zcfree OF((voidpf opaque, voidpf ptr));#define ZALLOC(strm, items, size) \ (*((strm)->zalloc))((strm)->opaque, (items), (size))#define ZFREE(strm, addr) (*((strm)->zfree))((strm)->opaque, (voidpf)(addr))#define TRY_FREE(s, p) {if (p) ZFREE(s, p);}#endif /* _Z_UTIL_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -