{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GES.Objects.TrackElement
(
#if defined(ENABLE_OVERLOADING)
TrackElementGetAllControlBindingsMethodInfo,
#endif
#if defined(ENABLE_OVERLOADING)
TrackElementListChildrenPropertiesMethodInfo,
#endif
TrackElement(..) ,
IsTrackElement ,
toTrackElement ,
#if defined(ENABLE_OVERLOADING)
ResolveTrackElementMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackElementAddChildrenPropsMethodInfo ,
#endif
trackElementAddChildrenProps ,
#if defined(ENABLE_OVERLOADING)
TrackElementClampControlSourceMethodInfo,
#endif
trackElementClampControlSource ,
#if defined(ENABLE_OVERLOADING)
TrackElementEditMethodInfo ,
#endif
trackElementEdit ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetAutoClampControlSourcesMethodInfo,
#endif
trackElementGetAutoClampControlSources ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetControlBindingMethodInfo ,
#endif
trackElementGetControlBinding ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetElementMethodInfo ,
#endif
trackElementGetElement ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetGnlobjectMethodInfo ,
#endif
trackElementGetGnlobject ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetNleobjectMethodInfo ,
#endif
trackElementGetNleobject ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetTrackMethodInfo ,
#endif
trackElementGetTrack ,
#if defined(ENABLE_OVERLOADING)
TrackElementGetTrackTypeMethodInfo ,
#endif
trackElementGetTrackType ,
#if defined(ENABLE_OVERLOADING)
TrackElementHasInternalSourceMethodInfo ,
#endif
trackElementHasInternalSource ,
#if defined(ENABLE_OVERLOADING)
TrackElementIsActiveMethodInfo ,
#endif
trackElementIsActive ,
#if defined(ENABLE_OVERLOADING)
TrackElementIsCoreMethodInfo ,
#endif
trackElementIsCore ,
#if defined(ENABLE_OVERLOADING)
TrackElementLookupChildMethodInfo ,
#endif
trackElementLookupChild ,
#if defined(ENABLE_OVERLOADING)
TrackElementRemoveControlBindingMethodInfo,
#endif
trackElementRemoveControlBinding ,
#if defined(ENABLE_OVERLOADING)
TrackElementSetActiveMethodInfo ,
#endif
trackElementSetActive ,
#if defined(ENABLE_OVERLOADING)
TrackElementSetAutoClampControlSourcesMethodInfo,
#endif
trackElementSetAutoClampControlSources ,
#if defined(ENABLE_OVERLOADING)
TrackElementSetControlSourceMethodInfo ,
#endif
trackElementSetControlSource ,
#if defined(ENABLE_OVERLOADING)
TrackElementSetHasInternalSourceMethodInfo,
#endif
trackElementSetHasInternalSource ,
#if defined(ENABLE_OVERLOADING)
TrackElementSetTrackTypeMethodInfo ,
#endif
trackElementSetTrackType ,
#if defined(ENABLE_OVERLOADING)
TrackElementActivePropertyInfo ,
#endif
constructTrackElementActive ,
getTrackElementActive ,
setTrackElementActive ,
#if defined(ENABLE_OVERLOADING)
trackElementActive ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackElementAutoClampControlSourcesPropertyInfo,
#endif
constructTrackElementAutoClampControlSources,
getTrackElementAutoClampControlSources ,
setTrackElementAutoClampControlSources ,
#if defined(ENABLE_OVERLOADING)
trackElementAutoClampControlSources ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackElementHasInternalSourcePropertyInfo,
#endif
constructTrackElementHasInternalSource ,
getTrackElementHasInternalSource ,
setTrackElementHasInternalSource ,
#if defined(ENABLE_OVERLOADING)
TrackElementTrackPropertyInfo ,
#endif
getTrackElementTrack ,
#if defined(ENABLE_OVERLOADING)
trackElementTrack ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackElementTrackTypePropertyInfo ,
#endif
constructTrackElementTrackType ,
getTrackElementTrackType ,
setTrackElementTrackType ,
#if defined(ENABLE_OVERLOADING)
trackElementTrackType ,
#endif
TrackElementControlBindingAddedCallback ,
#if defined(ENABLE_OVERLOADING)
TrackElementControlBindingAddedSignalInfo,
#endif
afterTrackElementControlBindingAdded ,
onTrackElementControlBindingAdded ,
TrackElementControlBindingRemovedCallback,
#if defined(ENABLE_OVERLOADING)
TrackElementControlBindingRemovedSignalInfo,
#endif
afterTrackElementControlBindingRemoved ,
onTrackElementControlBindingRemoved ,
) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
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 GHC.Records as R
import {-# SOURCE #-} qualified GI.GES.Enums as GES.Enums
import {-# SOURCE #-} qualified GI.GES.Flags as GES.Flags
import {-# SOURCE #-} qualified GI.GES.Interfaces.Extractable as GES.Extractable
import {-# SOURCE #-} qualified GI.GES.Interfaces.MetaContainer as GES.MetaContainer
import {-# SOURCE #-} qualified GI.GES.Objects.Layer as GES.Layer
import {-# SOURCE #-} qualified GI.GES.Objects.TimelineElement as GES.TimelineElement
import {-# SOURCE #-} qualified GI.GES.Objects.Track as GES.Track
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Objects.ControlBinding as Gst.ControlBinding
import qualified GI.Gst.Objects.ControlSource as Gst.ControlSource
import qualified GI.Gst.Objects.Element as Gst.Element
newtype TrackElement = TrackElement (SP.ManagedPtr TrackElement)
deriving (TrackElement -> TrackElement -> Bool
(TrackElement -> TrackElement -> Bool)
-> (TrackElement -> TrackElement -> Bool) -> Eq TrackElement
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TrackElement -> TrackElement -> Bool
== :: TrackElement -> TrackElement -> Bool
$c/= :: TrackElement -> TrackElement -> Bool
/= :: TrackElement -> TrackElement -> Bool
Eq)
instance SP.ManagedPtrNewtype TrackElement where
toManagedPtr :: TrackElement -> ManagedPtr TrackElement
toManagedPtr (TrackElement ManagedPtr TrackElement
p) = ManagedPtr TrackElement
p
foreign import ccall "ges_track_element_get_type"
c_ges_track_element_get_type :: IO B.Types.GType
instance B.Types.TypedObject TrackElement where
glibType :: IO GType
glibType = IO GType
c_ges_track_element_get_type
instance B.Types.GObject TrackElement
class (SP.GObject o, O.IsDescendantOf TrackElement o) => IsTrackElement o
instance (SP.GObject o, O.IsDescendantOf TrackElement o) => IsTrackElement o
instance O.HasParentTypes TrackElement
type instance O.ParentTypes TrackElement = '[GES.TimelineElement.TimelineElement, GObject.Object.Object, GES.Extractable.Extractable, GES.MetaContainer.MetaContainer]
toTrackElement :: (MIO.MonadIO m, IsTrackElement o) => o -> m TrackElement
toTrackElement :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m TrackElement
toTrackElement = IO TrackElement -> m TrackElement
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO TrackElement -> m TrackElement)
-> (o -> IO TrackElement) -> o -> m TrackElement
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr TrackElement -> TrackElement) -> o -> IO TrackElement
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr TrackElement -> TrackElement
TrackElement
instance B.GValue.IsGValue (Maybe TrackElement) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ges_track_element_get_type
gvalueSet_ :: Ptr GValue -> Maybe TrackElement -> IO ()
gvalueSet_ Ptr GValue
gv Maybe TrackElement
P.Nothing = Ptr GValue -> Ptr TrackElement -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr TrackElement
forall a. Ptr a
FP.nullPtr :: FP.Ptr TrackElement)
gvalueSet_ Ptr GValue
gv (P.Just TrackElement
obj) = TrackElement -> (Ptr TrackElement -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr TrackElement
obj (Ptr GValue -> Ptr TrackElement -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe TrackElement)
gvalueGet_ Ptr GValue
gv = do
Ptr TrackElement
ptr <- Ptr GValue -> IO (Ptr TrackElement)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr TrackElement)
if Ptr TrackElement
ptr Ptr TrackElement -> Ptr TrackElement -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr TrackElement
forall a. Ptr a
FP.nullPtr
then TrackElement -> Maybe TrackElement
forall a. a -> Maybe a
P.Just (TrackElement -> Maybe TrackElement)
-> IO TrackElement -> IO (Maybe TrackElement)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr TrackElement -> TrackElement)
-> Ptr TrackElement -> IO TrackElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr TrackElement -> TrackElement
TrackElement Ptr TrackElement
ptr
else Maybe TrackElement -> IO (Maybe TrackElement)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe TrackElement
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveTrackElementMethod (t :: Symbol) (o :: *) :: * where
ResolveTrackElementMethod "addChildProperty" o = GES.TimelineElement.TimelineElementAddChildPropertyMethodInfo
ResolveTrackElementMethod "addChildrenProps" o = TrackElementAddChildrenPropsMethodInfo
ResolveTrackElementMethod "addMetasFromString" o = GES.MetaContainer.MetaContainerAddMetasFromStringMethodInfo
ResolveTrackElementMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveTrackElementMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveTrackElementMethod "checkMetaRegistered" o = GES.MetaContainer.MetaContainerCheckMetaRegisteredMethodInfo
ResolveTrackElementMethod "clampControlSource" o = TrackElementClampControlSourceMethodInfo
ResolveTrackElementMethod "copy" o = GES.TimelineElement.TimelineElementCopyMethodInfo
ResolveTrackElementMethod "edit" o = TrackElementEditMethodInfo
ResolveTrackElementMethod "editFull" o = GES.TimelineElement.TimelineElementEditFullMethodInfo
ResolveTrackElementMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveTrackElementMethod "foreach" o = GES.MetaContainer.MetaContainerForeachMethodInfo
ResolveTrackElementMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveTrackElementMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveTrackElementMethod "hasInternalSource" o = TrackElementHasInternalSourceMethodInfo
ResolveTrackElementMethod "isActive" o = TrackElementIsActiveMethodInfo
ResolveTrackElementMethod "isCore" o = TrackElementIsCoreMethodInfo
ResolveTrackElementMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveTrackElementMethod "listChildrenProperties" o = TrackElementListChildrenPropertiesMethodInfo
ResolveTrackElementMethod "lookupChild" o = TrackElementLookupChildMethodInfo
ResolveTrackElementMethod "metasToString" o = GES.MetaContainer.MetaContainerMetasToStringMethodInfo
ResolveTrackElementMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveTrackElementMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveTrackElementMethod "paste" o = GES.TimelineElement.TimelineElementPasteMethodInfo
ResolveTrackElementMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveTrackElementMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveTrackElementMethod "registerMeta" o = GES.MetaContainer.MetaContainerRegisterMetaMethodInfo
ResolveTrackElementMethod "registerMetaBoolean" o = GES.MetaContainer.MetaContainerRegisterMetaBooleanMethodInfo
ResolveTrackElementMethod "registerMetaDate" o = GES.MetaContainer.MetaContainerRegisterMetaDateMethodInfo
ResolveTrackElementMethod "registerMetaDateTime" o = GES.MetaContainer.MetaContainerRegisterMetaDateTimeMethodInfo
ResolveTrackElementMethod "registerMetaDouble" o = GES.MetaContainer.MetaContainerRegisterMetaDoubleMethodInfo
ResolveTrackElementMethod "registerMetaFloat" o = GES.MetaContainer.MetaContainerRegisterMetaFloatMethodInfo
ResolveTrackElementMethod "registerMetaInt" o = GES.MetaContainer.MetaContainerRegisterMetaIntMethodInfo
ResolveTrackElementMethod "registerMetaInt64" o = GES.MetaContainer.MetaContainerRegisterMetaInt64MethodInfo
ResolveTrackElementMethod "registerMetaString" o = GES.MetaContainer.MetaContainerRegisterMetaStringMethodInfo
ResolveTrackElementMethod "registerMetaUint" o = GES.MetaContainer.MetaContainerRegisterMetaUintMethodInfo
ResolveTrackElementMethod "registerMetaUint64" o = GES.MetaContainer.MetaContainerRegisterMetaUint64MethodInfo
ResolveTrackElementMethod "registerStaticMeta" o = GES.MetaContainer.MetaContainerRegisterStaticMetaMethodInfo
ResolveTrackElementMethod "removeChildProperty" o = GES.TimelineElement.TimelineElementRemoveChildPropertyMethodInfo
ResolveTrackElementMethod "removeControlBinding" o = TrackElementRemoveControlBindingMethodInfo
ResolveTrackElementMethod "ripple" o = GES.TimelineElement.TimelineElementRippleMethodInfo
ResolveTrackElementMethod "rippleEnd" o = GES.TimelineElement.TimelineElementRippleEndMethodInfo
ResolveTrackElementMethod "rollEnd" o = GES.TimelineElement.TimelineElementRollEndMethodInfo
ResolveTrackElementMethod "rollStart" o = GES.TimelineElement.TimelineElementRollStartMethodInfo
ResolveTrackElementMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveTrackElementMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveTrackElementMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveTrackElementMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveTrackElementMethod "trim" o = GES.TimelineElement.TimelineElementTrimMethodInfo
ResolveTrackElementMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveTrackElementMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveTrackElementMethod "getAllControlBindings" o = TrackElementGetAllControlBindingsMethodInfo
ResolveTrackElementMethod "getAsset" o = GES.Extractable.ExtractableGetAssetMethodInfo
ResolveTrackElementMethod "getAutoClampControlSources" o = TrackElementGetAutoClampControlSourcesMethodInfo
ResolveTrackElementMethod "getBoolean" o = GES.MetaContainer.MetaContainerGetBooleanMethodInfo
ResolveTrackElementMethod "getChildProperty" o = GES.TimelineElement.TimelineElementGetChildPropertyMethodInfo
ResolveTrackElementMethod "getChildPropertyByPspec" o = GES.TimelineElement.TimelineElementGetChildPropertyByPspecMethodInfo
ResolveTrackElementMethod "getControlBinding" o = TrackElementGetControlBindingMethodInfo
ResolveTrackElementMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveTrackElementMethod "getDate" o = GES.MetaContainer.MetaContainerGetDateMethodInfo
ResolveTrackElementMethod "getDateTime" o = GES.MetaContainer.MetaContainerGetDateTimeMethodInfo
ResolveTrackElementMethod "getDouble" o = GES.MetaContainer.MetaContainerGetDoubleMethodInfo
ResolveTrackElementMethod "getDuration" o = GES.TimelineElement.TimelineElementGetDurationMethodInfo
ResolveTrackElementMethod "getElement" o = TrackElementGetElementMethodInfo
ResolveTrackElementMethod "getFloat" o = GES.MetaContainer.MetaContainerGetFloatMethodInfo
ResolveTrackElementMethod "getGnlobject" o = TrackElementGetGnlobjectMethodInfo
ResolveTrackElementMethod "getId" o = GES.Extractable.ExtractableGetIdMethodInfo
ResolveTrackElementMethod "getInpoint" o = GES.TimelineElement.TimelineElementGetInpointMethodInfo
ResolveTrackElementMethod "getInt" o = GES.MetaContainer.MetaContainerGetIntMethodInfo
ResolveTrackElementMethod "getInt64" o = GES.MetaContainer.MetaContainerGetInt64MethodInfo
ResolveTrackElementMethod "getLayerPriority" o = GES.TimelineElement.TimelineElementGetLayerPriorityMethodInfo
ResolveTrackElementMethod "getMarkerList" o = GES.MetaContainer.MetaContainerGetMarkerListMethodInfo
ResolveTrackElementMethod "getMaxDuration" o = GES.TimelineElement.TimelineElementGetMaxDurationMethodInfo
ResolveTrackElementMethod "getMeta" o = GES.MetaContainer.MetaContainerGetMetaMethodInfo
ResolveTrackElementMethod "getName" o = GES.TimelineElement.TimelineElementGetNameMethodInfo
ResolveTrackElementMethod "getNaturalFramerate" o = GES.TimelineElement.TimelineElementGetNaturalFramerateMethodInfo
ResolveTrackElementMethod "getNleobject" o = TrackElementGetNleobjectMethodInfo
ResolveTrackElementMethod "getParent" o = GES.TimelineElement.TimelineElementGetParentMethodInfo
ResolveTrackElementMethod "getPriority" o = GES.TimelineElement.TimelineElementGetPriorityMethodInfo
ResolveTrackElementMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveTrackElementMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveTrackElementMethod "getStart" o = GES.TimelineElement.TimelineElementGetStartMethodInfo
ResolveTrackElementMethod "getString" o = GES.MetaContainer.MetaContainerGetStringMethodInfo
ResolveTrackElementMethod "getTimeline" o = GES.TimelineElement.TimelineElementGetTimelineMethodInfo
ResolveTrackElementMethod "getToplevelParent" o = GES.TimelineElement.TimelineElementGetToplevelParentMethodInfo
ResolveTrackElementMethod "getTrack" o = TrackElementGetTrackMethodInfo
ResolveTrackElementMethod "getTrackType" o = TrackElementGetTrackTypeMethodInfo
ResolveTrackElementMethod "getTrackTypes" o = GES.TimelineElement.TimelineElementGetTrackTypesMethodInfo
ResolveTrackElementMethod "getUint" o = GES.MetaContainer.MetaContainerGetUintMethodInfo
ResolveTrackElementMethod "getUint64" o = GES.MetaContainer.MetaContainerGetUint64MethodInfo
ResolveTrackElementMethod "setActive" o = TrackElementSetActiveMethodInfo
ResolveTrackElementMethod "setAsset" o = GES.Extractable.ExtractableSetAssetMethodInfo
ResolveTrackElementMethod "setAutoClampControlSources" o = TrackElementSetAutoClampControlSourcesMethodInfo
ResolveTrackElementMethod "setBoolean" o = GES.MetaContainer.MetaContainerSetBooleanMethodInfo
ResolveTrackElementMethod "setChildProperty" o = GES.TimelineElement.TimelineElementSetChildPropertyMethodInfo
ResolveTrackElementMethod "setChildPropertyByPspec" o = GES.TimelineElement.TimelineElementSetChildPropertyByPspecMethodInfo
ResolveTrackElementMethod "setChildPropertyFull" o = GES.TimelineElement.TimelineElementSetChildPropertyFullMethodInfo
ResolveTrackElementMethod "setControlSource" o = TrackElementSetControlSourceMethodInfo
ResolveTrackElementMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveTrackElementMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveTrackElementMethod "setDate" o = GES.MetaContainer.MetaContainerSetDateMethodInfo
ResolveTrackElementMethod "setDateTime" o = GES.MetaContainer.MetaContainerSetDateTimeMethodInfo
ResolveTrackElementMethod "setDouble" o = GES.MetaContainer.MetaContainerSetDoubleMethodInfo
ResolveTrackElementMethod "setDuration" o = GES.TimelineElement.TimelineElementSetDurationMethodInfo
ResolveTrackElementMethod "setFloat" o = GES.MetaContainer.MetaContainerSetFloatMethodInfo
ResolveTrackElementMethod "setHasInternalSource" o = TrackElementSetHasInternalSourceMethodInfo
ResolveTrackElementMethod "setInpoint" o = GES.TimelineElement.TimelineElementSetInpointMethodInfo
ResolveTrackElementMethod "setInt" o = GES.MetaContainer.MetaContainerSetIntMethodInfo
ResolveTrackElementMethod "setInt64" o = GES.MetaContainer.MetaContainerSetInt64MethodInfo
ResolveTrackElementMethod "setMarkerList" o = GES.MetaContainer.MetaContainerSetMarkerListMethodInfo
ResolveTrackElementMethod "setMaxDuration" o = GES.TimelineElement.TimelineElementSetMaxDurationMethodInfo
ResolveTrackElementMethod "setMeta" o = GES.MetaContainer.MetaContainerSetMetaMethodInfo
ResolveTrackElementMethod "setName" o = GES.TimelineElement.TimelineElementSetNameMethodInfo
ResolveTrackElementMethod "setParent" o = GES.TimelineElement.TimelineElementSetParentMethodInfo
ResolveTrackElementMethod "setPriority" o = GES.TimelineElement.TimelineElementSetPriorityMethodInfo
ResolveTrackElementMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveTrackElementMethod "setStart" o = GES.TimelineElement.TimelineElementSetStartMethodInfo
ResolveTrackElementMethod "setString" o = GES.MetaContainer.MetaContainerSetStringMethodInfo
ResolveTrackElementMethod "setTimeline" o = GES.TimelineElement.TimelineElementSetTimelineMethodInfo
ResolveTrackElementMethod "setTrackType" o = TrackElementSetTrackTypeMethodInfo
ResolveTrackElementMethod "setUint" o = GES.MetaContainer.MetaContainerSetUintMethodInfo
ResolveTrackElementMethod "setUint64" o = GES.MetaContainer.MetaContainerSetUint64MethodInfo
ResolveTrackElementMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveTrackElementMethod t TrackElement, O.OverloadedMethod info TrackElement p) => OL.IsLabel t (TrackElement -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveTrackElementMethod t TrackElement, O.OverloadedMethod info TrackElement p, R.HasField t TrackElement p) => R.HasField t TrackElement p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveTrackElementMethod t TrackElement, O.OverloadedMethodInfo info TrackElement) => OL.IsLabel t (O.MethodProxy info TrackElement) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type TrackElementControlBindingAddedCallback =
Gst.ControlBinding.ControlBinding
-> IO ()
type C_TrackElementControlBindingAddedCallback =
Ptr TrackElement ->
Ptr Gst.ControlBinding.ControlBinding ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_TrackElementControlBindingAddedCallback :: C_TrackElementControlBindingAddedCallback -> IO (FunPtr C_TrackElementControlBindingAddedCallback)
wrap_TrackElementControlBindingAddedCallback ::
GObject a => (a -> TrackElementControlBindingAddedCallback) ->
C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingAddedCallback :: forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingAddedCallback a -> TrackElementControlBindingAddedCallback
gi'cb Ptr TrackElement
gi'selfPtr Ptr ControlBinding
controlBinding Ptr ()
_ = do
ControlBinding
controlBinding' <- ((ManagedPtr ControlBinding -> ControlBinding)
-> Ptr ControlBinding -> IO ControlBinding
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ControlBinding -> ControlBinding
Gst.ControlBinding.ControlBinding) Ptr ControlBinding
controlBinding
Ptr TrackElement -> (TrackElement -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr TrackElement
gi'selfPtr ((TrackElement -> IO ()) -> IO ())
-> (TrackElement -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \TrackElement
gi'self -> a -> TrackElementControlBindingAddedCallback
gi'cb (TrackElement -> a
forall a b. Coercible a b => a -> b
Coerce.coerce TrackElement
gi'self) ControlBinding
controlBinding'
onTrackElementControlBindingAdded :: (IsTrackElement a, MonadIO m) => a -> ((?self :: a) => TrackElementControlBindingAddedCallback) -> m SignalHandlerId
onTrackElementControlBindingAdded :: forall a (m :: * -> *).
(IsTrackElement a, MonadIO m) =>
a
-> ((?self::a) => TrackElementControlBindingAddedCallback)
-> m SignalHandlerId
onTrackElementControlBindingAdded a
obj (?self::a) => TrackElementControlBindingAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackElementControlBindingAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => TrackElementControlBindingAddedCallback
TrackElementControlBindingAddedCallback
cb
let wrapped' :: C_TrackElementControlBindingAddedCallback
wrapped' = (a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingAddedCallback a -> TrackElementControlBindingAddedCallback
wrapped
FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' <- C_TrackElementControlBindingAddedCallback
-> IO (FunPtr C_TrackElementControlBindingAddedCallback)
mk_TrackElementControlBindingAddedCallback C_TrackElementControlBindingAddedCallback
wrapped'
a
-> Text
-> FunPtr C_TrackElementControlBindingAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"control-binding-added" FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterTrackElementControlBindingAdded :: (IsTrackElement a, MonadIO m) => a -> ((?self :: a) => TrackElementControlBindingAddedCallback) -> m SignalHandlerId
afterTrackElementControlBindingAdded :: forall a (m :: * -> *).
(IsTrackElement a, MonadIO m) =>
a
-> ((?self::a) => TrackElementControlBindingAddedCallback)
-> m SignalHandlerId
afterTrackElementControlBindingAdded a
obj (?self::a) => TrackElementControlBindingAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackElementControlBindingAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => TrackElementControlBindingAddedCallback
TrackElementControlBindingAddedCallback
cb
let wrapped' :: C_TrackElementControlBindingAddedCallback
wrapped' = (a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingAddedCallback a -> TrackElementControlBindingAddedCallback
wrapped
FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' <- C_TrackElementControlBindingAddedCallback
-> IO (FunPtr C_TrackElementControlBindingAddedCallback)
mk_TrackElementControlBindingAddedCallback C_TrackElementControlBindingAddedCallback
wrapped'
a
-> Text
-> FunPtr C_TrackElementControlBindingAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"control-binding-added" FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data TrackElementControlBindingAddedSignalInfo
instance SignalInfo TrackElementControlBindingAddedSignalInfo where
type HaskellCallbackType TrackElementControlBindingAddedSignalInfo = TrackElementControlBindingAddedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_TrackElementControlBindingAddedCallback cb
cb'' <- mk_TrackElementControlBindingAddedCallback cb'
connectSignalFunPtr obj "control-binding-added" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement::control-binding-added"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:signal:controlBindingAdded"})
#endif
type TrackElementControlBindingRemovedCallback =
Gst.ControlBinding.ControlBinding
-> IO ()
type C_TrackElementControlBindingRemovedCallback =
Ptr TrackElement ->
Ptr Gst.ControlBinding.ControlBinding ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_TrackElementControlBindingRemovedCallback :: C_TrackElementControlBindingRemovedCallback -> IO (FunPtr C_TrackElementControlBindingRemovedCallback)
wrap_TrackElementControlBindingRemovedCallback ::
GObject a => (a -> TrackElementControlBindingRemovedCallback) ->
C_TrackElementControlBindingRemovedCallback
wrap_TrackElementControlBindingRemovedCallback :: forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingRemovedCallback a -> TrackElementControlBindingAddedCallback
gi'cb Ptr TrackElement
gi'selfPtr Ptr ControlBinding
controlBinding Ptr ()
_ = do
ControlBinding
controlBinding' <- ((ManagedPtr ControlBinding -> ControlBinding)
-> Ptr ControlBinding -> IO ControlBinding
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ControlBinding -> ControlBinding
Gst.ControlBinding.ControlBinding) Ptr ControlBinding
controlBinding
Ptr TrackElement -> (TrackElement -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr TrackElement
gi'selfPtr ((TrackElement -> IO ()) -> IO ())
-> (TrackElement -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \TrackElement
gi'self -> a -> TrackElementControlBindingAddedCallback
gi'cb (TrackElement -> a
forall a b. Coercible a b => a -> b
Coerce.coerce TrackElement
gi'self) ControlBinding
controlBinding'
onTrackElementControlBindingRemoved :: (IsTrackElement a, MonadIO m) => a -> ((?self :: a) => TrackElementControlBindingRemovedCallback) -> m SignalHandlerId
onTrackElementControlBindingRemoved :: forall a (m :: * -> *).
(IsTrackElement a, MonadIO m) =>
a
-> ((?self::a) => TrackElementControlBindingAddedCallback)
-> m SignalHandlerId
onTrackElementControlBindingRemoved a
obj (?self::a) => TrackElementControlBindingAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackElementControlBindingAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => TrackElementControlBindingAddedCallback
TrackElementControlBindingAddedCallback
cb
let wrapped' :: C_TrackElementControlBindingAddedCallback
wrapped' = (a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingRemovedCallback a -> TrackElementControlBindingAddedCallback
wrapped
FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' <- C_TrackElementControlBindingAddedCallback
-> IO (FunPtr C_TrackElementControlBindingAddedCallback)
mk_TrackElementControlBindingRemovedCallback C_TrackElementControlBindingAddedCallback
wrapped'
a
-> Text
-> FunPtr C_TrackElementControlBindingAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"control-binding-removed" FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterTrackElementControlBindingRemoved :: (IsTrackElement a, MonadIO m) => a -> ((?self :: a) => TrackElementControlBindingRemovedCallback) -> m SignalHandlerId
afterTrackElementControlBindingRemoved :: forall a (m :: * -> *).
(IsTrackElement a, MonadIO m) =>
a
-> ((?self::a) => TrackElementControlBindingAddedCallback)
-> m SignalHandlerId
afterTrackElementControlBindingRemoved a
obj (?self::a) => TrackElementControlBindingAddedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackElementControlBindingAddedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => TrackElementControlBindingAddedCallback
TrackElementControlBindingAddedCallback
cb
let wrapped' :: C_TrackElementControlBindingAddedCallback
wrapped' = (a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
forall a.
GObject a =>
(a -> TrackElementControlBindingAddedCallback)
-> C_TrackElementControlBindingAddedCallback
wrap_TrackElementControlBindingRemovedCallback a -> TrackElementControlBindingAddedCallback
wrapped
FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' <- C_TrackElementControlBindingAddedCallback
-> IO (FunPtr C_TrackElementControlBindingAddedCallback)
mk_TrackElementControlBindingRemovedCallback C_TrackElementControlBindingAddedCallback
wrapped'
a
-> Text
-> FunPtr C_TrackElementControlBindingAddedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"control-binding-removed" FunPtr C_TrackElementControlBindingAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data TrackElementControlBindingRemovedSignalInfo
instance SignalInfo TrackElementControlBindingRemovedSignalInfo where
type HaskellCallbackType TrackElementControlBindingRemovedSignalInfo = TrackElementControlBindingRemovedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_TrackElementControlBindingRemovedCallback cb
cb'' <- mk_TrackElementControlBindingRemovedCallback cb'
connectSignalFunPtr obj "control-binding-removed" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement::control-binding-removed"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:signal:controlBindingRemoved"})
#endif
getTrackElementActive :: (MonadIO m, IsTrackElement o) => o -> m Bool
getTrackElementActive :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m Bool
getTrackElementActive o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"active"
setTrackElementActive :: (MonadIO m, IsTrackElement o) => o -> Bool -> m ()
setTrackElementActive :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> Bool -> m ()
setTrackElementActive o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"active" Bool
val
constructTrackElementActive :: (IsTrackElement o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructTrackElementActive :: forall o (m :: * -> *).
(IsTrackElement o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructTrackElementActive Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"active" Bool
val
#if defined(ENABLE_OVERLOADING)
data TrackElementActivePropertyInfo
instance AttrInfo TrackElementActivePropertyInfo where
type AttrAllowedOps TrackElementActivePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackElementActivePropertyInfo = IsTrackElement
type AttrSetTypeConstraint TrackElementActivePropertyInfo = (~) Bool
type AttrTransferTypeConstraint TrackElementActivePropertyInfo = (~) Bool
type AttrTransferType TrackElementActivePropertyInfo = Bool
type AttrGetType TrackElementActivePropertyInfo = Bool
type AttrLabel TrackElementActivePropertyInfo = "active"
type AttrOrigin TrackElementActivePropertyInfo = TrackElement
attrGet = getTrackElementActive
attrSet = setTrackElementActive
attrTransfer _ v = do
return v
attrConstruct = constructTrackElementActive
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.active"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:attr:active"
})
#endif
getTrackElementAutoClampControlSources :: (MonadIO m, IsTrackElement o) => o -> m Bool
getTrackElementAutoClampControlSources :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m Bool
getTrackElementAutoClampControlSources o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"auto-clamp-control-sources"
setTrackElementAutoClampControlSources :: (MonadIO m, IsTrackElement o) => o -> Bool -> m ()
setTrackElementAutoClampControlSources :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> Bool -> m ()
setTrackElementAutoClampControlSources o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"auto-clamp-control-sources" Bool
val
constructTrackElementAutoClampControlSources :: (IsTrackElement o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructTrackElementAutoClampControlSources :: forall o (m :: * -> *).
(IsTrackElement o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructTrackElementAutoClampControlSources Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"auto-clamp-control-sources" Bool
val
#if defined(ENABLE_OVERLOADING)
data TrackElementAutoClampControlSourcesPropertyInfo
instance AttrInfo TrackElementAutoClampControlSourcesPropertyInfo where
type AttrAllowedOps TrackElementAutoClampControlSourcesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackElementAutoClampControlSourcesPropertyInfo = IsTrackElement
type AttrSetTypeConstraint TrackElementAutoClampControlSourcesPropertyInfo = (~) Bool
type AttrTransferTypeConstraint TrackElementAutoClampControlSourcesPropertyInfo = (~) Bool
type AttrTransferType TrackElementAutoClampControlSourcesPropertyInfo = Bool
type AttrGetType TrackElementAutoClampControlSourcesPropertyInfo = Bool
type AttrLabel TrackElementAutoClampControlSourcesPropertyInfo = "auto-clamp-control-sources"
type AttrOrigin TrackElementAutoClampControlSourcesPropertyInfo = TrackElement
attrGet = getTrackElementAutoClampControlSources
attrSet = setTrackElementAutoClampControlSources
attrTransfer _ v = do
return v
attrConstruct = constructTrackElementAutoClampControlSources
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.autoClampControlSources"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:attr:autoClampControlSources"
})
#endif
getTrackElementHasInternalSource :: (MonadIO m, IsTrackElement o) => o -> m Bool
getTrackElementHasInternalSource :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m Bool
getTrackElementHasInternalSource o
obj = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"has-internal-source"
setTrackElementHasInternalSource :: (MonadIO m, IsTrackElement o) => o -> Bool -> m ()
setTrackElementHasInternalSource :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> Bool -> m ()
setTrackElementHasInternalSource o
obj Bool
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"has-internal-source" Bool
val
constructTrackElementHasInternalSource :: (IsTrackElement o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructTrackElementHasInternalSource :: forall o (m :: * -> *).
(IsTrackElement o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructTrackElementHasInternalSource Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"has-internal-source" Bool
val
#if defined(ENABLE_OVERLOADING)
data TrackElementHasInternalSourcePropertyInfo
instance AttrInfo TrackElementHasInternalSourcePropertyInfo where
type AttrAllowedOps TrackElementHasInternalSourcePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackElementHasInternalSourcePropertyInfo = IsTrackElement
type AttrSetTypeConstraint TrackElementHasInternalSourcePropertyInfo = (~) Bool
type AttrTransferTypeConstraint TrackElementHasInternalSourcePropertyInfo = (~) Bool
type AttrTransferType TrackElementHasInternalSourcePropertyInfo = Bool
type AttrGetType TrackElementHasInternalSourcePropertyInfo = Bool
type AttrLabel TrackElementHasInternalSourcePropertyInfo = "has-internal-source"
type AttrOrigin TrackElementHasInternalSourcePropertyInfo = TrackElement
attrGet = getTrackElementHasInternalSource
attrSet = setTrackElementHasInternalSource
attrTransfer _ v = do
return v
attrConstruct = constructTrackElementHasInternalSource
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.hasInternalSource"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:attr:hasInternalSource"
})
#endif
getTrackElementTrack :: (MonadIO m, IsTrackElement o) => o -> m (Maybe GES.Track.Track)
getTrackElementTrack :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m (Maybe Track)
getTrackElementTrack o
obj = IO (Maybe Track) -> m (Maybe Track)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Track) -> m (Maybe Track))
-> IO (Maybe Track) -> m (Maybe Track)
forall a b. (a -> b) -> a -> b
$ o -> String -> (ManagedPtr Track -> Track) -> IO (Maybe Track)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"track" ManagedPtr Track -> Track
GES.Track.Track
#if defined(ENABLE_OVERLOADING)
data TrackElementTrackPropertyInfo
instance AttrInfo TrackElementTrackPropertyInfo where
type AttrAllowedOps TrackElementTrackPropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint TrackElementTrackPropertyInfo = IsTrackElement
type AttrSetTypeConstraint TrackElementTrackPropertyInfo = (~) ()
type AttrTransferTypeConstraint TrackElementTrackPropertyInfo = (~) ()
type AttrTransferType TrackElementTrackPropertyInfo = ()
type AttrGetType TrackElementTrackPropertyInfo = (Maybe GES.Track.Track)
type AttrLabel TrackElementTrackPropertyInfo = "track"
type AttrOrigin TrackElementTrackPropertyInfo = TrackElement
attrGet = getTrackElementTrack
attrSet = undefined
attrTransfer _ = undefined
attrConstruct = undefined
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.track"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:attr:track"
})
#endif
getTrackElementTrackType :: (MonadIO m, IsTrackElement o) => o -> m [GES.Flags.TrackType]
getTrackElementTrackType :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> m [TrackType]
getTrackElementTrackType o
obj = IO [TrackType] -> m [TrackType]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO [TrackType] -> m [TrackType])
-> IO [TrackType] -> m [TrackType]
forall a b. (a -> b) -> a -> b
$ o -> String -> IO [TrackType]
forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"track-type"
setTrackElementTrackType :: (MonadIO m, IsTrackElement o) => o -> [GES.Flags.TrackType] -> m ()
setTrackElementTrackType :: forall (m :: * -> *) o.
(MonadIO m, IsTrackElement o) =>
o -> [TrackType] -> m ()
setTrackElementTrackType o
obj [TrackType]
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> [TrackType] -> IO ()
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"track-type" [TrackType]
val
constructTrackElementTrackType :: (IsTrackElement o, MIO.MonadIO m) => [GES.Flags.TrackType] -> m (GValueConstruct o)
constructTrackElementTrackType :: forall o (m :: * -> *).
(IsTrackElement o, MonadIO m) =>
[TrackType] -> m (GValueConstruct o)
constructTrackElementTrackType [TrackType]
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> [TrackType] -> IO (GValueConstruct o)
forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"track-type" [TrackType]
val
#if defined(ENABLE_OVERLOADING)
data TrackElementTrackTypePropertyInfo
instance AttrInfo TrackElementTrackTypePropertyInfo where
type AttrAllowedOps TrackElementTrackTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackElementTrackTypePropertyInfo = IsTrackElement
type AttrSetTypeConstraint TrackElementTrackTypePropertyInfo = (~) [GES.Flags.TrackType]
type AttrTransferTypeConstraint TrackElementTrackTypePropertyInfo = (~) [GES.Flags.TrackType]
type AttrTransferType TrackElementTrackTypePropertyInfo = [GES.Flags.TrackType]
type AttrGetType TrackElementTrackTypePropertyInfo = [GES.Flags.TrackType]
type AttrLabel TrackElementTrackTypePropertyInfo = "track-type"
type AttrOrigin TrackElementTrackTypePropertyInfo = TrackElement
attrGet = getTrackElementTrackType
attrSet = setTrackElementTrackType
attrTransfer _ v = do
return v
attrConstruct = constructTrackElementTrackType
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackType"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#g:attr:trackType"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList TrackElement
type instance O.AttributeList TrackElement = TrackElementAttributeList
type TrackElementAttributeList = ('[ '("active", TrackElementActivePropertyInfo), '("autoClampControlSources", TrackElementAutoClampControlSourcesPropertyInfo), '("duration", GES.TimelineElement.TimelineElementDurationPropertyInfo), '("hasInternalSource", TrackElementHasInternalSourcePropertyInfo), '("inPoint", GES.TimelineElement.TimelineElementInPointPropertyInfo), '("maxDuration", GES.TimelineElement.TimelineElementMaxDurationPropertyInfo), '("name", GES.TimelineElement.TimelineElementNamePropertyInfo), '("parent", GES.TimelineElement.TimelineElementParentPropertyInfo), '("priority", GES.TimelineElement.TimelineElementPriorityPropertyInfo), '("serialize", GES.TimelineElement.TimelineElementSerializePropertyInfo), '("start", GES.TimelineElement.TimelineElementStartPropertyInfo), '("timeline", GES.TimelineElement.TimelineElementTimelinePropertyInfo), '("track", TrackElementTrackPropertyInfo), '("trackType", TrackElementTrackTypePropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
trackElementActive :: AttrLabelProxy "active"
trackElementActive = AttrLabelProxy
trackElementAutoClampControlSources :: AttrLabelProxy "autoClampControlSources"
trackElementAutoClampControlSources = AttrLabelProxy
trackElementTrack :: AttrLabelProxy "track"
trackElementTrack = AttrLabelProxy
trackElementTrackType :: AttrLabelProxy "trackType"
trackElementTrackType = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList TrackElement = TrackElementSignalList
type TrackElementSignalList = ('[ '("childPropertyAdded", GES.TimelineElement.TimelineElementChildPropertyAddedSignalInfo), '("childPropertyRemoved", GES.TimelineElement.TimelineElementChildPropertyRemovedSignalInfo), '("controlBindingAdded", TrackElementControlBindingAddedSignalInfo), '("controlBindingRemoved", TrackElementControlBindingRemovedSignalInfo), '("deepNotify", GES.TimelineElement.TimelineElementDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("notifyMeta", GES.MetaContainer.MetaContainerNotifyMetaSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "ges_track_element_add_children_props" ges_track_element_add_children_props ::
Ptr TrackElement ->
Ptr Gst.Element.Element ->
Ptr CString ->
Ptr CString ->
Ptr CString ->
IO ()
trackElementAddChildrenProps ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a, Gst.Element.IsElement b) =>
a
-> b
-> Maybe ([T.Text])
-> Maybe ([T.Text])
-> Maybe ([T.Text])
-> m ()
trackElementAddChildrenProps :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrackElement a, IsElement b) =>
a -> b -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> m ()
trackElementAddChildrenProps a
self b
element Maybe [Text]
wantedCategories Maybe [Text]
blacklist Maybe [Text]
whitelist = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
self' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
Ptr Element
element' <- b -> IO (Ptr Element)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
element
Ptr CString
maybeWantedCategories <- case Maybe [Text]
wantedCategories of
Maybe [Text]
Nothing -> Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
forall a. Ptr a
nullPtr
Just [Text]
jWantedCategories -> do
Ptr CString
jWantedCategories' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
jWantedCategories
Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
jWantedCategories'
Ptr CString
maybeBlacklist <- case Maybe [Text]
blacklist of
Maybe [Text]
Nothing -> Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
forall a. Ptr a
nullPtr
Just [Text]
jBlacklist -> do
Ptr CString
jBlacklist' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
jBlacklist
Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
jBlacklist'
Ptr CString
maybeWhitelist <- case Maybe [Text]
whitelist of
Maybe [Text]
Nothing -> Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
forall a. Ptr a
nullPtr
Just [Text]
jWhitelist -> do
Ptr CString
jWhitelist' <- [Text] -> IO (Ptr CString)
packZeroTerminatedUTF8CArray [Text]
jWhitelist
Ptr CString -> IO (Ptr CString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CString
jWhitelist'
Ptr TrackElement
-> Ptr Element
-> Ptr CString
-> Ptr CString
-> Ptr CString
-> IO ()
ges_track_element_add_children_props Ptr TrackElement
self' Ptr Element
element' Ptr CString
maybeWantedCategories Ptr CString
maybeBlacklist Ptr CString
maybeWhitelist
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
element
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeWantedCategories
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeWantedCategories
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeBlacklist
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeBlacklist
(CString -> IO ()) -> Ptr CString -> IO ()
forall a b. (Ptr a -> IO b) -> Ptr (Ptr a) -> IO ()
mapZeroTerminatedCArray CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeWhitelist
Ptr CString -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CString
maybeWhitelist
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackElementAddChildrenPropsMethodInfo
instance (signature ~ (b -> Maybe ([T.Text]) -> Maybe ([T.Text]) -> Maybe ([T.Text]) -> m ()), MonadIO m, IsTrackElement a, Gst.Element.IsElement b) => O.OverloadedMethod TrackElementAddChildrenPropsMethodInfo a signature where
overloadedMethod = trackElementAddChildrenProps
instance O.OverloadedMethodInfo TrackElementAddChildrenPropsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementAddChildrenProps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementAddChildrenProps"
})
#endif
foreign import ccall "ges_track_element_clamp_control_source" ges_track_element_clamp_control_source ::
Ptr TrackElement ->
CString ->
IO ()
trackElementClampControlSource ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> T.Text
-> m ()
trackElementClampControlSource :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Text -> m ()
trackElementClampControlSource a
object Text
propertyName = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CString
propertyName' <- Text -> IO CString
textToCString Text
propertyName
Ptr TrackElement -> CString -> IO ()
ges_track_element_clamp_control_source Ptr TrackElement
object' CString
propertyName'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
propertyName'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackElementClampControlSourceMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementClampControlSourceMethodInfo a signature where
overloadedMethod = trackElementClampControlSource
instance O.OverloadedMethodInfo TrackElementClampControlSourceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementClampControlSource",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementClampControlSource"
})
#endif
foreign import ccall "ges_track_element_edit" ges_track_element_edit ::
Ptr TrackElement ->
Ptr (GList (Ptr GES.Layer.Layer)) ->
CUInt ->
CUInt ->
Word64 ->
IO CInt
{-# DEPRECATED trackElementEdit ["(Since version 1.18)","use @/ges_timeline_element_edit/@ instead."] #-}
trackElementEdit ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a, GES.Layer.IsLayer b) =>
a
-> [b]
-> GES.Enums.EditMode
-> GES.Enums.Edge
-> Word64
-> m Bool
trackElementEdit :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrackElement a, IsLayer b) =>
a -> [b] -> EditMode -> Edge -> Word64 -> m Bool
trackElementEdit a
object [b]
layers EditMode
mode Edge
edge Word64
position = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
[Ptr Layer]
layers' <- (b -> IO (Ptr Layer)) -> [b] -> IO [Ptr Layer]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM b -> IO (Ptr Layer)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr [b]
layers
Ptr (GList (Ptr Layer))
layers'' <- [Ptr Layer] -> IO (Ptr (GList (Ptr Layer)))
forall a. [Ptr a] -> IO (Ptr (GList (Ptr a)))
packGList [Ptr Layer]
layers'
let mode' :: CUInt
mode' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (EditMode -> Int) -> EditMode -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. EditMode -> Int
forall a. Enum a => a -> Int
fromEnum) EditMode
mode
let edge' :: CUInt
edge' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (Edge -> Int) -> Edge -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Edge -> Int
forall a. Enum a => a -> Int
fromEnum) Edge
edge
CInt
result <- Ptr TrackElement
-> Ptr (GList (Ptr Layer)) -> CUInt -> CUInt -> Word64 -> IO CInt
ges_track_element_edit Ptr TrackElement
object' Ptr (GList (Ptr Layer))
layers'' CUInt
mode' CUInt
edge' Word64
position
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
(b -> IO ()) -> [b] -> IO ()
forall (t :: * -> *) (m :: * -> *) a b.
(Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
mapM_ b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr [b]
layers
Ptr (GList (Ptr Layer)) -> IO ()
forall a. Ptr (GList a) -> IO ()
g_list_free Ptr (GList (Ptr Layer))
layers''
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementEditMethodInfo
instance (signature ~ ([b] -> GES.Enums.EditMode -> GES.Enums.Edge -> Word64 -> m Bool), MonadIO m, IsTrackElement a, GES.Layer.IsLayer b) => O.OverloadedMethod TrackElementEditMethodInfo a signature where
overloadedMethod = trackElementEdit
instance O.OverloadedMethodInfo TrackElementEditMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementEdit",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementEdit"
})
#endif
#if defined(ENABLE_OVERLOADING)
data TrackElementGetAllControlBindingsMethodInfo
instance (p ~ (), o ~ O.UnsupportedMethodError "getAllControlBindings" TrackElement) => O.OverloadedMethod TrackElementGetAllControlBindingsMethodInfo o p where
overloadedMethod = undefined
instance (o ~ O.UnsupportedMethodError "getAllControlBindings" TrackElement) => O.OverloadedMethodInfo TrackElementGetAllControlBindingsMethodInfo o where
overloadedMethodInfo = undefined
#endif
foreign import ccall "ges_track_element_get_auto_clamp_control_sources" ges_track_element_get_auto_clamp_control_sources ::
Ptr TrackElement ->
IO CInt
trackElementGetAutoClampControlSources ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Bool
trackElementGetAutoClampControlSources :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Bool
trackElementGetAutoClampControlSources a
object = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CInt
result <- Ptr TrackElement -> IO CInt
ges_track_element_get_auto_clamp_control_sources Ptr TrackElement
object'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementGetAutoClampControlSourcesMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetAutoClampControlSourcesMethodInfo a signature where
overloadedMethod = trackElementGetAutoClampControlSources
instance O.OverloadedMethodInfo TrackElementGetAutoClampControlSourcesMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetAutoClampControlSources",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetAutoClampControlSources"
})
#endif
foreign import ccall "ges_track_element_get_control_binding" ges_track_element_get_control_binding ::
Ptr TrackElement ->
CString ->
IO (Ptr Gst.ControlBinding.ControlBinding)
trackElementGetControlBinding ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> T.Text
-> m (Maybe Gst.ControlBinding.ControlBinding)
trackElementGetControlBinding :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Text -> m (Maybe ControlBinding)
trackElementGetControlBinding a
object Text
propertyName = IO (Maybe ControlBinding) -> m (Maybe ControlBinding)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe ControlBinding) -> m (Maybe ControlBinding))
-> IO (Maybe ControlBinding) -> m (Maybe ControlBinding)
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CString
propertyName' <- Text -> IO CString
textToCString Text
propertyName
Ptr ControlBinding
result <- Ptr TrackElement -> CString -> IO (Ptr ControlBinding)
ges_track_element_get_control_binding Ptr TrackElement
object' CString
propertyName'
Maybe ControlBinding
maybeResult <- Ptr ControlBinding
-> (Ptr ControlBinding -> IO ControlBinding)
-> IO (Maybe ControlBinding)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr ControlBinding
result ((Ptr ControlBinding -> IO ControlBinding)
-> IO (Maybe ControlBinding))
-> (Ptr ControlBinding -> IO ControlBinding)
-> IO (Maybe ControlBinding)
forall a b. (a -> b) -> a -> b
$ \Ptr ControlBinding
result' -> do
ControlBinding
result'' <- ((ManagedPtr ControlBinding -> ControlBinding)
-> Ptr ControlBinding -> IO ControlBinding
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ControlBinding -> ControlBinding
Gst.ControlBinding.ControlBinding) Ptr ControlBinding
result'
ControlBinding -> IO ControlBinding
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ControlBinding
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
propertyName'
Maybe ControlBinding -> IO (Maybe ControlBinding)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ControlBinding
maybeResult
#if defined(ENABLE_OVERLOADING)
data TrackElementGetControlBindingMethodInfo
instance (signature ~ (T.Text -> m (Maybe Gst.ControlBinding.ControlBinding)), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetControlBindingMethodInfo a signature where
overloadedMethod = trackElementGetControlBinding
instance O.OverloadedMethodInfo TrackElementGetControlBindingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetControlBinding",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetControlBinding"
})
#endif
foreign import ccall "ges_track_element_get_element" ges_track_element_get_element ::
Ptr TrackElement ->
IO (Ptr Gst.Element.Element)
trackElementGetElement ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Gst.Element.Element
trackElementGetElement :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Element
trackElementGetElement a
object = IO Element -> m Element
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Element -> m Element) -> IO Element -> m Element
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
Ptr Element
result <- Ptr TrackElement -> IO (Ptr Element)
ges_track_element_get_element Ptr TrackElement
object'
Text -> Ptr Element -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackElementGetElement" Ptr Element
result
Element
result' <- ((ManagedPtr Element -> Element) -> Ptr Element -> IO Element
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Element -> Element
Gst.Element.Element) Ptr Element
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Element -> IO Element
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Element
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementGetElementMethodInfo
instance (signature ~ (m Gst.Element.Element), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetElementMethodInfo a signature where
overloadedMethod = trackElementGetElement
instance O.OverloadedMethodInfo TrackElementGetElementMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetElement",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetElement"
})
#endif
foreign import ccall "ges_track_element_get_gnlobject" ges_track_element_get_gnlobject ::
Ptr TrackElement ->
IO (Ptr Gst.Element.Element)
{-# DEPRECATED trackElementGetGnlobject ["use @/ges_track_element_get_nleobject/@ instead."] #-}
trackElementGetGnlobject ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Gst.Element.Element
trackElementGetGnlobject :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Element
trackElementGetGnlobject a
object = IO Element -> m Element
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Element -> m Element) -> IO Element -> m Element
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
Ptr Element
result <- Ptr TrackElement -> IO (Ptr Element)
ges_track_element_get_gnlobject Ptr TrackElement
object'
Text -> Ptr Element -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackElementGetGnlobject" Ptr Element
result
Element
result' <- ((ManagedPtr Element -> Element) -> Ptr Element -> IO Element
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Element -> Element
Gst.Element.Element) Ptr Element
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Element -> IO Element
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Element
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementGetGnlobjectMethodInfo
instance (signature ~ (m Gst.Element.Element), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetGnlobjectMethodInfo a signature where
overloadedMethod = trackElementGetGnlobject
instance O.OverloadedMethodInfo TrackElementGetGnlobjectMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetGnlobject",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetGnlobject"
})
#endif
foreign import ccall "ges_track_element_get_nleobject" ges_track_element_get_nleobject ::
Ptr TrackElement ->
IO (Ptr Gst.Element.Element)
trackElementGetNleobject ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Gst.Element.Element
trackElementGetNleobject :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Element
trackElementGetNleobject a
object = IO Element -> m Element
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Element -> m Element) -> IO Element -> m Element
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
Ptr Element
result <- Ptr TrackElement -> IO (Ptr Element)
ges_track_element_get_nleobject Ptr TrackElement
object'
Text -> Ptr Element -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackElementGetNleobject" Ptr Element
result
Element
result' <- ((ManagedPtr Element -> Element) -> Ptr Element -> IO Element
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Element -> Element
Gst.Element.Element) Ptr Element
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Element -> IO Element
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Element
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementGetNleobjectMethodInfo
instance (signature ~ (m Gst.Element.Element), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetNleobjectMethodInfo a signature where
overloadedMethod = trackElementGetNleobject
instance O.OverloadedMethodInfo TrackElementGetNleobjectMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetNleobject",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetNleobject"
})
#endif
foreign import ccall "ges_track_element_get_track" ges_track_element_get_track ::
Ptr TrackElement ->
IO (Ptr GES.Track.Track)
trackElementGetTrack ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m (Maybe GES.Track.Track)
trackElementGetTrack :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m (Maybe Track)
trackElementGetTrack a
object = IO (Maybe Track) -> m (Maybe Track)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Track) -> m (Maybe Track))
-> IO (Maybe Track) -> m (Maybe Track)
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
Ptr Track
result <- Ptr TrackElement -> IO (Ptr Track)
ges_track_element_get_track Ptr TrackElement
object'
Maybe Track
maybeResult <- Ptr Track -> (Ptr Track -> IO Track) -> IO (Maybe Track)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr Track
result ((Ptr Track -> IO Track) -> IO (Maybe Track))
-> (Ptr Track -> IO Track) -> IO (Maybe Track)
forall a b. (a -> b) -> a -> b
$ \Ptr Track
result' -> do
Track
result'' <- ((ManagedPtr Track -> Track) -> Ptr Track -> IO Track
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Track -> Track
GES.Track.Track) Ptr Track
result'
Track -> IO Track
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Track
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Maybe Track -> IO (Maybe Track)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Track
maybeResult
#if defined(ENABLE_OVERLOADING)
data TrackElementGetTrackMethodInfo
instance (signature ~ (m (Maybe GES.Track.Track)), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetTrackMethodInfo a signature where
overloadedMethod = trackElementGetTrack
instance O.OverloadedMethodInfo TrackElementGetTrackMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetTrack",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetTrack"
})
#endif
foreign import ccall "ges_track_element_get_track_type" ges_track_element_get_track_type ::
Ptr TrackElement ->
IO CUInt
trackElementGetTrackType ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m [GES.Flags.TrackType]
trackElementGetTrackType :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m [TrackType]
trackElementGetTrackType a
object = IO [TrackType] -> m [TrackType]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [TrackType] -> m [TrackType])
-> IO [TrackType] -> m [TrackType]
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CUInt
result <- Ptr TrackElement -> IO CUInt
ges_track_element_get_track_type Ptr TrackElement
object'
let result' :: [TrackType]
result' = CUInt -> [TrackType]
forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
[TrackType] -> IO [TrackType]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [TrackType]
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementGetTrackTypeMethodInfo
instance (signature ~ (m [GES.Flags.TrackType]), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementGetTrackTypeMethodInfo a signature where
overloadedMethod = trackElementGetTrackType
instance O.OverloadedMethodInfo TrackElementGetTrackTypeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementGetTrackType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementGetTrackType"
})
#endif
foreign import ccall "ges_track_element_has_internal_source" ges_track_element_has_internal_source ::
Ptr TrackElement ->
IO CInt
trackElementHasInternalSource ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Bool
trackElementHasInternalSource :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Bool
trackElementHasInternalSource a
object = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CInt
result <- Ptr TrackElement -> IO CInt
ges_track_element_has_internal_source Ptr TrackElement
object'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementHasInternalSourceMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementHasInternalSourceMethodInfo a signature where
overloadedMethod = trackElementHasInternalSource
instance O.OverloadedMethodInfo TrackElementHasInternalSourceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementHasInternalSource",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementHasInternalSource"
})
#endif
foreign import ccall "ges_track_element_is_active" ges_track_element_is_active ::
Ptr TrackElement ->
IO CInt
trackElementIsActive ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Bool
trackElementIsActive :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Bool
trackElementIsActive a
object = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CInt
result <- Ptr TrackElement -> IO CInt
ges_track_element_is_active Ptr TrackElement
object'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementIsActiveMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementIsActiveMethodInfo a signature where
overloadedMethod = trackElementIsActive
instance O.OverloadedMethodInfo TrackElementIsActiveMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementIsActive",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementIsActive"
})
#endif
foreign import ccall "ges_track_element_is_core" ges_track_element_is_core ::
Ptr TrackElement ->
IO CInt
trackElementIsCore ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> m Bool
trackElementIsCore :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> m Bool
trackElementIsCore a
object = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CInt
result <- Ptr TrackElement -> IO CInt
ges_track_element_is_core Ptr TrackElement
object'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementIsCoreMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementIsCoreMethodInfo a signature where
overloadedMethod = trackElementIsCore
instance O.OverloadedMethodInfo TrackElementIsCoreMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementIsCore",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementIsCore"
})
#endif
#if defined(ENABLE_OVERLOADING)
data TrackElementListChildrenPropertiesMethodInfo
instance (p ~ (), o ~ O.UnsupportedMethodError "listChildrenProperties" TrackElement) => O.OverloadedMethod TrackElementListChildrenPropertiesMethodInfo o p where
overloadedMethod = undefined
instance (o ~ O.UnsupportedMethodError "listChildrenProperties" TrackElement) => O.OverloadedMethodInfo TrackElementListChildrenPropertiesMethodInfo o where
overloadedMethodInfo = undefined
#endif
foreign import ccall "ges_track_element_lookup_child" ges_track_element_lookup_child ::
Ptr TrackElement ->
CString ->
Ptr (Ptr Gst.Element.Element) ->
Ptr (Ptr GParamSpec) ->
IO CInt
{-# DEPRECATED trackElementLookupChild ["Use @/ges_timeline_element_lookup_child/@"] #-}
trackElementLookupChild ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> T.Text
-> m ((Bool, Gst.Element.Element, GParamSpec))
trackElementLookupChild :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Text -> m (Bool, Element, GParamSpec)
trackElementLookupChild a
object Text
propName = IO (Bool, Element, GParamSpec) -> m (Bool, Element, GParamSpec)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Bool, Element, GParamSpec) -> m (Bool, Element, GParamSpec))
-> IO (Bool, Element, GParamSpec) -> m (Bool, Element, GParamSpec)
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CString
propName' <- Text -> IO CString
textToCString Text
propName
Ptr (Ptr Element)
element <- IO (Ptr (Ptr Element))
forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (Ptr Gst.Element.Element))
Ptr (Ptr GParamSpec)
pspec <- IO (Ptr (Ptr GParamSpec))
forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (Ptr GParamSpec))
CInt
result <- Ptr TrackElement
-> CString -> Ptr (Ptr Element) -> Ptr (Ptr GParamSpec) -> IO CInt
ges_track_element_lookup_child Ptr TrackElement
object' CString
propName' Ptr (Ptr Element)
element Ptr (Ptr GParamSpec)
pspec
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
Ptr Element
element' <- Ptr (Ptr Element) -> IO (Ptr Element)
forall a. Storable a => Ptr a -> IO a
peek Ptr (Ptr Element)
element
Element
element'' <- ((ManagedPtr Element -> Element) -> Ptr Element -> IO Element
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr Element -> Element
Gst.Element.Element) Ptr Element
element'
Ptr GParamSpec
pspec' <- Ptr (Ptr GParamSpec) -> IO (Ptr GParamSpec)
forall a. Storable a => Ptr a -> IO a
peek Ptr (Ptr GParamSpec)
pspec
GParamSpec
pspec'' <- Ptr GParamSpec -> IO GParamSpec
B.GParamSpec.wrapGParamSpecPtr Ptr GParamSpec
pspec'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
propName'
Ptr (Ptr Element) -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr (Ptr Element)
element
Ptr (Ptr GParamSpec) -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr (Ptr GParamSpec)
pspec
(Bool, Element, GParamSpec) -> IO (Bool, Element, GParamSpec)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Bool
result', Element
element'', GParamSpec
pspec'')
#if defined(ENABLE_OVERLOADING)
data TrackElementLookupChildMethodInfo
instance (signature ~ (T.Text -> m ((Bool, Gst.Element.Element, GParamSpec))), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementLookupChildMethodInfo a signature where
overloadedMethod = trackElementLookupChild
instance O.OverloadedMethodInfo TrackElementLookupChildMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementLookupChild",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementLookupChild"
})
#endif
foreign import ccall "ges_track_element_remove_control_binding" ges_track_element_remove_control_binding ::
Ptr TrackElement ->
CString ->
IO CInt
trackElementRemoveControlBinding ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> T.Text
-> m Bool
trackElementRemoveControlBinding :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Text -> m Bool
trackElementRemoveControlBinding a
object Text
propertyName = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
CString
propertyName' <- Text -> IO CString
textToCString Text
propertyName
CInt
result <- Ptr TrackElement -> CString -> IO CInt
ges_track_element_remove_control_binding Ptr TrackElement
object' CString
propertyName'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
propertyName'
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementRemoveControlBindingMethodInfo
instance (signature ~ (T.Text -> m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementRemoveControlBindingMethodInfo a signature where
overloadedMethod = trackElementRemoveControlBinding
instance O.OverloadedMethodInfo TrackElementRemoveControlBindingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementRemoveControlBinding",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementRemoveControlBinding"
})
#endif
foreign import ccall "ges_track_element_set_active" ges_track_element_set_active ::
Ptr TrackElement ->
CInt ->
IO CInt
trackElementSetActive ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> Bool
-> m Bool
trackElementSetActive :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Bool -> m Bool
trackElementSetActive a
object Bool
active = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
let active' :: CInt
active' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
active
CInt
result <- Ptr TrackElement -> CInt -> IO CInt
ges_track_element_set_active Ptr TrackElement
object' CInt
active'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementSetActiveMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementSetActiveMethodInfo a signature where
overloadedMethod = trackElementSetActive
instance O.OverloadedMethodInfo TrackElementSetActiveMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementSetActive",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementSetActive"
})
#endif
foreign import ccall "ges_track_element_set_auto_clamp_control_sources" ges_track_element_set_auto_clamp_control_sources ::
Ptr TrackElement ->
CInt ->
IO ()
trackElementSetAutoClampControlSources ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> Bool
-> m ()
trackElementSetAutoClampControlSources :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Bool -> m ()
trackElementSetAutoClampControlSources a
object Bool
autoClamp = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
let autoClamp' :: CInt
autoClamp' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
autoClamp
Ptr TrackElement -> CInt -> IO ()
ges_track_element_set_auto_clamp_control_sources Ptr TrackElement
object' CInt
autoClamp'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackElementSetAutoClampControlSourcesMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementSetAutoClampControlSourcesMethodInfo a signature where
overloadedMethod = trackElementSetAutoClampControlSources
instance O.OverloadedMethodInfo TrackElementSetAutoClampControlSourcesMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementSetAutoClampControlSources",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementSetAutoClampControlSources"
})
#endif
foreign import ccall "ges_track_element_set_control_source" ges_track_element_set_control_source ::
Ptr TrackElement ->
Ptr Gst.ControlSource.ControlSource ->
CString ->
CString ->
IO CInt
trackElementSetControlSource ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a, Gst.ControlSource.IsControlSource b) =>
a
-> b
-> T.Text
-> T.Text
-> m Bool
trackElementSetControlSource :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrackElement a, IsControlSource b) =>
a -> b -> Text -> Text -> m Bool
trackElementSetControlSource a
object b
source Text
propertyName Text
bindingType = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
Ptr ControlSource
source' <- b -> IO (Ptr ControlSource)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
source
CString
propertyName' <- Text -> IO CString
textToCString Text
propertyName
CString
bindingType' <- Text -> IO CString
textToCString Text
bindingType
CInt
result <- Ptr TrackElement
-> Ptr ControlSource -> CString -> CString -> IO CInt
ges_track_element_set_control_source Ptr TrackElement
object' Ptr ControlSource
source' CString
propertyName' CString
bindingType'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
source
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
propertyName'
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
bindingType'
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementSetControlSourceMethodInfo
instance (signature ~ (b -> T.Text -> T.Text -> m Bool), MonadIO m, IsTrackElement a, Gst.ControlSource.IsControlSource b) => O.OverloadedMethod TrackElementSetControlSourceMethodInfo a signature where
overloadedMethod = trackElementSetControlSource
instance O.OverloadedMethodInfo TrackElementSetControlSourceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementSetControlSource",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementSetControlSource"
})
#endif
foreign import ccall "ges_track_element_set_has_internal_source" ges_track_element_set_has_internal_source ::
Ptr TrackElement ->
CInt ->
IO CInt
trackElementSetHasInternalSource ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> Bool
-> m Bool
trackElementSetHasInternalSource :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> Bool -> m Bool
trackElementSetHasInternalSource a
object Bool
hasInternalSource = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
let hasInternalSource' :: CInt
hasInternalSource' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
hasInternalSource
CInt
result <- Ptr TrackElement -> CInt -> IO CInt
ges_track_element_set_has_internal_source Ptr TrackElement
object' CInt
hasInternalSource'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackElementSetHasInternalSourceMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementSetHasInternalSourceMethodInfo a signature where
overloadedMethod = trackElementSetHasInternalSource
instance O.OverloadedMethodInfo TrackElementSetHasInternalSourceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementSetHasInternalSource",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementSetHasInternalSource"
})
#endif
foreign import ccall "ges_track_element_set_track_type" ges_track_element_set_track_type ::
Ptr TrackElement ->
CUInt ->
IO ()
trackElementSetTrackType ::
(B.CallStack.HasCallStack, MonadIO m, IsTrackElement a) =>
a
-> [GES.Flags.TrackType]
-> m ()
trackElementSetTrackType :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrackElement a) =>
a -> [TrackType] -> m ()
trackElementSetTrackType a
object [TrackType]
type_ = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr TrackElement
object' <- a -> IO (Ptr TrackElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
object
let type_' :: CUInt
type_' = [TrackType] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [TrackType]
type_
Ptr TrackElement -> CUInt -> IO ()
ges_track_element_set_track_type Ptr TrackElement
object' CUInt
type_'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
object
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackElementSetTrackTypeMethodInfo
instance (signature ~ ([GES.Flags.TrackType] -> m ()), MonadIO m, IsTrackElement a) => O.OverloadedMethod TrackElementSetTrackTypeMethodInfo a signature where
overloadedMethod = trackElementSetTrackType
instance O.OverloadedMethodInfo TrackElementSetTrackTypeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.TrackElement.trackElementSetTrackType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-TrackElement.html#v:trackElementSetTrackType"
})
#endif