zlib.h
上传用户:tuheem
上传日期:2007-05-01
资源大小:21889k
文件大小:6k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. #ifndef _ZLIB_H
  2. #define _ZLIB_H
  3. #include "zconf.h"
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. #define ZLIB_VERSION "1.1.4"
  8. typedef voidpf (*alloc_func) OF((voidpf opaque, uInt items, uInt size));
  9. typedef void   (*free_func)  OF((voidpf opaque, voidpf address));
  10. struct internal_state;
  11. typedef struct z_stream_s {
  12.     Bytef    *next_in;  
  13.     uInt     avail_in;  
  14.     uLong    total_in;  
  15.     Bytef    *next_out; 
  16.     uInt     avail_out; 
  17.     uLong    total_out;
  18.     char     *msg;      
  19.     struct internal_state FAR *state; 
  20.     alloc_func zalloc;  
  21.     free_func  zfree;   
  22.     voidpf     opaque;  
  23.     int     data_type;  
  24.     uLong   adler;      
  25.     uLong   reserved;   
  26. } z_stream;
  27. typedef z_stream FAR *z_streamp;
  28.                         
  29. #define Z_NO_FLUSH      0
  30. #define Z_PARTIAL_FLUSH 1 
  31. #define Z_SYNC_FLUSH    2
  32. #define Z_FULL_FLUSH    3
  33. #define Z_FINISH        4
  34. #define Z_OK            0
  35. #define Z_STREAM_END    1
  36. #define Z_NEED_DICT     2
  37. #define Z_ERRNO        (-1)
  38. #define Z_STREAM_ERROR (-2)
  39. #define Z_DATA_ERROR   (-3)
  40. #define Z_MEM_ERROR    (-4)
  41. #define Z_BUF_ERROR    (-5)
  42. #define Z_VERSION_ERROR (-6)
  43. #define Z_NO_COMPRESSION         0
  44. #define Z_BEST_SPEED             1
  45. #define Z_BEST_COMPRESSION       9
  46. #define Z_DEFAULT_COMPRESSION  (-1)
  47. #define Z_FILTERED            1
  48. #define Z_HUFFMAN_ONLY        2
  49. #define Z_DEFAULT_STRATEGY    0
  50. #define Z_BINARY   0
  51. #define Z_ASCII    1
  52. #define Z_UNKNOWN  2
  53. #define Z_DEFLATED   8
  54. #define Z_NULL  0  
  55. #define zlib_version zlibVersion()
  56.                      
  57. ZEXTERN const char * ZEXPORT zlibVersion OF((void));
  58. ZEXTERN int ZEXPORT deflate OF((z_streamp strm, int flush));
  59. ZEXTERN int ZEXPORT deflateEnd OF((z_streamp strm));
  60. ZEXTERN int ZEXPORT inflate OF((z_streamp strm, int flush));
  61. ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm));
  62.                          
  63. ZEXTERN int ZEXPORT deflateSetDictionary OF((z_streamp strm,
  64.                                              const Bytef *dictionary,
  65.                                              uInt  dictLength));
  66. ZEXTERN int ZEXPORT deflateCopy OF((z_streamp dest,
  67.                                     z_streamp source));
  68. ZEXTERN int ZEXPORT deflateReset OF((z_streamp strm));
  69. ZEXTERN int ZEXPORT deflateParams OF((z_streamp strm,
  70.       int level,
  71.       int strategy));
  72. ZEXTERN int ZEXPORT inflateSetDictionary OF((z_streamp strm,
  73.                                              const Bytef *dictionary,
  74.                                              uInt  dictLength));
  75. ZEXTERN int ZEXPORT inflateSync OF((z_streamp strm));
  76. ZEXTERN int ZEXPORT inflateReset OF((z_streamp strm));
  77. ZEXTERN int ZEXPORT compress OF((Bytef *dest,   uLongf *destLen,
  78.                                  const Bytef *source, uLong sourceLen));
  79. ZEXTERN int ZEXPORT compress2 OF((Bytef *dest,   uLongf *destLen,
  80.                                   const Bytef *source, uLong sourceLen,
  81.                                   int level));
  82. ZEXTERN int ZEXPORT uncompress OF((Bytef *dest,   uLongf *destLen,
  83.                                    const Bytef *source, uLong sourceLen));
  84. typedef voidp gzFile;
  85. ZEXTERN gzFile ZEXPORT gzopen  OF((const char *path, const char *mode));
  86. ZEXTERN gzFile ZEXPORT gzdopen  OF((int fd, const char *mode));
  87. ZEXTERN int ZEXPORT gzsetparams OF((gzFile file, int level, int strategy));
  88. ZEXTERN int ZEXPORT    gzread  OF((gzFile file, voidp buf, unsigned len));
  89. ZEXTERN int ZEXPORT    gzwrite OF((gzFile file, 
  90.    const voidp buf, unsigned len));
  91. ZEXTERN int ZEXPORTVA   gzprintf OF((gzFile file, const char *format, ...));
  92. ZEXTERN int ZEXPORT gzputs OF((gzFile file, const char *s));
  93. ZEXTERN char * ZEXPORT gzgets OF((gzFile file, char *buf, int len));
  94. ZEXTERN int ZEXPORT    gzputc OF((gzFile file, int c));
  95. ZEXTERN int ZEXPORT    gzgetc OF((gzFile file));
  96. ZEXTERN int ZEXPORT    gzflush OF((gzFile file, int flush));
  97. ZEXTERN z_off_t ZEXPORT    gzseek OF((gzFile file,
  98.       z_off_t offset, int whence));
  99. ZEXTERN int ZEXPORT    gzrewind OF((gzFile file));
  100. ZEXTERN z_off_t ZEXPORT    gztell OF((gzFile file));
  101. ZEXTERN int ZEXPORT gzeof OF((gzFile file));
  102. ZEXTERN int ZEXPORT    gzclose OF((gzFile file));
  103. ZEXTERN const char * ZEXPORT gzerror OF((gzFile file, int *errnum));
  104. ZEXTERN uLong ZEXPORT adler32 OF((uLong adler, const Bytef *buf, uInt len));
  105. ZEXTERN uLong ZEXPORT crc32   OF((uLong crc, const Bytef *buf, uInt len));
  106.                      
  107. ZEXTERN int ZEXPORT deflateInit_ OF((z_streamp strm, int level,
  108.                                      const char *version, int stream_size));
  109. ZEXTERN int ZEXPORT inflateInit_ OF((z_streamp strm,
  110.                                      const char *version, int stream_size));
  111. ZEXTERN int ZEXPORT deflateInit2_ OF((z_streamp strm, int  level, int  method,
  112.                                       int windowBits, int memLevel,
  113.                                       int strategy, const char *version,
  114.                                       int stream_size));
  115. ZEXTERN int ZEXPORT inflateInit2_ OF((z_streamp strm, int  windowBits,
  116.                                       const char *version, int stream_size));
  117. #define deflateInit(strm, level) 
  118.         deflateInit_((strm), (level),       ZLIB_VERSION, sizeof(z_stream))
  119. #define inflateInit(strm) 
  120.         inflateInit_((strm),                ZLIB_VERSION, sizeof(z_stream))
  121. #define deflateInit2(strm, level, method, windowBits, memLevel, strategy) 
  122.         deflateInit2_((strm),(level),(method),(windowBits),(memLevel),
  123.                       (strategy),           ZLIB_VERSION, sizeof(z_stream))
  124. #define inflateInit2(strm, windowBits) 
  125.         inflateInit2_((strm), (windowBits), ZLIB_VERSION, sizeof(z_stream))
  126. #if !defined(_Z_UTIL_H) && !defined(NO_DUMMY_DECL)
  127.     struct internal_state {int dummy;}; /* hack for buggy compilers */
  128. #endif
  129. ZEXTERN const char   * ZEXPORT zError           OF((int err));
  130. ZEXTERN int            ZEXPORT inflateSyncPoint OF((z_streamp z));
  131. ZEXTERN const uLongf * ZEXPORT get_crc_table    OF((void));
  132. #ifdef __cplusplus
  133. }
  134. #endif
  135. #endif /* _ZLIB_H */