gi-gst-0.1.6.13: GI/Gst/Interfaces/ChildProxy.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.Gst.Interfaces.ChildProxy
(
-- * Exported types
ChildProxy(..) ,
noChildProxy ,
ChildProxyK ,
toChildProxy ,
-- * Methods
-- ** childProxyChildAdded
ChildProxyChildAddedMethodInfo ,
childProxyChildAdded ,
-- ** childProxyChildRemoved
ChildProxyChildRemovedMethodInfo ,
childProxyChildRemoved ,
-- ** childProxyGetChildByIndex
ChildProxyGetChildByIndexMethodInfo ,
childProxyGetChildByIndex ,
-- ** childProxyGetChildByName
ChildProxyGetChildByNameMethodInfo ,
childProxyGetChildByName ,
-- ** childProxyGetChildrenCount
ChildProxyGetChildrenCountMethodInfo ,
childProxyGetChildrenCount ,
-- ** childProxyGetProperty
ChildProxyGetPropertyMethodInfo ,
childProxyGetProperty ,
-- ** childProxyLookup
ChildProxyLookupMethodInfo ,
childProxyLookup ,
-- ** childProxySetProperty
ChildProxySetPropertyMethodInfo ,
childProxySetProperty ,
-- * Signals
-- ** ChildAdded
ChildProxyChildAddedCallback ,
ChildProxyChildAddedCallbackC ,
ChildProxyChildAddedSignalInfo ,
afterChildProxyChildAdded ,
childProxyChildAddedCallbackWrapper ,
childProxyChildAddedClosure ,
mkChildProxyChildAddedCallback ,
noChildProxyChildAddedCallback ,
onChildProxyChildAdded ,
-- ** ChildRemoved
ChildProxyChildRemovedCallback ,
ChildProxyChildRemovedCallbackC ,
ChildProxyChildRemovedSignalInfo ,
afterChildProxyChildRemoved ,
childProxyChildRemovedCallbackWrapper ,
childProxyChildRemovedClosure ,
mkChildProxyChildRemovedCallback ,
noChildProxyChildRemovedCallback ,
onChildProxyChildRemoved ,
) 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.Gst.Types
import GI.Gst.Callbacks
import qualified GI.GObject as GObject
-- interface ChildProxy
newtype ChildProxy = ChildProxy (ForeignPtr ChildProxy)
noChildProxy :: Maybe ChildProxy
noChildProxy = Nothing
type family ResolveChildProxyMethod (t :: Symbol) (o :: *) :: * where
ResolveChildProxyMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveChildProxyMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveChildProxyMethod "childAdded" o = ChildProxyChildAddedMethodInfo
ResolveChildProxyMethod "childRemoved" o = ChildProxyChildRemovedMethodInfo
ResolveChildProxyMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveChildProxyMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveChildProxyMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveChildProxyMethod "lookup" o = ChildProxyLookupMethodInfo
ResolveChildProxyMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveChildProxyMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveChildProxyMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveChildProxyMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveChildProxyMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveChildProxyMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveChildProxyMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveChildProxyMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveChildProxyMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveChildProxyMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveChildProxyMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveChildProxyMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveChildProxyMethod "getChildByIndex" o = ChildProxyGetChildByIndexMethodInfo
ResolveChildProxyMethod "getChildByName" o = ChildProxyGetChildByNameMethodInfo
ResolveChildProxyMethod "getChildrenCount" o = ChildProxyGetChildrenCountMethodInfo
ResolveChildProxyMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveChildProxyMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveChildProxyMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveChildProxyMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveChildProxyMethod t ChildProxy, MethodInfo info ChildProxy p) => IsLabelProxy t (ChildProxy -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveChildProxyMethod t ChildProxy, MethodInfo info ChildProxy p) => IsLabel t (ChildProxy -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
-- signal ChildProxy::child-added
type ChildProxyChildAddedCallback =
GObject.Object ->
T.Text ->
IO ()
noChildProxyChildAddedCallback :: Maybe ChildProxyChildAddedCallback
noChildProxyChildAddedCallback = Nothing
type ChildProxyChildAddedCallbackC =
Ptr () -> -- object
Ptr GObject.Object ->
CString ->
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkChildProxyChildAddedCallback :: ChildProxyChildAddedCallbackC -> IO (FunPtr ChildProxyChildAddedCallbackC)
childProxyChildAddedClosure :: ChildProxyChildAddedCallback -> IO Closure
childProxyChildAddedClosure cb = newCClosure =<< mkChildProxyChildAddedCallback wrapped
where wrapped = childProxyChildAddedCallbackWrapper cb
childProxyChildAddedCallbackWrapper ::
ChildProxyChildAddedCallback ->
Ptr () ->
Ptr GObject.Object ->
CString ->
Ptr () ->
IO ()
childProxyChildAddedCallbackWrapper _cb _ object name _ = do
object' <- (newObject GObject.Object) object
name' <- cstringToText name
_cb object' name'
onChildProxyChildAdded :: (GObject a, MonadIO m) => a -> ChildProxyChildAddedCallback -> m SignalHandlerId
onChildProxyChildAdded obj cb = liftIO $ connectChildProxyChildAdded obj cb SignalConnectBefore
afterChildProxyChildAdded :: (GObject a, MonadIO m) => a -> ChildProxyChildAddedCallback -> m SignalHandlerId
afterChildProxyChildAdded obj cb = connectChildProxyChildAdded obj cb SignalConnectAfter
connectChildProxyChildAdded :: (GObject a, MonadIO m) =>
a -> ChildProxyChildAddedCallback -> SignalConnectMode -> m SignalHandlerId
connectChildProxyChildAdded obj cb after = liftIO $ do
cb' <- mkChildProxyChildAddedCallback (childProxyChildAddedCallbackWrapper cb)
connectSignalFunPtr obj "child-added" cb' after
-- signal ChildProxy::child-removed
type ChildProxyChildRemovedCallback =
GObject.Object ->
T.Text ->
IO ()
noChildProxyChildRemovedCallback :: Maybe ChildProxyChildRemovedCallback
noChildProxyChildRemovedCallback = Nothing
type ChildProxyChildRemovedCallbackC =
Ptr () -> -- object
Ptr GObject.Object ->
CString ->
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkChildProxyChildRemovedCallback :: ChildProxyChildRemovedCallbackC -> IO (FunPtr ChildProxyChildRemovedCallbackC)
childProxyChildRemovedClosure :: ChildProxyChildRemovedCallback -> IO Closure
childProxyChildRemovedClosure cb = newCClosure =<< mkChildProxyChildRemovedCallback wrapped
where wrapped = childProxyChildRemovedCallbackWrapper cb
childProxyChildRemovedCallbackWrapper ::
ChildProxyChildRemovedCallback ->
Ptr () ->
Ptr GObject.Object ->
CString ->
Ptr () ->
IO ()
childProxyChildRemovedCallbackWrapper _cb _ object name _ = do
object' <- (newObject GObject.Object) object
name' <- cstringToText name
_cb object' name'
onChildProxyChildRemoved :: (GObject a, MonadIO m) => a -> ChildProxyChildRemovedCallback -> m SignalHandlerId
onChildProxyChildRemoved obj cb = liftIO $ connectChildProxyChildRemoved obj cb SignalConnectBefore
afterChildProxyChildRemoved :: (GObject a, MonadIO m) => a -> ChildProxyChildRemovedCallback -> m SignalHandlerId
afterChildProxyChildRemoved obj cb = connectChildProxyChildRemoved obj cb SignalConnectAfter
connectChildProxyChildRemoved :: (GObject a, MonadIO m) =>
a -> ChildProxyChildRemovedCallback -> SignalConnectMode -> m SignalHandlerId
connectChildProxyChildRemoved obj cb after = liftIO $ do
cb' <- mkChildProxyChildRemovedCallback (childProxyChildRemovedCallbackWrapper cb)
connectSignalFunPtr obj "child-removed" cb' after
type instance AttributeList ChildProxy = ChildProxyAttributeList
type ChildProxyAttributeList = ('[ ] :: [(Symbol, *)])
data ChildProxyChildAddedSignalInfo
instance SignalInfo ChildProxyChildAddedSignalInfo where
type HaskellCallbackType ChildProxyChildAddedSignalInfo = ChildProxyChildAddedCallback
connectSignal _ = connectChildProxyChildAdded
data ChildProxyChildRemovedSignalInfo
instance SignalInfo ChildProxyChildRemovedSignalInfo where
type HaskellCallbackType ChildProxyChildRemovedSignalInfo = ChildProxyChildRemovedCallback
connectSignal _ = connectChildProxyChildRemoved
type instance SignalList ChildProxy = ChildProxySignalList
type ChildProxySignalList = ('[ '("childAdded", ChildProxyChildAddedSignalInfo), '("childRemoved", ChildProxyChildRemovedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "gst_child_proxy_get_type"
c_gst_child_proxy_get_type :: IO GType
type instance ParentTypes ChildProxy = ChildProxyParentTypes
type ChildProxyParentTypes = '[GObject.Object]
instance GObject ChildProxy where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_gst_child_proxy_get_type
class GObject o => ChildProxyK o
instance (GObject o, IsDescendantOf ChildProxy o) => ChildProxyK o
toChildProxy :: ChildProxyK o => o -> IO ChildProxy
toChildProxy = unsafeCastTo ChildProxy
-- method ChildProxy::child_added
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "child", argType = TInterface "GObject" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_child_added" gst_child_proxy_child_added ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
Ptr GObject.Object -> -- child : TInterface "GObject" "Object"
CString -> -- name : TBasicType TUTF8
IO ()
childProxyChildAdded ::
(MonadIO m, ChildProxyK a, GObject.ObjectK b) =>
a -- _obj
-> b -- child
-> T.Text -- name
-> m () -- result
childProxyChildAdded _obj child name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let child' = unsafeManagedPtrCastPtr child
name' <- textToCString name
gst_child_proxy_child_added _obj' child' name'
touchManagedPtr _obj
touchManagedPtr child
freeMem name'
return ()
data ChildProxyChildAddedMethodInfo
instance (signature ~ (b -> T.Text -> m ()), MonadIO m, ChildProxyK a, GObject.ObjectK b) => MethodInfo ChildProxyChildAddedMethodInfo a signature where
overloadedMethod _ = childProxyChildAdded
-- method ChildProxy::child_removed
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "child", argType = TInterface "GObject" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_child_removed" gst_child_proxy_child_removed ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
Ptr GObject.Object -> -- child : TInterface "GObject" "Object"
CString -> -- name : TBasicType TUTF8
IO ()
childProxyChildRemoved ::
(MonadIO m, ChildProxyK a, GObject.ObjectK b) =>
a -- _obj
-> b -- child
-> T.Text -- name
-> m () -- result
childProxyChildRemoved _obj child name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let child' = unsafeManagedPtrCastPtr child
name' <- textToCString name
gst_child_proxy_child_removed _obj' child' name'
touchManagedPtr _obj
touchManagedPtr child
freeMem name'
return ()
data ChildProxyChildRemovedMethodInfo
instance (signature ~ (b -> T.Text -> m ()), MonadIO m, ChildProxyK a, GObject.ObjectK b) => MethodInfo ChildProxyChildRemovedMethodInfo a signature where
overloadedMethod _ = childProxyChildRemoved
-- method ChildProxy::get_child_by_index
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TInterface "GObject" "Object"
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_get_child_by_index" gst_child_proxy_get_child_by_index ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
Word32 -> -- index : TBasicType TUInt32
IO (Ptr GObject.Object)
childProxyGetChildByIndex ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> Word32 -- index
-> m GObject.Object -- result
childProxyGetChildByIndex _obj index = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_child_proxy_get_child_by_index _obj' index
checkUnexpectedReturnNULL "gst_child_proxy_get_child_by_index" result
result' <- (wrapObject GObject.Object) result
touchManagedPtr _obj
return result'
data ChildProxyGetChildByIndexMethodInfo
instance (signature ~ (Word32 -> m GObject.Object), MonadIO m, ChildProxyK a) => MethodInfo ChildProxyGetChildByIndexMethodInfo a signature where
overloadedMethod _ = childProxyGetChildByIndex
-- method ChildProxy::get_child_by_name
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TInterface "GObject" "Object"
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_get_child_by_name" gst_child_proxy_get_child_by_name ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
CString -> -- name : TBasicType TUTF8
IO (Ptr GObject.Object)
childProxyGetChildByName ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> T.Text -- name
-> m GObject.Object -- result
childProxyGetChildByName _obj name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
name' <- textToCString name
result <- gst_child_proxy_get_child_by_name _obj' name'
checkUnexpectedReturnNULL "gst_child_proxy_get_child_by_name" result
result' <- (wrapObject GObject.Object) result
touchManagedPtr _obj
freeMem name'
return result'
data ChildProxyGetChildByNameMethodInfo
instance (signature ~ (T.Text -> m GObject.Object), MonadIO m, ChildProxyK a) => MethodInfo ChildProxyGetChildByNameMethodInfo a signature where
overloadedMethod _ = childProxyGetChildByName
-- method ChildProxy::get_children_count
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_get_children_count" gst_child_proxy_get_children_count ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
IO Word32
childProxyGetChildrenCount ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> m Word32 -- result
childProxyGetChildrenCount _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_child_proxy_get_children_count _obj'
touchManagedPtr _obj
return result
data ChildProxyGetChildrenCountMethodInfo
instance (signature ~ (m Word32), MonadIO m, ChildProxyK a) => MethodInfo ChildProxyGetChildrenCountMethodInfo a signature where
overloadedMethod _ = childProxyGetChildrenCount
-- method ChildProxy::get_property
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TInterface "GObject" "Value", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_get_property" gst_child_proxy_get_property ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
CString -> -- name : TBasicType TUTF8
Ptr GValue -> -- value : TInterface "GObject" "Value"
IO ()
childProxyGetProperty ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> T.Text -- name
-> m (GValue) -- result
childProxyGetProperty _obj name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
name' <- textToCString name
value <- callocBoxedBytes 24 :: IO (Ptr GValue)
gst_child_proxy_get_property _obj' name' value
value' <- (wrapBoxed GValue) value
touchManagedPtr _obj
freeMem name'
return value'
data ChildProxyGetPropertyMethodInfo
instance (signature ~ (T.Text -> m (GValue)), MonadIO m, ChildProxyK a) => MethodInfo ChildProxyGetPropertyMethodInfo a signature where
overloadedMethod _ = childProxyGetProperty
-- method ChildProxy::lookup
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "target", argType = TInterface "GObject" "Object", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything},Arg {argCName = "pspec", argType = TParamSpec, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_lookup" gst_child_proxy_lookup ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
CString -> -- name : TBasicType TUTF8
Ptr (Ptr GObject.Object) -> -- target : TInterface "GObject" "Object"
Ptr (Ptr GParamSpec) -> -- pspec : TParamSpec
IO CInt
childProxyLookup ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> T.Text -- name
-> m (Bool,GObject.Object,GParamSpec) -- result
childProxyLookup _obj name = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
name' <- textToCString name
target <- allocMem :: IO (Ptr (Ptr GObject.Object))
pspec <- allocMem :: IO (Ptr (Ptr GParamSpec))
result <- gst_child_proxy_lookup _obj' name' target pspec
let result' = (/= 0) result
target' <- peek target
target'' <- (wrapObject GObject.Object) target'
pspec' <- peek pspec
pspec'' <- newGParamSpecFromPtr pspec'
touchManagedPtr _obj
freeMem name'
freeMem target
freeMem pspec
return (result', target'', pspec'')
data ChildProxyLookupMethodInfo
instance (signature ~ (T.Text -> m (Bool,GObject.Object,GParamSpec)), MonadIO m, ChildProxyK a) => MethodInfo ChildProxyLookupMethodInfo a signature where
overloadedMethod _ = childProxyLookup
-- method ChildProxy::set_property
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gst" "ChildProxy", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TInterface "GObject" "Value", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gst_child_proxy_set_property" gst_child_proxy_set_property ::
Ptr ChildProxy -> -- _obj : TInterface "Gst" "ChildProxy"
CString -> -- name : TBasicType TUTF8
Ptr GValue -> -- value : TInterface "GObject" "Value"
IO ()
childProxySetProperty ::
(MonadIO m, ChildProxyK a) =>
a -- _obj
-> T.Text -- name
-> GValue -- value
-> m () -- result
childProxySetProperty _obj name value = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
name' <- textToCString name
let value' = unsafeManagedPtrGetPtr value
gst_child_proxy_set_property _obj' name' value'
touchManagedPtr _obj
touchManagedPtr value
freeMem name'
return ()
data ChildProxySetPropertyMethodInfo
instance (signature ~ (T.Text -> GValue -> m ()), MonadIO m, ChildProxyK a) => MethodInfo ChildProxySetPropertyMethodInfo a signature where
overloadedMethod _ = childProxySetProperty