1 unit PasZLib;
2 
3 {$inline on}
4 
5 interface
6 
7 uses
8   zbase;
9 
10 const
11   ZLIB_VERSION = '1.2';
12 
13 type
14   { Compatibility types }
15   z_off_t = longint;
16 
17   TInternalState = record
18     end;
19   PInternalState = ^TInternalstate;
20 
21   TZStream = z_stream;
22   PZstream = ^TZStream;
23 
24   gzFile = pointer;
25 
26 
27 const
28   Z_NO_FLUSH = 0;
29 
30   Z_PARTIAL_FLUSH = 1;
31   Z_SYNC_FLUSH = 2;
32   Z_FULL_FLUSH = 3;
33   Z_FINISH = 4;
34 
35   Z_OK = 0;
36   Z_STREAM_END = 1;
37   Z_NEED_DICT = 2;
38   Z_ERRNO = -(1);
39   Z_STREAM_ERROR = -(2);
40   Z_DATA_ERROR = -(3);
41   Z_MEM_ERROR = -(4);
42   Z_BUF_ERROR = -(5);
43   Z_VERSION_ERROR = -(6);
44 
45   Z_NO_COMPRESSION = 0;
46   Z_BEST_SPEED = 1;
47   Z_BEST_COMPRESSION = 9;
48   Z_DEFAULT_COMPRESSION = -(1);
49 
50   Z_FILTERED = 1;
51   Z_HUFFMAN_ONLY = 2;
52   Z_DEFAULT_STRATEGY = 0;
53 
54   Z_BINARY = 0;
55   Z_ASCII = 1;
56   Z_UNKNOWN = 2;
57 
58   Z_DEFLATED = 8;
59 
60   Z_NULL = nil;
61 
zlibVersionnull62 function zlibVersion:string;inline;
deflatenull63 function deflate(var strm:TZstream; flush:longint):longint;inline;
deflateEndnull64 function deflateEnd(var strm:TZstream):longint;inline;
inflatenull65 function inflate(var strm:TZstream; flush:longint):longint;inline;
inflateEndnull66 function inflateEnd(var strm:TZstream):longint;inline;
deflateSetDictionarynull67 function deflateSetDictionary(var strm:TZstream;dictionary : Pchar; dictLength:cardinal):longint;inline;
deflateCopynull68 function deflateCopy(var dest,source:TZstream):longint;inline;
deflateResetnull69 function deflateReset(var strm:TZstream):longint;inline;
deflateParamsnull70 function deflateParams(var strm:TZstream; level:longint; strategy:longint):longint;inline;
inflateSetDictionarynull71 function inflateSetDictionary(var strm:TZStream;dictionary : Pchar; dictLength:cardinal):longint;inline;
inflateSyncnull72 function inflateSync(var strm:TZStream):longint;inline;
inflateResetnull73 function inflateReset(var strm:TZStream):longint;inline;
compressnull74 function compress(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal):longint;
compress2null75 function compress2(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal; level:longint):longint;
uncompressnull76 function uncompress(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal):longint;
gzopennull77 function gzopen(path:Pchar; mode:Pchar):gzFile;inline;
gzsetparamsnull78 function gzsetparams(Thefile:gzFile; level:longint; strategy:longint):longint;inline;
gzreadnull79 function gzread(thefile:gzFile; buf : pointer; len:cardinal):longint;inline;
gzwritenull80 function gzwrite(thefile:gzFile; buf: pointer; len:cardinal):longint;inline;
gzputsnull81 function gzputs(thefile:gzFile; s:Pchar):longint;inline;
gzgetsnull82 function gzgets(thefile:gzFile; buf:Pchar; len:longint):Pchar;inline;
gzputcnull83 function gzputc(thefile:gzFile; c:char):longint;inline;
gzgetcnull84 function gzgetc(thefile:gzFile):char;inline;
gzflushnull85 function gzflush(thefile:gzFile; flush:longint):longint;inline;
gzseeknull86 function gzseek(thefile:gzFile; offset:z_off_t; whence:longint):z_off_t;inline;
gzrewindnull87 function gzrewind(thefile:gzFile):longint;inline;
gztellnull88 function gztell(thefile:gzFile):z_off_t;inline;
gzeofnull89 function gzeof(thefile:gzFile):longbool;inline;
gzclosenull90 function gzclose(thefile:gzFile):longint;inline;
gzerrornull91 function gzerror(thefile:gzFile; var errnum:smallint):string;inline;
adler32null92 function adler32(theadler:cardinal;buf : Pchar; len:cardinal):cardinal;inline;
crc32null93 function crc32(thecrc:cardinal;buf : Pchar; len:cardinal):cardinal;inline;
deflateInit_null94 function deflateInit_(var strm:TZStream; level:longint; version:Pchar; stream_size:longint):longint;inline;
inflateInit_null95 function inflateInit_(var strm:TZStream; version:Pchar; stream_size:longint):longint;inline;
deflateInit2_null96 function deflateInit2_(var strm:TZStream; level:longint; method:longint; windowBits:longint; memLevel:longint;strategy:longint; version:Pchar; stream_size:longint):longint;inline;
inflateInit2_null97 function inflateInit2_(var strm:TZStream; windowBits:longint; version:Pchar; stream_size:longint):longint;inline;
deflateInitnull98 function deflateInit(var strm:TZStream;level : longint) : longint;inline;
inflateInitnull99 function inflateInit(var strm:TZStream) : longint;inline;
deflateInit2null100 function deflateInit2(var strm:TZStream;level,method,windowBits,memLevel,strategy : longint) : longint;inline;
inflateInit2null101 function inflateInit2(var strm:TZStream; windowBits : longint) : longint;inline;
zErrornull102 function zError(err:longint):string;inline;
inflateSyncPointnull103 function inflateSyncPoint(z:PZstream):longint;inline;
get_crc_tablenull104 function get_crc_table:pointer;inline;
105 
106 implementation
107 
108 uses
109   zdeflate,zinflate,zcompres,zuncompr,gzio,adler,crc;
110 
zlibVersionnull111 function zlibVersion:string;inline;
112 begin
113   zlibversion:=zbase.zlibversion;
114 end;
115 
deflatenull116 function deflate(var strm:TZstream; flush:longint):longint;inline;
117 begin
118   deflate:=zdeflate.deflate(strm,flush);
119 end;
120 
deflateEndnull121 function deflateEnd(var strm:TZstream):longint;inline;
122 begin
123   deflateEnd:=zdeflate.deflateEnd(strm);
124 end;
125 
inflatenull126 function inflate(var strm:TZstream; flush:longint):longint;inline;
127 begin
128   inflate:=zinflate.inflate(strm,flush);
129 end;
130 
inflateEndnull131 function inflateEnd(var strm:TZstream):longint;inline;
132 begin
133   inflateEnd:=zinflate.inflateEnd(strm);
134 end;
135 
deflateSetDictionarynull136 function deflateSetDictionary(var strm:TZstream;dictionary : Pchar; dictLength:cardinal):longint;inline;
137 begin
138   deflateSetDictionary:=zdeflate.deflateSetDictionary(strm,Pbyte(dictionary),dictlength);
139 end;
140 
deflateCopynull141 function deflateCopy(var dest,source:TZstream):longint;inline;
142 begin
143   deflateCopy:=zdeflate.deflateCopy(@dest,@source);
144 end;
145 
deflateResetnull146 function deflateReset(var strm:TZstream):longint;inline;
147 begin
148   deflateReset:=zdeflate.deflateReset(strm);
149 end;
150 
deflateParamsnull151 function deflateParams(var strm:TZstream; level:longint; strategy:longint):longint;inline;
152 begin
153   deflateParams:=zdeflate.deflateParams(strm,level,strategy);
154 end;
155 
inflateSetDictionarynull156 function inflateSetDictionary(var strm:TZStream;dictionary : Pchar; dictLength:cardinal):longint;inline;
157 begin
158   inflateSetDictionary:=zinflate.inflateSetDictionary(strm,Pbyte(dictionary),dictlength);
159 end;
160 
inflateSyncnull161 function inflateSync(var strm:TZStream):longint;inline;
162 begin
163   inflateSync:=zinflate.inflateSync(strm);
164 end;
165 
inflateResetnull166 function inflateReset(var strm:TZStream):longint;inline;
167 begin
168   inflateReset:=zinflate.inflateReset(strm);
169 end;
170 
compressnull171 function compress(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal):longint;
172 
173 type Pbytearray=^Tbytearray;
174      Tbytearray=array[0..0] of byte;
175 
176 begin
177   compress:=zcompres.compress(Pbyte(dest),destlen,Pbytearray(source)^,sourcelen);
178 end;
179 
compress2null180 function compress2(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal; level:longint):longint;
181 
182 type Pbytearray=^Tbytearray;
183      Tbytearray=array[0..0] of byte;
184 
185 begin
186   compress2:=zcompres.compress2(Pbyte(dest),destlen,Pbytearray(source)^,sourcelen,level);
187 end;
188 
uncompressnull189 function uncompress(dest:Pchar;var destLen:cardinal; source : Pchar; sourceLen:cardinal):longint;
190 
191 type Pbytearray=^Tbytearray;
192      Tbytearray=array[0..0] of byte;
193 
194 begin
195   uncompress:=zuncompr.uncompress(Pbyte(dest),destlen,Pbytearray(source)^,sourcelen);
196 end;
197 
gzopennull198 function gzopen(path:Pchar; mode:Pchar):gzFile;inline;
199 begin
200   gzopen:=gzio.gzopen(path,mode);
201 end;
202 
gzsetparamsnull203 function gzsetparams(Thefile:gzFile; level:longint; strategy:longint):longint;inline;
204 begin
205   gzsetparams:=gzio.gzsetparams(thefile,level,strategy);
206 end;
207 
gzreadnull208 function gzread(thefile:gzFile; buf : pointer; len:cardinal):longint;inline;
209 begin
210   gzread:=gzio.gzread(thefile,buf,len);
211 end;
212 
gzwritenull213 function gzwrite(thefile:gzFile; buf: pointer; len:cardinal):longint;inline;
214 begin
215   gzwrite:=gzio.gzwrite(thefile,buf,len);
216 end;
217 
gzputsnull218 function gzputs(thefile:gzFile; s:Pchar):longint;inline;
219 begin
220   gzputs:=gzio.gzputs(thefile,s);
221 end;
222 
gzgetsnull223 function gzgets(thefile:gzFile; buf:Pchar; len:longint):Pchar;inline;
224 begin
225   gzgets:=gzio.gzgets(thefile,buf,len);
226 end;
227 
gzputcnull228 function gzputc(thefile:gzFile; c:char):longint;inline;
229 begin
230   gzputc:=gzio.gzputc(thefile,c);
231 end;
232 
gzgetcnull233 function gzgetc(thefile:gzFile):char;inline;
234 begin
235   gzgetc:=chr(gzio.gzgetc(thefile));
236 end;
237 
gzflushnull238 function gzflush(thefile:gzFile; flush:longint):longint;inline;
239 begin
240   gzflush:=gzio.gzflush(thefile,flush);
241 end;
242 
gzseeknull243 function gzseek(thefile:gzFile; offset:z_off_t; whence:longint):z_off_t;inline;
244 begin
245   gzseek:=gzio.gzseek(thefile,offset,whence);
246 end;
247 
gzrewindnull248 function gzrewind(thefile:gzFile):longint;inline;
249 begin
250   gzrewind:=gzio.gzrewind(thefile);
251 end;
252 
gztellnull253 function gztell(thefile:gzFile):z_off_t;inline;
254 begin
255   gztell:=gzio.gztell(thefile);
256 end;
257 
gzeofnull258 function gzeof(thefile:gzFile):longbool;inline;
259 begin
260   gzeof:=gzio.gzeof(thefile);
261 end;
262 
gzclosenull263 function gzclose(thefile:gzFile):longint;inline;
264 begin
265   gzclose:=gzio.gzclose(thefile);
266 end;
267 
gzerrornull268 function gzerror(thefile:gzFile; var errnum:smallint):string;inline;
269 begin
270   gzerror:=gzio.gzerror(thefile,errnum);
271 end;
272 
adler32null273 function adler32(theadler:cardinal;buf : Pchar; len:cardinal):cardinal;inline;
274 begin
275   adler32:=adler.adler32(theadler,Pbyte(buf),len);
276 end;
277 
crc32null278 function crc32(thecrc:cardinal;buf : Pchar; len:cardinal):cardinal;inline;
279 begin
280   crc32:=crc.crc32(thecrc,Pbyte(buf),len);
281 end;
282 
deflateInit_null283 function deflateInit_(var strm:TZStream; level:longint; version:Pchar; stream_size:longint):longint;inline;
284 begin
285   deflateInit_:=zdeflate.deflateInit_(@strm,level,version,stream_size);
286 end;
287 
inflateInit_null288 function inflateInit_(var strm:TZStream; version:Pchar; stream_size:longint):longint;inline;
289 begin
290   inflateInit_:=zinflate.inflateInit_(@strm,version,stream_size);
291 end;
292 
deflateInit2_null293 function deflateInit2_(var strm:TZStream; level:longint; method:longint; windowBits:longint; memLevel:longint;strategy:longint; version:Pchar; stream_size:longint):longint;inline;
294 begin
295   deflateInit2_:=zdeflate.deflateInit2_(strm,level,method,windowBits,memlevel,strategy,version,stream_size);
296 end;
297 
inflateInit2_null298 function inflateInit2_(var strm:TZStream; windowBits:longint; version:Pchar; stream_size:longint):longint;inline;
299 begin
300   inflateInit2_:=zinflate.inflateInit2_(strm,windowBits,version,stream_size);
301 end;
302 
deflateInitnull303 function deflateInit(var strm:TZStream;level : longint) : longint;inline;
304 begin
305   deflateInit:=zdeflate.deflateInit(strm,level);
306 end;
307 
inflateInitnull308 function inflateInit(var strm:TZStream) : longint;inline;
309 begin
310   inflateInit:=zinflate.inflateInit(strm);
311 end;
312 
deflateInit2null313 function deflateInit2(var strm:TZStream;level,method,windowBits,memLevel,strategy : longint) : longint;inline;
314 begin
315   deflateInit2:=zdeflate.deflateInit2(strm,level,method,windowbits,memlevel,strategy);
316 end;
317 
inflateInit2null318 function inflateInit2(var strm:TZStream; windowBits : longint) : longint;inline;
319 begin
320   inflateInit2:=zinflate.inflateInit2_(strm,windowBits,ZLIB_VERSION,sizeof(TZStream));
321 end;
322 
zErrornull323 function zError(err:longint):string;inline;
324 begin
325   zerror:=zbase.zerror(err);
326 end;
327 
inflateSyncPointnull328 function inflateSyncPoint(z:PZstream):longint;inline;
329 begin
330   inflateSyncPoint:=zinflate.inflateSyncPoint(z^);
331 end;
332 
get_crc_tablenull333 function get_crc_table:pointer;inline;
334 begin
335   get_crc_table:=crc.get_crc_table;
336 end;
337 
338 end.
339