📄 zconf.h
字号:
/* zconf.h -- configuration of the zlib compression library * Copyright (C) 1995-2002 Jean-loup Gailly. * For conditions of distribution and use, see copyright notice in zlib.h *//* @(#) $Id: zconf.h,v 1.4 2004/07/10 07:48:40 mcr Exp $ */#ifndef _ZCONF_H#define _ZCONF_H/* * If you *really* need a unique prefix for all types and library functions, * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. */#ifdef IPCOMP_PREFIX# define deflateInit_ ipcomp_deflateInit_# define deflate ipcomp_deflate# define deflateEnd ipcomp_deflateEnd# define inflateInit_ ipcomp_inflateInit_# define inflate ipcomp_inflate# define inflateEnd ipcomp_inflateEnd# define deflateInit2_ ipcomp_deflateInit2_# define deflateSetDictionary ipcomp_deflateSetDictionary# define deflateCopy ipcomp_deflateCopy# define deflateReset ipcomp_deflateReset# define deflateParams ipcomp_deflateParams# define inflateInit2_ ipcomp_inflateInit2_# define inflateSetDictionary ipcomp_inflateSetDictionary# define inflateSync ipcomp_inflateSync# define inflateSyncPoint ipcomp_inflateSyncPoint# define inflateReset ipcomp_inflateReset# define compress ipcomp_compress# define compress2 ipcomp_compress2# define uncompress ipcomp_uncompress# define adler32 ipcomp_adler32# define crc32 ipcomp_crc32# define get_crc_table ipcomp_get_crc_table/* SSS: these also need to be prefixed to avoid clash with ppp_deflate and ext2compression */# define inflate_blocks ipcomp_deflate_blocks# define inflate_blocks_free ipcomp_deflate_blocks_free# define inflate_blocks_new ipcomp_inflate_blocks_new# define inflate_blocks_reset ipcomp_inflate_blocks_reset# define inflate_blocks_sync_point ipcomp_inflate_blocks_sync_point# define inflate_set_dictionary ipcomp_inflate_set_dictionary# define inflate_codes ipcomp_inflate_codes# define inflate_codes_free ipcomp_inflate_codes_free# define inflate_codes_new ipcomp_inflate_codes_new# define inflate_fast ipcomp_inflate_fast# define inflate_trees_bits ipcomp_inflate_trees_bits# define inflate_trees_dynamic ipcomp_inflate_trees_dynamic# define inflate_trees_fixed ipcomp_inflate_trees_fixed# define inflate_flush ipcomp_inflate_flush# define inflate_mask ipcomp_inflate_mask# define _dist_code _ipcomp_dist_code# define _length_code _ipcomp_length_code# define _tr_align _ipcomp_tr_align# define _tr_flush_block _ipcomp_tr_flush_block# define _tr_init _ipcomp_tr_init# define _tr_stored_block _ipcomp_tr_stored_block# define _tr_tally _ipcomp_tr_tally# define zError ipcomp_zError# define z_errmsg ipcomp_z_errmsg# define zlibVersion ipcomp_zlibVersion# define match_init ipcomp_match_init# define longest_match ipcomp_longest_match#endif#ifdef Z_PREFIX# define Byte z_Byte# define uInt z_uInt# define uLong z_uLong# define Bytef z_Bytef# define charf z_charf# define intf z_intf# define uIntf z_uIntf# define uLongf z_uLongf# define voidpf z_voidpf# define voidp z_voidp#endif#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)# define WIN32#endif#if defined(__GNUC__) || defined(WIN32) || defined(__386__) || defined(i386)# ifndef __32BIT__# define __32BIT__# endif#endif#if defined(__MSDOS__) && !defined(MSDOS)# define MSDOS#endif/* * Compile with -DMAXSEG_64K if the alloc function cannot allocate more * than 64k bytes at a time (needed on systems with 16-bit int). */#if defined(MSDOS) && !defined(__32BIT__)# define MAXSEG_64K#endif#ifdef MSDOS# define UNALIGNED_OK#endif#if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32)) && !defined(STDC)# define STDC#endif#if defined(__STDC__) || defined(__cplusplus) || defined(__OS2__)# ifndef STDC# define STDC# endif#endif#ifndef STDC# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */# define const# endif#endif/* Some Mac compilers merge all .h files incorrectly: */#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)# define NO_DUMMY_DECL#endif/* Old Borland C incorrectly complains about missing returns: */#if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)# define NEED_DUMMY_RETURN#endif/* Maximum value for memLevel in deflateInit2 */#ifndef MAX_MEM_LEVEL# ifdef MAXSEG_64K# define MAX_MEM_LEVEL 8# else# define MAX_MEM_LEVEL 9# endif#endif/* Maximum value for windowBits in deflateInit2 and inflateInit2. * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files * created by gzip. (Files created by minigzip can still be extracted by * gzip.) */#ifndef MAX_WBITS# define MAX_WBITS 15 /* 32K LZ77 window */#endif/* The memory requirements for deflate are (in bytes): (1 << (windowBits+2)) + (1 << (memLevel+9)) that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) plus a few kilobytes for small objects. For example, if you want to reduce the default memory requirements from 256K to 128K, compile with make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" Of course this will generally degrade compression (there's no free lunch). The memory requirements for inflate are (in bytes) 1 << windowBits that is, 32K for windowBits=15 (default value) plus a few kilobytes for small objects.*/ /* Type declarations */#ifndef OF /* function prototypes */# ifdef STDC# define OF(args) args# else# define OF(args) ()# endif#endif/* The following definitions for FAR are needed only for MSDOS mixed * model programming (small or medium model with some far allocations). * This was tested only with MSC; for other MSDOS compilers you may have * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, * just define FAR to be empty. */#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__) /* MSC small or medium model */# define SMALL_MEDIUM# ifdef _MSC_VER# define FAR _far# else# define FAR far# endif#endif#if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__))# ifndef __32BIT__# define SMALL_MEDIUM# define FAR _far# endif#endif/* Compile with -DZLIB_DLL for Windows DLL support */#if defined(ZLIB_DLL)# if defined(_WINDOWS) || defined(WINDOWS)# ifdef FAR# undef FAR# endif# include <windows.h># define ZEXPORT WINAPI# ifdef WIN32# define ZEXPORTVA WINAPIV# else# define ZEXPORTVA FAR _cdecl _export# endif# endif# if defined (__BORLANDC__)# if (__BORLANDC__ >= 0x0500) && defined (WIN32)# include <windows.h># define ZEXPORT __declspec(dllexport) WINAPI# define ZEXPORTRVA __declspec(dllexport) WINAPIV# else# if defined (_Windows) && defined (__DLL__)# define ZEXPORT _export# define ZEXPORTVA _export# endif# endif# endif#endif#if defined (__BEOS__)# if defined (ZLIB_DLL)# define ZEXTERN extern __declspec(dllexport)# else# define ZEXTERN extern __declspec(dllimport)# endif#endif#ifndef ZEXPORT# define ZEXPORT#endif#ifndef ZEXPORTVA# define ZEXPORTVA#endif#ifndef ZEXTERN# define ZEXTERN extern#endif#ifndef FAR# define FAR#endif#if !defined(MACOS) && !defined(TARGET_OS_MAC)typedef unsigned char Byte; /* 8 bits */#endiftypedef unsigned int uInt; /* 16 bits or more */typedef unsigned long uLong; /* 32 bits or more */#ifdef SMALL_MEDIUM /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */# define Bytef Byte FAR#else typedef Byte FAR Bytef;#endiftypedef char FAR charf;typedef int FAR intf;typedef uInt FAR uIntf;typedef uLong FAR uLongf;#ifdef STDC typedef void FAR *voidpf; typedef void *voidp;#else typedef Byte FAR *voidpf; typedef Byte *voidp;#endif#ifdef HAVE_UNISTD_H# include <sys/types.h> /* for off_t */# include <unistd.h> /* for SEEK_* and off_t */# define z_off_t off_t#endif#ifndef SEEK_SET# define SEEK_SET 0 /* Seek from beginning of file. */# define SEEK_CUR 1 /* Seek from current position. */# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */#endif#ifndef z_off_t# define z_off_t long#endif/* MVS linker does not support external names larger than 8 bytes */#if defined(__MVS__)# pragma map(deflateInit_,"DEIN")# pragma map(deflateInit2_,"DEIN2")# pragma map(deflateEnd,"DEEND")# pragma map(inflateInit_,"ININ")# pragma map(inflateInit2_,"ININ2")# pragma map(inflateEnd,"INEND")# pragma map(inflateSync,"INSY")# pragma map(inflateSetDictionary,"INSEDI")# pragma map(inflate_blocks,"INBL")# pragma map(inflate_blocks_new,"INBLNE")# pragma map(inflate_blocks_free,"INBLFR")# pragma map(inflate_blocks_reset,"INBLRE")# pragma map(inflate_codes_free,"INCOFR")# pragma map(inflate_codes,"INCO")# pragma map(inflate_fast,"INFA")# pragma map(inflate_flush,"INFLU")# pragma map(inflate_mask,"INMA")# pragma map(inflate_set_dictionary,"INSEDI2")# pragma map(ipcomp_inflate_copyright,"INCOPY")# pragma map(inflate_trees_bits,"INTRBI")# pragma map(inflate_trees_dynamic,"INTRDY")# pragma map(inflate_trees_fixed,"INTRFI")# pragma map(inflate_trees_free,"INTRFR")#endif#endif /* _ZCONF_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -