module GI.Gio.Objects.ZlibDecompressor
(
ZlibDecompressor(..) ,
ZlibDecompressorK ,
toZlibDecompressor ,
noZlibDecompressor ,
zlibDecompressorGetFileInfo ,
zlibDecompressorNew ,
ZlibDecompressorFileInfoPropertyInfo ,
getZlibDecompressorFileInfo ,
ZlibDecompressorFormatPropertyInfo ,
constructZlibDecompressorFormat ,
getZlibDecompressorFormat ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Gio.Types
import GI.Gio.Callbacks
import qualified GI.GObject as GObject
newtype ZlibDecompressor = ZlibDecompressor (ForeignPtr ZlibDecompressor)
foreign import ccall "g_zlib_decompressor_get_type"
c_g_zlib_decompressor_get_type :: IO GType
type instance ParentTypes ZlibDecompressor = ZlibDecompressorParentTypes
type ZlibDecompressorParentTypes = '[GObject.Object, Converter]
instance GObject ZlibDecompressor where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_g_zlib_decompressor_get_type
class GObject o => ZlibDecompressorK o
instance (GObject o, IsDescendantOf ZlibDecompressor o) => ZlibDecompressorK o
toZlibDecompressor :: ZlibDecompressorK o => o -> IO ZlibDecompressor
toZlibDecompressor = unsafeCastTo ZlibDecompressor
noZlibDecompressor :: Maybe ZlibDecompressor
noZlibDecompressor = Nothing
getZlibDecompressorFileInfo :: (MonadIO m, ZlibDecompressorK o) => o -> m FileInfo
getZlibDecompressorFileInfo obj = liftIO $ getObjectPropertyObject obj "file-info" FileInfo
data ZlibDecompressorFileInfoPropertyInfo
instance AttrInfo ZlibDecompressorFileInfoPropertyInfo where
type AttrAllowedOps ZlibDecompressorFileInfoPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ZlibDecompressorFileInfoPropertyInfo = (~) ()
type AttrBaseTypeConstraint ZlibDecompressorFileInfoPropertyInfo = ZlibDecompressorK
type AttrGetType ZlibDecompressorFileInfoPropertyInfo = FileInfo
type AttrLabel ZlibDecompressorFileInfoPropertyInfo = "ZlibDecompressor::file-info"
attrGet _ = getZlibDecompressorFileInfo
attrSet _ = undefined
attrConstruct _ = undefined
getZlibDecompressorFormat :: (MonadIO m, ZlibDecompressorK o) => o -> m ZlibCompressorFormat
getZlibDecompressorFormat obj = liftIO $ getObjectPropertyEnum obj "format"
constructZlibDecompressorFormat :: ZlibCompressorFormat -> IO ([Char], GValue)
constructZlibDecompressorFormat val = constructObjectPropertyEnum "format" val
data ZlibDecompressorFormatPropertyInfo
instance AttrInfo ZlibDecompressorFormatPropertyInfo where
type AttrAllowedOps ZlibDecompressorFormatPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint ZlibDecompressorFormatPropertyInfo = (~) ZlibCompressorFormat
type AttrBaseTypeConstraint ZlibDecompressorFormatPropertyInfo = ZlibDecompressorK
type AttrGetType ZlibDecompressorFormatPropertyInfo = ZlibCompressorFormat
type AttrLabel ZlibDecompressorFormatPropertyInfo = "ZlibDecompressor::format"
attrGet _ = getZlibDecompressorFormat
attrSet _ = undefined
attrConstruct _ = constructZlibDecompressorFormat
type instance AttributeList ZlibDecompressor = ZlibDecompressorAttributeList
type ZlibDecompressorAttributeList = ('[ '("file-info", ZlibDecompressorFileInfoPropertyInfo), '("format", ZlibDecompressorFormatPropertyInfo)] :: [(Symbol, *)])
type instance SignalList ZlibDecompressor = ZlibDecompressorSignalList
type ZlibDecompressorSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "g_zlib_decompressor_new" g_zlib_decompressor_new ::
CUInt ->
IO (Ptr ZlibDecompressor)
zlibDecompressorNew ::
(MonadIO m) =>
ZlibCompressorFormat ->
m ZlibDecompressor
zlibDecompressorNew format = liftIO $ do
let format' = (fromIntegral . fromEnum) format
result <- g_zlib_decompressor_new format'
checkUnexpectedReturnNULL "g_zlib_decompressor_new" result
result' <- (wrapObject ZlibDecompressor) result
return result'
foreign import ccall "g_zlib_decompressor_get_file_info" g_zlib_decompressor_get_file_info ::
Ptr ZlibDecompressor ->
IO (Ptr FileInfo)
zlibDecompressorGetFileInfo ::
(MonadIO m, ZlibDecompressorK a) =>
a ->
m FileInfo
zlibDecompressorGetFileInfo _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_zlib_decompressor_get_file_info _obj'
checkUnexpectedReturnNULL "g_zlib_decompressor_get_file_info" result
result' <- (newObject FileInfo) result
touchManagedPtr _obj
return result'