annotate win32-mingw/include/bzlib.h @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 5925d5c80ae7
children
rev   line source
Chris@15 1
Chris@15 2 /*-------------------------------------------------------------*/
Chris@15 3 /*--- Public header file for the library. ---*/
Chris@15 4 /*--- bzlib.h ---*/
Chris@15 5 /*-------------------------------------------------------------*/
Chris@15 6
Chris@15 7 /* ------------------------------------------------------------------
Chris@15 8 This file is part of bzip2/libbzip2, a program and library for
Chris@15 9 lossless, block-sorting data compression.
Chris@15 10
Chris@15 11 bzip2/libbzip2 version 1.0.6 of 6 September 2010
Chris@15 12 Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
Chris@15 13
Chris@15 14 Please read the WARNING, DISCLAIMER and PATENTS sections in the
Chris@15 15 README file.
Chris@15 16
Chris@15 17 This program is released under the terms of the license contained
Chris@15 18 in the file LICENSE.
Chris@15 19 ------------------------------------------------------------------ */
Chris@15 20
Chris@15 21
Chris@15 22 #ifndef _BZLIB_H
Chris@15 23 #define _BZLIB_H
Chris@15 24
Chris@15 25 #ifdef __cplusplus
Chris@15 26 extern "C" {
Chris@15 27 #endif
Chris@15 28
Chris@15 29 #define BZ_RUN 0
Chris@15 30 #define BZ_FLUSH 1
Chris@15 31 #define BZ_FINISH 2
Chris@15 32
Chris@15 33 #define BZ_OK 0
Chris@15 34 #define BZ_RUN_OK 1
Chris@15 35 #define BZ_FLUSH_OK 2
Chris@15 36 #define BZ_FINISH_OK 3
Chris@15 37 #define BZ_STREAM_END 4
Chris@15 38 #define BZ_SEQUENCE_ERROR (-1)
Chris@15 39 #define BZ_PARAM_ERROR (-2)
Chris@15 40 #define BZ_MEM_ERROR (-3)
Chris@15 41 #define BZ_DATA_ERROR (-4)
Chris@15 42 #define BZ_DATA_ERROR_MAGIC (-5)
Chris@15 43 #define BZ_IO_ERROR (-6)
Chris@15 44 #define BZ_UNEXPECTED_EOF (-7)
Chris@15 45 #define BZ_OUTBUFF_FULL (-8)
Chris@15 46 #define BZ_CONFIG_ERROR (-9)
Chris@15 47
Chris@15 48 typedef
Chris@15 49 struct {
Chris@15 50 char *next_in;
Chris@15 51 unsigned int avail_in;
Chris@15 52 unsigned int total_in_lo32;
Chris@15 53 unsigned int total_in_hi32;
Chris@15 54
Chris@15 55 char *next_out;
Chris@15 56 unsigned int avail_out;
Chris@15 57 unsigned int total_out_lo32;
Chris@15 58 unsigned int total_out_hi32;
Chris@15 59
Chris@15 60 void *state;
Chris@15 61
Chris@15 62 void *(*bzalloc)(void *,int,int);
Chris@15 63 void (*bzfree)(void *,void *);
Chris@15 64 void *opaque;
Chris@15 65 }
Chris@15 66 bz_stream;
Chris@15 67
Chris@15 68
Chris@15 69 #ifndef BZ_IMPORT
Chris@15 70 #define BZ_EXPORT
Chris@15 71 #endif
Chris@15 72
Chris@15 73 #ifndef BZ_NO_STDIO
Chris@15 74 /* Need a definitition for FILE */
Chris@15 75 #include <stdio.h>
Chris@15 76 #endif
Chris@15 77
Chris@15 78 #ifdef _WIN32
Chris@15 79 # include <windows.h>
Chris@15 80 # ifdef small
Chris@15 81 /* windows.h define small to char */
Chris@15 82 # undef small
Chris@15 83 # endif
Chris@15 84 # ifdef BZ_EXPORT
Chris@15 85 # define BZ_API(func) WINAPI func
Chris@15 86 # define BZ_EXTERN extern
Chris@15 87 # else
Chris@15 88 /* import windows dll dynamically */
Chris@15 89 # define BZ_API(func) (WINAPI * func)
Chris@15 90 # define BZ_EXTERN
Chris@15 91 # endif
Chris@15 92 #else
Chris@15 93 # define BZ_API(func) func
Chris@15 94 # define BZ_EXTERN extern
Chris@15 95 #endif
Chris@15 96
Chris@15 97
Chris@15 98 /*-- Core (low-level) library functions --*/
Chris@15 99
Chris@15 100 BZ_EXTERN int BZ_API(BZ2_bzCompressInit) (
Chris@15 101 bz_stream* strm,
Chris@15 102 int blockSize100k,
Chris@15 103 int verbosity,
Chris@15 104 int workFactor
Chris@15 105 );
Chris@15 106
Chris@15 107 BZ_EXTERN int BZ_API(BZ2_bzCompress) (
Chris@15 108 bz_stream* strm,
Chris@15 109 int action
Chris@15 110 );
Chris@15 111
Chris@15 112 BZ_EXTERN int BZ_API(BZ2_bzCompressEnd) (
Chris@15 113 bz_stream* strm
Chris@15 114 );
Chris@15 115
Chris@15 116 BZ_EXTERN int BZ_API(BZ2_bzDecompressInit) (
Chris@15 117 bz_stream *strm,
Chris@15 118 int verbosity,
Chris@15 119 int small
Chris@15 120 );
Chris@15 121
Chris@15 122 BZ_EXTERN int BZ_API(BZ2_bzDecompress) (
Chris@15 123 bz_stream* strm
Chris@15 124 );
Chris@15 125
Chris@15 126 BZ_EXTERN int BZ_API(BZ2_bzDecompressEnd) (
Chris@15 127 bz_stream *strm
Chris@15 128 );
Chris@15 129
Chris@15 130
Chris@15 131
Chris@15 132 /*-- High(er) level library functions --*/
Chris@15 133
Chris@15 134 #ifndef BZ_NO_STDIO
Chris@15 135 #define BZ_MAX_UNUSED 5000
Chris@15 136
Chris@15 137 typedef void BZFILE;
Chris@15 138
Chris@15 139 BZ_EXTERN BZFILE* BZ_API(BZ2_bzReadOpen) (
Chris@15 140 int* bzerror,
Chris@15 141 FILE* f,
Chris@15 142 int verbosity,
Chris@15 143 int small,
Chris@15 144 void* unused,
Chris@15 145 int nUnused
Chris@15 146 );
Chris@15 147
Chris@15 148 BZ_EXTERN void BZ_API(BZ2_bzReadClose) (
Chris@15 149 int* bzerror,
Chris@15 150 BZFILE* b
Chris@15 151 );
Chris@15 152
Chris@15 153 BZ_EXTERN void BZ_API(BZ2_bzReadGetUnused) (
Chris@15 154 int* bzerror,
Chris@15 155 BZFILE* b,
Chris@15 156 void** unused,
Chris@15 157 int* nUnused
Chris@15 158 );
Chris@15 159
Chris@15 160 BZ_EXTERN int BZ_API(BZ2_bzRead) (
Chris@15 161 int* bzerror,
Chris@15 162 BZFILE* b,
Chris@15 163 void* buf,
Chris@15 164 int len
Chris@15 165 );
Chris@15 166
Chris@15 167 BZ_EXTERN BZFILE* BZ_API(BZ2_bzWriteOpen) (
Chris@15 168 int* bzerror,
Chris@15 169 FILE* f,
Chris@15 170 int blockSize100k,
Chris@15 171 int verbosity,
Chris@15 172 int workFactor
Chris@15 173 );
Chris@15 174
Chris@15 175 BZ_EXTERN void BZ_API(BZ2_bzWrite) (
Chris@15 176 int* bzerror,
Chris@15 177 BZFILE* b,
Chris@15 178 void* buf,
Chris@15 179 int len
Chris@15 180 );
Chris@15 181
Chris@15 182 BZ_EXTERN void BZ_API(BZ2_bzWriteClose) (
Chris@15 183 int* bzerror,
Chris@15 184 BZFILE* b,
Chris@15 185 int abandon,
Chris@15 186 unsigned int* nbytes_in,
Chris@15 187 unsigned int* nbytes_out
Chris@15 188 );
Chris@15 189
Chris@15 190 BZ_EXTERN void BZ_API(BZ2_bzWriteClose64) (
Chris@15 191 int* bzerror,
Chris@15 192 BZFILE* b,
Chris@15 193 int abandon,
Chris@15 194 unsigned int* nbytes_in_lo32,
Chris@15 195 unsigned int* nbytes_in_hi32,
Chris@15 196 unsigned int* nbytes_out_lo32,
Chris@15 197 unsigned int* nbytes_out_hi32
Chris@15 198 );
Chris@15 199 #endif
Chris@15 200
Chris@15 201
Chris@15 202 /*-- Utility functions --*/
Chris@15 203
Chris@15 204 BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffCompress) (
Chris@15 205 char* dest,
Chris@15 206 unsigned int* destLen,
Chris@15 207 char* source,
Chris@15 208 unsigned int sourceLen,
Chris@15 209 int blockSize100k,
Chris@15 210 int verbosity,
Chris@15 211 int workFactor
Chris@15 212 );
Chris@15 213
Chris@15 214 BZ_EXTERN int BZ_API(BZ2_bzBuffToBuffDecompress) (
Chris@15 215 char* dest,
Chris@15 216 unsigned int* destLen,
Chris@15 217 char* source,
Chris@15 218 unsigned int sourceLen,
Chris@15 219 int small,
Chris@15 220 int verbosity
Chris@15 221 );
Chris@15 222
Chris@15 223
Chris@15 224 /*--
Chris@15 225 Code contributed by Yoshioka Tsuneo (tsuneo@rr.iij4u.or.jp)
Chris@15 226 to support better zlib compatibility.
Chris@15 227 This code is not _officially_ part of libbzip2 (yet);
Chris@15 228 I haven't tested it, documented it, or considered the
Chris@15 229 threading-safeness of it.
Chris@15 230 If this code breaks, please contact both Yoshioka and me.
Chris@15 231 --*/
Chris@15 232
Chris@15 233 BZ_EXTERN const char * BZ_API(BZ2_bzlibVersion) (
Chris@15 234 void
Chris@15 235 );
Chris@15 236
Chris@15 237 #ifndef BZ_NO_STDIO
Chris@15 238 BZ_EXTERN BZFILE * BZ_API(BZ2_bzopen) (
Chris@15 239 const char *path,
Chris@15 240 const char *mode
Chris@15 241 );
Chris@15 242
Chris@15 243 BZ_EXTERN BZFILE * BZ_API(BZ2_bzdopen) (
Chris@15 244 int fd,
Chris@15 245 const char *mode
Chris@15 246 );
Chris@15 247
Chris@15 248 BZ_EXTERN int BZ_API(BZ2_bzread) (
Chris@15 249 BZFILE* b,
Chris@15 250 void* buf,
Chris@15 251 int len
Chris@15 252 );
Chris@15 253
Chris@15 254 BZ_EXTERN int BZ_API(BZ2_bzwrite) (
Chris@15 255 BZFILE* b,
Chris@15 256 void* buf,
Chris@15 257 int len
Chris@15 258 );
Chris@15 259
Chris@15 260 BZ_EXTERN int BZ_API(BZ2_bzflush) (
Chris@15 261 BZFILE* b
Chris@15 262 );
Chris@15 263
Chris@15 264 BZ_EXTERN void BZ_API(BZ2_bzclose) (
Chris@15 265 BZFILE* b
Chris@15 266 );
Chris@15 267
Chris@15 268 BZ_EXTERN const char * BZ_API(BZ2_bzerror) (
Chris@15 269 BZFILE *b,
Chris@15 270 int *errnum
Chris@15 271 );
Chris@15 272 #endif
Chris@15 273
Chris@15 274 #ifdef __cplusplus
Chris@15 275 }
Chris@15 276 #endif
Chris@15 277
Chris@15 278 #endif
Chris@15 279
Chris@15 280 /*-------------------------------------------------------------*/
Chris@15 281 /*--- end bzlib.h ---*/
Chris@15 282 /*-------------------------------------------------------------*/