#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.GstBase.Structs.BaseParseFrame
(
BaseParseFrame(..) ,
newZeroBaseParseFrame ,
noBaseParseFrame ,
#if ENABLE_OVERLOADING
BaseParseFrameCopyMethodInfo ,
#endif
baseParseFrameCopy ,
#if ENABLE_OVERLOADING
BaseParseFrameFreeMethodInfo ,
#endif
baseParseFrameFree ,
#if ENABLE_OVERLOADING
BaseParseFrameInitMethodInfo ,
#endif
baseParseFrameInit ,
baseParseFrameNew ,
#if ENABLE_OVERLOADING
baseParseFrame_buffer ,
#endif
clearBaseParseFrameBuffer ,
getBaseParseFrameBuffer ,
setBaseParseFrameBuffer ,
#if ENABLE_OVERLOADING
baseParseFrame_flags ,
#endif
getBaseParseFrameFlags ,
setBaseParseFrameFlags ,
#if ENABLE_OVERLOADING
baseParseFrame_offset ,
#endif
getBaseParseFrameOffset ,
setBaseParseFrameOffset ,
#if ENABLE_OVERLOADING
baseParseFrame_outBuffer ,
#endif
clearBaseParseFrameOutBuffer ,
getBaseParseFrameOutBuffer ,
setBaseParseFrameOutBuffer ,
#if ENABLE_OVERLOADING
baseParseFrame_overhead ,
#endif
getBaseParseFrameOverhead ,
setBaseParseFrameOverhead ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.Gst.Structs.Buffer as Gst.Buffer
import {-# SOURCE #-} qualified GI.GstBase.Flags as GstBase.Flags
newtype BaseParseFrame = BaseParseFrame (ManagedPtr BaseParseFrame)
foreign import ccall "gst_base_parse_frame_get_type" c_gst_base_parse_frame_get_type ::
IO GType
instance BoxedObject BaseParseFrame where
boxedType _ = c_gst_base_parse_frame_get_type
newZeroBaseParseFrame :: MonadIO m => m BaseParseFrame
newZeroBaseParseFrame = liftIO $ callocBoxedBytes 72 >>= wrapBoxed BaseParseFrame
instance tag ~ 'AttrSet => Constructible BaseParseFrame tag where
new _ attrs = do
o <- newZeroBaseParseFrame
GI.Attributes.set o attrs
return o
noBaseParseFrame :: Maybe BaseParseFrame
noBaseParseFrame = Nothing
getBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Gst.Buffer.Buffer)
getBaseParseFrameBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 0) :: IO (Ptr Gst.Buffer.Buffer)
result <- SP.convertIfNonNull val $ \val' -> do
val'' <- (newBoxed Gst.Buffer.Buffer) val'
return val''
return result
setBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> Ptr Gst.Buffer.Buffer -> m ()
setBaseParseFrameBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 0) (val :: Ptr Gst.Buffer.Buffer)
clearBaseParseFrameBuffer :: MonadIO m => BaseParseFrame -> m ()
clearBaseParseFrameBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 0) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
#if ENABLE_OVERLOADING
data BaseParseFrameBufferFieldInfo
instance AttrInfo BaseParseFrameBufferFieldInfo where
type AttrAllowedOps BaseParseFrameBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint BaseParseFrameBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
type AttrBaseTypeConstraint BaseParseFrameBufferFieldInfo = (~) BaseParseFrame
type AttrGetType BaseParseFrameBufferFieldInfo = Maybe Gst.Buffer.Buffer
type AttrLabel BaseParseFrameBufferFieldInfo = "buffer"
type AttrOrigin BaseParseFrameBufferFieldInfo = BaseParseFrame
attrGet _ = getBaseParseFrameBuffer
attrSet _ = setBaseParseFrameBuffer
attrConstruct = undefined
attrClear _ = clearBaseParseFrameBuffer
baseParseFrame_buffer :: AttrLabelProxy "buffer"
baseParseFrame_buffer = AttrLabelProxy
#endif
getBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m (Maybe Gst.Buffer.Buffer)
getBaseParseFrameOutBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 8) :: IO (Ptr Gst.Buffer.Buffer)
result <- SP.convertIfNonNull val $ \val' -> do
val'' <- (newBoxed Gst.Buffer.Buffer) val'
return val''
return result
setBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> Ptr Gst.Buffer.Buffer -> m ()
setBaseParseFrameOutBuffer s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (val :: Ptr Gst.Buffer.Buffer)
clearBaseParseFrameOutBuffer :: MonadIO m => BaseParseFrame -> m ()
clearBaseParseFrameOutBuffer s = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 8) (FP.nullPtr :: Ptr Gst.Buffer.Buffer)
#if ENABLE_OVERLOADING
data BaseParseFrameOutBufferFieldInfo
instance AttrInfo BaseParseFrameOutBufferFieldInfo where
type AttrAllowedOps BaseParseFrameOutBufferFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint BaseParseFrameOutBufferFieldInfo = (~) (Ptr Gst.Buffer.Buffer)
type AttrBaseTypeConstraint BaseParseFrameOutBufferFieldInfo = (~) BaseParseFrame
type AttrGetType BaseParseFrameOutBufferFieldInfo = Maybe Gst.Buffer.Buffer
type AttrLabel BaseParseFrameOutBufferFieldInfo = "out_buffer"
type AttrOrigin BaseParseFrameOutBufferFieldInfo = BaseParseFrame
attrGet _ = getBaseParseFrameOutBuffer
attrSet _ = setBaseParseFrameOutBuffer
attrConstruct = undefined
attrClear _ = clearBaseParseFrameOutBuffer
baseParseFrame_outBuffer :: AttrLabelProxy "outBuffer"
baseParseFrame_outBuffer = AttrLabelProxy
#endif
getBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> m Word32
getBaseParseFrameFlags s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 16) :: IO Word32
return val
setBaseParseFrameFlags :: MonadIO m => BaseParseFrame -> Word32 -> m ()
setBaseParseFrameFlags s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 16) (val :: Word32)
#if ENABLE_OVERLOADING
data BaseParseFrameFlagsFieldInfo
instance AttrInfo BaseParseFrameFlagsFieldInfo where
type AttrAllowedOps BaseParseFrameFlagsFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint BaseParseFrameFlagsFieldInfo = (~) Word32
type AttrBaseTypeConstraint BaseParseFrameFlagsFieldInfo = (~) BaseParseFrame
type AttrGetType BaseParseFrameFlagsFieldInfo = Word32
type AttrLabel BaseParseFrameFlagsFieldInfo = "flags"
type AttrOrigin BaseParseFrameFlagsFieldInfo = BaseParseFrame
attrGet _ = getBaseParseFrameFlags
attrSet _ = setBaseParseFrameFlags
attrConstruct = undefined
attrClear _ = undefined
baseParseFrame_flags :: AttrLabelProxy "flags"
baseParseFrame_flags = AttrLabelProxy
#endif
getBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> m Word64
getBaseParseFrameOffset s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 24) :: IO Word64
return val
setBaseParseFrameOffset :: MonadIO m => BaseParseFrame -> Word64 -> m ()
setBaseParseFrameOffset s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 24) (val :: Word64)
#if ENABLE_OVERLOADING
data BaseParseFrameOffsetFieldInfo
instance AttrInfo BaseParseFrameOffsetFieldInfo where
type AttrAllowedOps BaseParseFrameOffsetFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint BaseParseFrameOffsetFieldInfo = (~) Word64
type AttrBaseTypeConstraint BaseParseFrameOffsetFieldInfo = (~) BaseParseFrame
type AttrGetType BaseParseFrameOffsetFieldInfo = Word64
type AttrLabel BaseParseFrameOffsetFieldInfo = "offset"
type AttrOrigin BaseParseFrameOffsetFieldInfo = BaseParseFrame
attrGet _ = getBaseParseFrameOffset
attrSet _ = setBaseParseFrameOffset
attrConstruct = undefined
attrClear _ = undefined
baseParseFrame_offset :: AttrLabelProxy "offset"
baseParseFrame_offset = AttrLabelProxy
#endif
getBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> m Int32
getBaseParseFrameOverhead s = liftIO $ withManagedPtr s $ \ptr -> do
val <- peek (ptr `plusPtr` 32) :: IO Int32
return val
setBaseParseFrameOverhead :: MonadIO m => BaseParseFrame -> Int32 -> m ()
setBaseParseFrameOverhead s val = liftIO $ withManagedPtr s $ \ptr -> do
poke (ptr `plusPtr` 32) (val :: Int32)
#if ENABLE_OVERLOADING
data BaseParseFrameOverheadFieldInfo
instance AttrInfo BaseParseFrameOverheadFieldInfo where
type AttrAllowedOps BaseParseFrameOverheadFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint BaseParseFrameOverheadFieldInfo = (~) Int32
type AttrBaseTypeConstraint BaseParseFrameOverheadFieldInfo = (~) BaseParseFrame
type AttrGetType BaseParseFrameOverheadFieldInfo = Int32
type AttrLabel BaseParseFrameOverheadFieldInfo = "overhead"
type AttrOrigin BaseParseFrameOverheadFieldInfo = BaseParseFrame
attrGet _ = getBaseParseFrameOverhead
attrSet _ = setBaseParseFrameOverhead
attrConstruct = undefined
attrClear _ = undefined
baseParseFrame_overhead :: AttrLabelProxy "overhead"
baseParseFrame_overhead = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList BaseParseFrame
type instance O.AttributeList BaseParseFrame = BaseParseFrameAttributeList
type BaseParseFrameAttributeList = ('[ '("buffer", BaseParseFrameBufferFieldInfo), '("outBuffer", BaseParseFrameOutBufferFieldInfo), '("flags", BaseParseFrameFlagsFieldInfo), '("offset", BaseParseFrameOffsetFieldInfo), '("overhead", BaseParseFrameOverheadFieldInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gst_base_parse_frame_new" gst_base_parse_frame_new ::
Ptr Gst.Buffer.Buffer ->
CUInt ->
Int32 ->
IO (Ptr BaseParseFrame)
baseParseFrameNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
Gst.Buffer.Buffer
-> [GstBase.Flags.BaseParseFrameFlags]
-> Int32
-> m BaseParseFrame
baseParseFrameNew buffer flags overhead = liftIO $ do
buffer' <- unsafeManagedPtrGetPtr buffer
let flags' = gflagsToWord flags
result <- gst_base_parse_frame_new buffer' flags' overhead
checkUnexpectedReturnNULL "baseParseFrameNew" result
result' <- (wrapBoxed BaseParseFrame) result
touchManagedPtr buffer
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "gst_base_parse_frame_copy" gst_base_parse_frame_copy ::
Ptr BaseParseFrame ->
IO (Ptr BaseParseFrame)
baseParseFrameCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
BaseParseFrame
-> m BaseParseFrame
baseParseFrameCopy frame = liftIO $ do
frame' <- unsafeManagedPtrGetPtr frame
result <- gst_base_parse_frame_copy frame'
checkUnexpectedReturnNULL "baseParseFrameCopy" result
result' <- (wrapBoxed BaseParseFrame) result
touchManagedPtr frame
return result'
#if ENABLE_OVERLOADING
data BaseParseFrameCopyMethodInfo
instance (signature ~ (m BaseParseFrame), MonadIO m) => O.MethodInfo BaseParseFrameCopyMethodInfo BaseParseFrame signature where
overloadedMethod _ = baseParseFrameCopy
#endif
foreign import ccall "gst_base_parse_frame_free" gst_base_parse_frame_free ::
Ptr BaseParseFrame ->
IO ()
baseParseFrameFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
BaseParseFrame
-> m ()
baseParseFrameFree frame = liftIO $ do
frame' <- unsafeManagedPtrGetPtr frame
gst_base_parse_frame_free frame'
touchManagedPtr frame
return ()
#if ENABLE_OVERLOADING
data BaseParseFrameFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo BaseParseFrameFreeMethodInfo BaseParseFrame signature where
overloadedMethod _ = baseParseFrameFree
#endif
foreign import ccall "gst_base_parse_frame_init" gst_base_parse_frame_init ::
Ptr BaseParseFrame ->
IO ()
baseParseFrameInit ::
(B.CallStack.HasCallStack, MonadIO m) =>
BaseParseFrame
-> m ()
baseParseFrameInit frame = liftIO $ do
frame' <- unsafeManagedPtrGetPtr frame
gst_base_parse_frame_init frame'
touchManagedPtr frame
return ()
#if ENABLE_OVERLOADING
data BaseParseFrameInitMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo BaseParseFrameInitMethodInfo BaseParseFrame signature where
overloadedMethod _ = baseParseFrameInit
#endif
#if ENABLE_OVERLOADING
type family ResolveBaseParseFrameMethod (t :: Symbol) (o :: *) :: * where
ResolveBaseParseFrameMethod "copy" o = BaseParseFrameCopyMethodInfo
ResolveBaseParseFrameMethod "free" o = BaseParseFrameFreeMethodInfo
ResolveBaseParseFrameMethod "init" o = BaseParseFrameInitMethodInfo
ResolveBaseParseFrameMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveBaseParseFrameMethod t BaseParseFrame, O.MethodInfo info BaseParseFrame p) => OL.IsLabel t (BaseParseFrame -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif