compression.zlib.ffi: Add some structures and functions for streaming unzipping.
parent
0962b4a697
commit
c9ef2824c3
|
@ -1,7 +1,7 @@
|
|||
! Copyright (C) 2009 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: alien alien.c-types alien.libraries alien.syntax
|
||||
combinators system ;
|
||||
classes.struct combinators system ;
|
||||
IN: compression.zlib.ffi
|
||||
|
||||
<< "zlib" {
|
||||
|
@ -29,3 +29,60 @@ TYPEDEF: ulong uLong
|
|||
FUNCTION: int compress ( Bytef* dest, uLongf* destLen, Bytef* source, uLong sourceLen ) ;
|
||||
FUNCTION: int compress2 ( Bytef* dest, uLongf* destLen, Bytef* source, uLong sourceLen, int level ) ;
|
||||
FUNCTION: int uncompress ( Bytef* dest, uLongf* destLen, Bytef* source, uLong sourceLen ) ;
|
||||
|
||||
STRUCT: z_stream
|
||||
{ next_in uchar* }
|
||||
{ avail_in uint }
|
||||
{ total_in ulong }
|
||||
|
||||
{ next_out uchar* }
|
||||
{ avail_out uint }
|
||||
{ total_out ulong }
|
||||
|
||||
{ msg char* }
|
||||
{ state void* }
|
||||
|
||||
{ zalloc void* }
|
||||
{ zfree void* }
|
||||
{ opaque void* }
|
||||
|
||||
{ data_type int }
|
||||
{ adler ulong }
|
||||
{ reserved ulong } ;
|
||||
|
||||
TYPEDEF: z_stream* z_streamp
|
||||
|
||||
STRUCT: gz_header
|
||||
{ text int }
|
||||
{ time ulong }
|
||||
{ xflags int }
|
||||
{ os int }
|
||||
{ extra uchar* }
|
||||
{ extra_len uint }
|
||||
{ extra_max uint }
|
||||
{ name uchar* }
|
||||
{ name_max uint }
|
||||
{ comment uchar* }
|
||||
{ comm_max uint }
|
||||
{ hcrc int }
|
||||
{ done int } ;
|
||||
|
||||
TYPEDEF: gz_header* gz_headerp
|
||||
|
||||
CONSTANT: ZLIB_VERSION "1.2.5"
|
||||
|
||||
FUNCTION: int inflateInit_ ( z_streamp strm, c-string version, int stream_size ) ;
|
||||
FUNCTION: int inflateInit2_ ( z_streamp strm, int windowBits, c-string version, int stream_size ) ;
|
||||
FUNCTION: int inflateReset ( z_streamp strm ) ;
|
||||
FUNCTION: int inflateEnd ( z_streamp strm ) ;
|
||||
|
||||
CONSTANT: Z_NO_FLUSH 0
|
||||
CONSTANT: Z_PARTIAL_FLUSH 1
|
||||
CONSTANT: Z_SYNC_FLUSH 2
|
||||
CONSTANT: Z_FULL_FLUSH 3
|
||||
CONSTANT: Z_FINISH 4
|
||||
CONSTANT: Z_BLOCK 5
|
||||
CONSTANT: Z_TREES 6
|
||||
|
||||
FUNCTION: int inflate ( z_streamp strm, int flush ) ;
|
||||
FUNCTION: int inflateGetHeader ( z_streamp strm, gz_headerp head ) ;
|
||||
|
|
Loading…
Reference in New Issue