module Data.IterIO.ZlibInt where
import Data.Word
import System.IO.Unsafe (unsafePerformIO)
import Foreign hiding (unsafePerformIO)
import Foreign.C
foreign import ccall unsafe "zlib.h deflateInit_"
c_deflateInit :: Ptr ZStream -> CInt -> CString -> CInt -> IO CInt
foreign import ccall unsafe "zlib.h deflateInit2_"
c_deflateInit2 :: Ptr ZStream -> CInt -> ZMethod -> CInt -> CInt
-> ZStrategy -> CString -> CInt -> IO CInt
foreign import ccall unsafe "zlib.h deflate"
c_deflate :: Ptr ZStream -> ZFlush -> IO CInt
foreign import ccall unsafe "zlib.h &deflateEnd"
c_deflateEnd :: FunPtr (Ptr ZStream -> IO ())
foreign import ccall unsafe "zlib.h inflateInit_"
c_inflateInit :: Ptr ZStream -> CString -> CInt -> IO CInt
foreign import ccall unsafe "zlib.h inflateInit2_"
c_inflateInit2 :: Ptr ZStream -> CInt -> CString -> CInt -> IO CInt
foreign import ccall unsafe "zlib.h inflate"
c_inflate :: Ptr ZStream -> ZFlush -> IO CInt
foreign import ccall unsafe "zlib.h &inflateEnd"
c_inflateEnd :: FunPtr (Ptr ZStream -> IO ())
max_wbits :: CInt
max_wbits = 15
max_mem_level :: CInt
max_mem_level = 9
def_mem_level :: CInt
def_mem_level = 8
zlib_version :: CString
zlib_version = unsafePerformIO $ newCAString "1.2.6"
z_stream_size :: (Num a) => a
z_stream_size = (56)
z_stream_alignment :: Int
z_stream_alignment = 4
data ZStream = ZStream
next_in :: Ptr ZStream -> Ptr (Ptr Word8)
next_in zptr = zptr `plusPtr` 0
avail_in :: Ptr ZStream -> Ptr (CUInt)
avail_in zptr = zptr `plusPtr` 4
total_in :: Ptr ZStream -> Ptr (CULong)
total_in zptr = zptr `plusPtr` 8
next_out :: Ptr ZStream -> Ptr (Ptr Word8)
next_out zptr = zptr `plusPtr` 12
avail_out :: Ptr ZStream -> Ptr (CUInt)
avail_out zptr = zptr `plusPtr` 16
total_out :: Ptr ZStream -> Ptr (CULong)
total_out zptr = zptr `plusPtr` 20
msg :: Ptr ZStream -> Ptr (CString)
msg zptr = zptr `plusPtr` 24
zalloc :: Ptr ZStream -> Ptr (FunPtr (Ptr a -> CUInt -> CUInt -> Ptr b))
zalloc zptr = zptr `plusPtr` 32
zfree :: Ptr ZStream -> Ptr (FunPtr (Ptr a -> Ptr b -> ()))
zfree zptr = zptr `plusPtr` 36
opaque :: Ptr ZStream -> Ptr (Ptr a)
opaque zptr = zptr `plusPtr` 40
data_type :: Ptr ZStream -> Ptr (ZDataType)
data_type zptr = zptr `plusPtr` 44
adler :: Ptr ZStream -> Ptr (CULong)
adler zptr = zptr `plusPtr` 48
newtype ZFlush = ZFlush CInt
z_NO_FLUSH :: ZFlush
z_NO_FLUSH = ZFlush 0
z_SYNC_FLUSH :: ZFlush
z_SYNC_FLUSH = ZFlush 2
z_FULL_FLUSH :: ZFlush
z_FULL_FLUSH = ZFlush 3
z_FINISH :: ZFlush
z_FINISH = ZFlush 4
z_BLOCK :: ZFlush
z_BLOCK = ZFlush 5
z_OK :: CInt
z_OK = 0
z_STREAM_END :: CInt
z_STREAM_END = 1
z_NEED_DICT :: CInt
z_NEED_DICT = 2
z_ERRNO :: CInt
z_ERRNO = (1)
z_STREAM_ERROR :: CInt
z_STREAM_ERROR = (2)
z_DATA_ERROR :: CInt
z_DATA_ERROR = (3)
z_MEM_ERROR :: CInt
z_MEM_ERROR = (4)
z_BUF_ERROR :: CInt
z_BUF_ERROR = (5)
z_VERSION_ERROR :: CInt
z_VERSION_ERROR = (6)
z_DEFAULT_COMPRESSION :: CInt
z_DEFAULT_COMPRESSION = (1)
newtype ZStrategy = ZStrategy CInt
z_FILTERED :: ZStrategy
z_FILTERED = ZStrategy 1
z_HUFFMAN_ONLY :: ZStrategy
z_HUFFMAN_ONLY = ZStrategy 2
z_RLE :: ZStrategy
z_RLE = ZStrategy 3
z_FIXED :: ZStrategy
z_FIXED = ZStrategy 4
z_DEFAULT_STRATEGY :: ZStrategy
z_DEFAULT_STRATEGY = ZStrategy 0
newtype ZDataType = ZDataType CInt
z_BINARY :: ZDataType
z_BINARY = ZDataType 0
z_TEXT :: ZDataType
z_TEXT = ZDataType 1
z_UNKNOWN :: ZDataType
z_UNKNOWN = ZDataType 2
newtype ZMethod = ZMethod CInt
z_DEFLATED :: ZMethod
z_DEFLATED = ZMethod 8