module Data.Conduit.BZlib.Internal where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
c'BZ_RUN = 0
c'BZ_RUN :: (Num a) => a
c'BZ_FLUSH = 1
c'BZ_FLUSH :: (Num a) => a
c'BZ_FINISH = 2
c'BZ_FINISH :: (Num a) => a
c'BZ_OK = 0
c'BZ_OK :: (Num a) => a
c'BZ_RUN_OK = 1
c'BZ_RUN_OK :: (Num a) => a
c'BZ_FLUSH_OK = 2
c'BZ_FLUSH_OK :: (Num a) => a
c'BZ_FINISH_OK = 3
c'BZ_FINISH_OK :: (Num a) => a
c'BZ_STREAM_END = 4
c'BZ_STREAM_END :: (Num a) => a
c'BZ_SEQUENCE_ERROR = 1
c'BZ_SEQUENCE_ERROR :: (Num a) => a
c'BZ_PARAM_ERROR = 2
c'BZ_PARAM_ERROR :: (Num a) => a
c'BZ_MEM_ERROR = 3
c'BZ_MEM_ERROR :: (Num a) => a
c'BZ_DATA_ERROR = 4
c'BZ_DATA_ERROR :: (Num a) => a
c'BZ_DATA_ERROR_MAGIC = 5
c'BZ_DATA_ERROR_MAGIC :: (Num a) => a
c'BZ_IO_ERROR = 6
c'BZ_IO_ERROR :: (Num a) => a
c'BZ_UNEXPECTED_EOF = 7
c'BZ_UNEXPECTED_EOF :: (Num a) => a
c'BZ_OUTBUFF_FULL = 8
c'BZ_OUTBUFF_FULL :: (Num a) => a
c'BZ_CONFIG_ERROR = 9
c'BZ_CONFIG_ERROR :: (Num a) => a
data C'bz_stream = C'bz_stream{
c'bz_stream'next_in :: Ptr CChar,
c'bz_stream'avail_in :: CUInt,
c'bz_stream'total_in_lo32 :: CUInt,
c'bz_stream'total_in_hi32 :: CUInt,
c'bz_stream'next_out :: Ptr CChar,
c'bz_stream'avail_out :: CUInt,
c'bz_stream'total_out_lo32 :: CUInt,
c'bz_stream'total_out_hi32 :: CUInt,
c'bz_stream'state :: Ptr (),
c'bz_stream'bzalloc :: Ptr (),
c'bz_stream'bzfree :: Ptr (),
c'bz_stream'opaque :: Ptr ()
} deriving (Eq,Show)
p'bz_stream'next_in p = plusPtr p 0
p'bz_stream'next_in :: Ptr (C'bz_stream) -> Ptr (Ptr CChar)
p'bz_stream'avail_in p = plusPtr p 8
p'bz_stream'avail_in :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'total_in_lo32 p = plusPtr p 12
p'bz_stream'total_in_lo32 :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'total_in_hi32 p = plusPtr p 16
p'bz_stream'total_in_hi32 :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'next_out p = plusPtr p 24
p'bz_stream'next_out :: Ptr (C'bz_stream) -> Ptr (Ptr CChar)
p'bz_stream'avail_out p = plusPtr p 32
p'bz_stream'avail_out :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'total_out_lo32 p = plusPtr p 36
p'bz_stream'total_out_lo32 :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'total_out_hi32 p = plusPtr p 40
p'bz_stream'total_out_hi32 :: Ptr (C'bz_stream) -> Ptr (CUInt)
p'bz_stream'state p = plusPtr p 48
p'bz_stream'state :: Ptr (C'bz_stream) -> Ptr (Ptr ())
p'bz_stream'bzalloc p = plusPtr p 56
p'bz_stream'bzalloc :: Ptr (C'bz_stream) -> Ptr (Ptr ())
p'bz_stream'bzfree p = plusPtr p 64
p'bz_stream'bzfree :: Ptr (C'bz_stream) -> Ptr (Ptr ())
p'bz_stream'opaque p = plusPtr p 72
p'bz_stream'opaque :: Ptr (C'bz_stream) -> Ptr (Ptr ())
instance Storable C'bz_stream where
sizeOf _ = 80
alignment _ = 8
peek _p = do
v0 <- peekByteOff _p 0
v1 <- peekByteOff _p 8
v2 <- peekByteOff _p 12
v3 <- peekByteOff _p 16
v4 <- peekByteOff _p 24
v5 <- peekByteOff _p 32
v6 <- peekByteOff _p 36
v7 <- peekByteOff _p 40
v8 <- peekByteOff _p 48
v9 <- peekByteOff _p 56
v10 <- peekByteOff _p 64
v11 <- peekByteOff _p 72
return $ C'bz_stream v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11
poke _p (C'bz_stream v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11) = do
pokeByteOff _p 0 v0
pokeByteOff _p 8 v1
pokeByteOff _p 12 v2
pokeByteOff _p 16 v3
pokeByteOff _p 24 v4
pokeByteOff _p 32 v5
pokeByteOff _p 36 v6
pokeByteOff _p 40 v7
pokeByteOff _p 48 v8
pokeByteOff _p 56 v9
pokeByteOff _p 64 v10
pokeByteOff _p 72 v11
return ()
foreign import ccall "BZ2_bzCompressInit" c'BZ2_bzCompressInit
:: Ptr C'bz_stream -> CInt -> CInt -> CInt -> IO CInt
foreign import ccall "&BZ2_bzCompressInit" p'BZ2_bzCompressInit
:: FunPtr (Ptr C'bz_stream -> CInt -> CInt -> CInt -> IO CInt)
foreign import ccall "BZ2_bzCompress" c'BZ2_bzCompress
:: Ptr C'bz_stream -> CInt -> IO CInt
foreign import ccall "&BZ2_bzCompress" p'BZ2_bzCompress
:: FunPtr (Ptr C'bz_stream -> CInt -> IO CInt)
foreign import ccall "BZ2_bzCompressEnd" c'BZ2_bzCompressEnd
:: Ptr C'bz_stream -> IO CInt
foreign import ccall "&BZ2_bzCompressEnd" p'BZ2_bzCompressEnd
:: FunPtr (Ptr C'bz_stream -> IO CInt)
foreign import ccall "BZ2_bzDecompressInit" c'BZ2_bzDecompressInit
:: Ptr C'bz_stream -> CInt -> CInt -> IO CInt
foreign import ccall "&BZ2_bzDecompressInit" p'BZ2_bzDecompressInit
:: FunPtr (Ptr C'bz_stream -> CInt -> CInt -> IO CInt)
foreign import ccall "BZ2_bzDecompress" c'BZ2_bzDecompress
:: Ptr C'bz_stream -> IO CInt
foreign import ccall "&BZ2_bzDecompress" p'BZ2_bzDecompress
:: FunPtr (Ptr C'bz_stream -> IO CInt)
foreign import ccall "BZ2_bzDecompressEnd" c'BZ2_bzDecompressEnd
:: Ptr C'bz_stream -> IO CInt
foreign import ccall "&BZ2_bzDecompressEnd" p'BZ2_bzDecompressEnd
:: FunPtr (Ptr C'bz_stream -> IO CInt)