{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GES.Objects.Track
(
Track(..) ,
IsTrack ,
toTrack ,
#if defined(ENABLE_OVERLOADING)
ResolveTrackMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackAddElementMethodInfo ,
#endif
trackAddElement ,
#if defined(ENABLE_OVERLOADING)
TrackAddElementFullMethodInfo ,
#endif
trackAddElementFull ,
#if defined(ENABLE_OVERLOADING)
TrackCommitMethodInfo ,
#endif
trackCommit ,
#if defined(ENABLE_OVERLOADING)
TrackGetCapsMethodInfo ,
#endif
trackGetCaps ,
#if defined(ENABLE_OVERLOADING)
TrackGetElementsMethodInfo ,
#endif
trackGetElements ,
#if defined(ENABLE_OVERLOADING)
TrackGetMixingMethodInfo ,
#endif
trackGetMixing ,
#if defined(ENABLE_OVERLOADING)
TrackGetRestrictionCapsMethodInfo ,
#endif
trackGetRestrictionCaps ,
#if defined(ENABLE_OVERLOADING)
TrackGetTimelineMethodInfo ,
#endif
trackGetTimeline ,
trackNew ,
#if defined(ENABLE_OVERLOADING)
TrackRemoveElementMethodInfo ,
#endif
trackRemoveElement ,
#if defined(ENABLE_OVERLOADING)
TrackRemoveElementFullMethodInfo ,
#endif
trackRemoveElementFull ,
#if defined(ENABLE_OVERLOADING)
TrackSetMixingMethodInfo ,
#endif
trackSetMixing ,
#if defined(ENABLE_OVERLOADING)
TrackSetRestrictionCapsMethodInfo ,
#endif
trackSetRestrictionCaps ,
#if defined(ENABLE_OVERLOADING)
TrackSetTimelineMethodInfo ,
#endif
trackSetTimeline ,
#if defined(ENABLE_OVERLOADING)
TrackUpdateRestrictionCapsMethodInfo ,
#endif
trackUpdateRestrictionCaps ,
#if defined(ENABLE_OVERLOADING)
TrackCapsPropertyInfo ,
#endif
constructTrackCaps ,
getTrackCaps ,
#if defined(ENABLE_OVERLOADING)
trackCaps ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackDurationPropertyInfo ,
#endif
getTrackDuration ,
#if defined(ENABLE_OVERLOADING)
trackDuration ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackIdPropertyInfo ,
#endif
clearTrackId ,
constructTrackId ,
getTrackId ,
setTrackId ,
#if defined(ENABLE_OVERLOADING)
trackId ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackMixingPropertyInfo ,
#endif
constructTrackMixing ,
getTrackMixing ,
setTrackMixing ,
#if defined(ENABLE_OVERLOADING)
trackMixing ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackRestrictionCapsPropertyInfo ,
#endif
constructTrackRestrictionCaps ,
getTrackRestrictionCaps ,
setTrackRestrictionCaps ,
#if defined(ENABLE_OVERLOADING)
trackRestrictionCaps ,
#endif
#if defined(ENABLE_OVERLOADING)
TrackTrackTypePropertyInfo ,
#endif
constructTrackTrackType ,
getTrackTrackType ,
#if defined(ENABLE_OVERLOADING)
trackTrackType ,
#endif
TrackCommitedCallback ,
#if defined(ENABLE_OVERLOADING)
TrackCommitedSignalInfo ,
#endif
afterTrackCommited ,
onTrackCommited ,
TrackTrackElementAddedCallback ,
#if defined(ENABLE_OVERLOADING)
TrackTrackElementAddedSignalInfo ,
#endif
afterTrackTrackElementAdded ,
onTrackTrackElementAdded ,
TrackTrackElementRemovedCallback ,
#if defined(ENABLE_OVERLOADING)
TrackTrackElementRemovedSignalInfo ,
#endif
afterTrackTrackElementRemoved ,
onTrackTrackElementRemoved ,
) 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.Flags as GES.Flags
import {-# SOURCE #-} qualified GI.GES.Interfaces.MetaContainer as GES.MetaContainer
import {-# SOURCE #-} qualified GI.GES.Objects.Timeline as GES.Timeline
import {-# SOURCE #-} qualified GI.GES.Objects.TrackElement as GES.TrackElement
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Interfaces.ChildProxy as Gst.ChildProxy
import qualified GI.Gst.Objects.Bin as Gst.Bin
import qualified GI.Gst.Objects.Element as Gst.Element
import qualified GI.Gst.Objects.Object as Gst.Object
import qualified GI.Gst.Structs.Caps as Gst.Caps
newtype Track = Track (SP.ManagedPtr Track)
deriving (Track -> Track -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Track -> Track -> Bool
$c/= :: Track -> Track -> Bool
== :: Track -> Track -> Bool
$c== :: Track -> Track -> Bool
Eq)
instance SP.ManagedPtrNewtype Track where
toManagedPtr :: Track -> ManagedPtr Track
toManagedPtr (Track ManagedPtr Track
p) = ManagedPtr Track
p
foreign import ccall "ges_track_get_type"
c_ges_track_get_type :: IO B.Types.GType
instance B.Types.TypedObject Track where
glibType :: IO GType
glibType = IO GType
c_ges_track_get_type
instance B.Types.GObject Track
class (SP.GObject o, O.IsDescendantOf Track o) => IsTrack o
instance (SP.GObject o, O.IsDescendantOf Track o) => IsTrack o
instance O.HasParentTypes Track
type instance O.ParentTypes Track = '[Gst.Bin.Bin, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object, GES.MetaContainer.MetaContainer, Gst.ChildProxy.ChildProxy]
toTrack :: (MIO.MonadIO m, IsTrack o) => o -> m Track
toTrack :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> m Track
toTrack = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Track -> Track
Track
instance B.GValue.IsGValue (Maybe Track) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ges_track_get_type
gvalueSet_ :: Ptr GValue -> Maybe Track -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Track
P.Nothing = forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (forall a. Ptr a
FP.nullPtr :: FP.Ptr Track)
gvalueSet_ Ptr GValue
gv (P.Just Track
obj) = forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Track
obj (forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe Track)
gvalueGet_ Ptr GValue
gv = do
Ptr Track
ptr <- forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Track)
if Ptr Track
ptr forall a. Eq a => a -> a -> Bool
/= forall a. Ptr a
FP.nullPtr
then forall a. a -> Maybe a
P.Just forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Track -> Track
Track Ptr Track
ptr
else forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveTrackMethod (t :: Symbol) (o :: *) :: * where
ResolveTrackMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
ResolveTrackMethod "add" o = Gst.Bin.BinAddMethodInfo
ResolveTrackMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveTrackMethod "addElement" o = TrackAddElementMethodInfo
ResolveTrackMethod "addElementFull" o = TrackAddElementFullMethodInfo
ResolveTrackMethod "addMetasFromString" o = GES.MetaContainer.MetaContainerAddMetasFromStringMethodInfo
ResolveTrackMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
ResolveTrackMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
ResolveTrackMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
ResolveTrackMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveTrackMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveTrackMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
ResolveTrackMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
ResolveTrackMethod "checkMetaRegistered" o = GES.MetaContainer.MetaContainerCheckMetaRegisteredMethodInfo
ResolveTrackMethod "childAdded" o = Gst.ChildProxy.ChildProxyChildAddedMethodInfo
ResolveTrackMethod "childRemoved" o = Gst.ChildProxy.ChildProxyChildRemovedMethodInfo
ResolveTrackMethod "commit" o = TrackCommitMethodInfo
ResolveTrackMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
ResolveTrackMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
ResolveTrackMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveTrackMethod "findUnlinkedPad" o = Gst.Bin.BinFindUnlinkedPadMethodInfo
ResolveTrackMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveTrackMethod "foreach" o = GES.MetaContainer.MetaContainerForeachMethodInfo
ResolveTrackMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
ResolveTrackMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
ResolveTrackMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
ResolveTrackMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveTrackMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveTrackMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveTrackMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveTrackMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveTrackMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveTrackMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveTrackMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
ResolveTrackMethod "iterateAllByElementFactoryName" o = Gst.Bin.BinIterateAllByElementFactoryNameMethodInfo
ResolveTrackMethod "iterateAllByInterface" o = Gst.Bin.BinIterateAllByInterfaceMethodInfo
ResolveTrackMethod "iterateElements" o = Gst.Bin.BinIterateElementsMethodInfo
ResolveTrackMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
ResolveTrackMethod "iterateRecurse" o = Gst.Bin.BinIterateRecurseMethodInfo
ResolveTrackMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
ResolveTrackMethod "iterateSinks" o = Gst.Bin.BinIterateSinksMethodInfo
ResolveTrackMethod "iterateSorted" o = Gst.Bin.BinIterateSortedMethodInfo
ResolveTrackMethod "iterateSources" o = Gst.Bin.BinIterateSourcesMethodInfo
ResolveTrackMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
ResolveTrackMethod "link" o = Gst.Element.ElementLinkMethodInfo
ResolveTrackMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
ResolveTrackMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
ResolveTrackMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
ResolveTrackMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
ResolveTrackMethod "lookup" o = Gst.ChildProxy.ChildProxyLookupMethodInfo
ResolveTrackMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
ResolveTrackMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
ResolveTrackMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
ResolveTrackMethod "metasToString" o = GES.MetaContainer.MetaContainerMetasToStringMethodInfo
ResolveTrackMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
ResolveTrackMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveTrackMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveTrackMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
ResolveTrackMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
ResolveTrackMethod "query" o = Gst.Element.ElementQueryMethodInfo
ResolveTrackMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
ResolveTrackMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
ResolveTrackMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
ResolveTrackMethod "recalculateLatency" o = Gst.Bin.BinRecalculateLatencyMethodInfo
ResolveTrackMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveTrackMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveTrackMethod "registerMeta" o = GES.MetaContainer.MetaContainerRegisterMetaMethodInfo
ResolveTrackMethod "registerMetaBoolean" o = GES.MetaContainer.MetaContainerRegisterMetaBooleanMethodInfo
ResolveTrackMethod "registerMetaDate" o = GES.MetaContainer.MetaContainerRegisterMetaDateMethodInfo
ResolveTrackMethod "registerMetaDateTime" o = GES.MetaContainer.MetaContainerRegisterMetaDateTimeMethodInfo
ResolveTrackMethod "registerMetaDouble" o = GES.MetaContainer.MetaContainerRegisterMetaDoubleMethodInfo
ResolveTrackMethod "registerMetaFloat" o = GES.MetaContainer.MetaContainerRegisterMetaFloatMethodInfo
ResolveTrackMethod "registerMetaInt" o = GES.MetaContainer.MetaContainerRegisterMetaIntMethodInfo
ResolveTrackMethod "registerMetaInt64" o = GES.MetaContainer.MetaContainerRegisterMetaInt64MethodInfo
ResolveTrackMethod "registerMetaString" o = GES.MetaContainer.MetaContainerRegisterMetaStringMethodInfo
ResolveTrackMethod "registerMetaUint" o = GES.MetaContainer.MetaContainerRegisterMetaUintMethodInfo
ResolveTrackMethod "registerMetaUint64" o = GES.MetaContainer.MetaContainerRegisterMetaUint64MethodInfo
ResolveTrackMethod "registerStaticMeta" o = GES.MetaContainer.MetaContainerRegisterStaticMetaMethodInfo
ResolveTrackMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
ResolveTrackMethod "remove" o = Gst.Bin.BinRemoveMethodInfo
ResolveTrackMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveTrackMethod "removeElement" o = TrackRemoveElementMethodInfo
ResolveTrackMethod "removeElementFull" o = TrackRemoveElementFullMethodInfo
ResolveTrackMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
ResolveTrackMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
ResolveTrackMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
ResolveTrackMethod "requestPadSimple" o = Gst.Element.ElementRequestPadSimpleMethodInfo
ResolveTrackMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveTrackMethod "seek" o = Gst.Element.ElementSeekMethodInfo
ResolveTrackMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
ResolveTrackMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
ResolveTrackMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveTrackMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveTrackMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveTrackMethod "syncChildrenStates" o = Gst.Bin.BinSyncChildrenStatesMethodInfo
ResolveTrackMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
ResolveTrackMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveTrackMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveTrackMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
ResolveTrackMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
ResolveTrackMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveTrackMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveTrackMethod "updateRestrictionCaps" o = TrackUpdateRestrictionCapsMethodInfo
ResolveTrackMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveTrackMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
ResolveTrackMethod "getBoolean" o = GES.MetaContainer.MetaContainerGetBooleanMethodInfo
ResolveTrackMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
ResolveTrackMethod "getByInterface" o = Gst.Bin.BinGetByInterfaceMethodInfo
ResolveTrackMethod "getByName" o = Gst.Bin.BinGetByNameMethodInfo
ResolveTrackMethod "getByNameRecurseUp" o = Gst.Bin.BinGetByNameRecurseUpMethodInfo
ResolveTrackMethod "getCaps" o = TrackGetCapsMethodInfo
ResolveTrackMethod "getChildByIndex" o = Gst.ChildProxy.ChildProxyGetChildByIndexMethodInfo
ResolveTrackMethod "getChildByName" o = Gst.ChildProxy.ChildProxyGetChildByNameMethodInfo
ResolveTrackMethod "getChildrenCount" o = Gst.ChildProxy.ChildProxyGetChildrenCountMethodInfo
ResolveTrackMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
ResolveTrackMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
ResolveTrackMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
ResolveTrackMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
ResolveTrackMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
ResolveTrackMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
ResolveTrackMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveTrackMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveTrackMethod "getCurrentClockTime" o = Gst.Element.ElementGetCurrentClockTimeMethodInfo
ResolveTrackMethod "getCurrentRunningTime" o = Gst.Element.ElementGetCurrentRunningTimeMethodInfo
ResolveTrackMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveTrackMethod "getDate" o = GES.MetaContainer.MetaContainerGetDateMethodInfo
ResolveTrackMethod "getDateTime" o = GES.MetaContainer.MetaContainerGetDateTimeMethodInfo
ResolveTrackMethod "getDouble" o = GES.MetaContainer.MetaContainerGetDoubleMethodInfo
ResolveTrackMethod "getElements" o = TrackGetElementsMethodInfo
ResolveTrackMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
ResolveTrackMethod "getFloat" o = GES.MetaContainer.MetaContainerGetFloatMethodInfo
ResolveTrackMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveTrackMethod "getInt" o = GES.MetaContainer.MetaContainerGetIntMethodInfo
ResolveTrackMethod "getInt64" o = GES.MetaContainer.MetaContainerGetInt64MethodInfo
ResolveTrackMethod "getMarkerList" o = GES.MetaContainer.MetaContainerGetMarkerListMethodInfo
ResolveTrackMethod "getMeta" o = GES.MetaContainer.MetaContainerGetMetaMethodInfo
ResolveTrackMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
ResolveTrackMethod "getMixing" o = TrackGetMixingMethodInfo
ResolveTrackMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveTrackMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
ResolveTrackMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
ResolveTrackMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveTrackMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveTrackMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveTrackMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveTrackMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
ResolveTrackMethod "getRestrictionCaps" o = TrackGetRestrictionCapsMethodInfo
ResolveTrackMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
ResolveTrackMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
ResolveTrackMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
ResolveTrackMethod "getString" o = GES.MetaContainer.MetaContainerGetStringMethodInfo
ResolveTrackMethod "getSuppressedFlags" o = Gst.Bin.BinGetSuppressedFlagsMethodInfo
ResolveTrackMethod "getTimeline" o = TrackGetTimelineMethodInfo
ResolveTrackMethod "getUint" o = GES.MetaContainer.MetaContainerGetUintMethodInfo
ResolveTrackMethod "getUint64" o = GES.MetaContainer.MetaContainerGetUint64MethodInfo
ResolveTrackMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveTrackMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
ResolveTrackMethod "setBoolean" o = GES.MetaContainer.MetaContainerSetBooleanMethodInfo
ResolveTrackMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
ResolveTrackMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
ResolveTrackMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
ResolveTrackMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveTrackMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveTrackMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveTrackMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveTrackMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveTrackMethod "setDate" o = GES.MetaContainer.MetaContainerSetDateMethodInfo
ResolveTrackMethod "setDateTime" o = GES.MetaContainer.MetaContainerSetDateTimeMethodInfo
ResolveTrackMethod "setDouble" o = GES.MetaContainer.MetaContainerSetDoubleMethodInfo
ResolveTrackMethod "setFloat" o = GES.MetaContainer.MetaContainerSetFloatMethodInfo
ResolveTrackMethod "setInt" o = GES.MetaContainer.MetaContainerSetIntMethodInfo
ResolveTrackMethod "setInt64" o = GES.MetaContainer.MetaContainerSetInt64MethodInfo
ResolveTrackMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
ResolveTrackMethod "setMarkerList" o = GES.MetaContainer.MetaContainerSetMarkerListMethodInfo
ResolveTrackMethod "setMeta" o = GES.MetaContainer.MetaContainerSetMetaMethodInfo
ResolveTrackMethod "setMixing" o = TrackSetMixingMethodInfo
ResolveTrackMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveTrackMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveTrackMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveTrackMethod "setRestrictionCaps" o = TrackSetRestrictionCapsMethodInfo
ResolveTrackMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
ResolveTrackMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
ResolveTrackMethod "setString" o = GES.MetaContainer.MetaContainerSetStringMethodInfo
ResolveTrackMethod "setSuppressedFlags" o = Gst.Bin.BinSetSuppressedFlagsMethodInfo
ResolveTrackMethod "setTimeline" o = TrackSetTimelineMethodInfo
ResolveTrackMethod "setUint" o = GES.MetaContainer.MetaContainerSetUintMethodInfo
ResolveTrackMethod "setUint64" o = GES.MetaContainer.MetaContainerSetUint64MethodInfo
ResolveTrackMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveTrackMethod t Track, O.OverloadedMethod info Track p) => OL.IsLabel t (Track -> 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 ~ ResolveTrackMethod t Track, O.OverloadedMethod info Track p, R.HasField t Track p) => R.HasField t Track p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveTrackMethod t Track, O.OverloadedMethodInfo info Track) => OL.IsLabel t (O.MethodProxy info Track) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type TrackCommitedCallback =
IO ()
type C_TrackCommitedCallback =
Ptr Track ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_TrackCommitedCallback :: C_TrackCommitedCallback -> IO (FunPtr C_TrackCommitedCallback)
wrap_TrackCommitedCallback ::
GObject a => (a -> TrackCommitedCallback) ->
C_TrackCommitedCallback
wrap_TrackCommitedCallback :: forall a. GObject a => (a -> IO ()) -> C_TrackCommitedCallback
wrap_TrackCommitedCallback a -> IO ()
gi'cb Ptr Track
gi'selfPtr Ptr ()
_ = do
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr Track
gi'selfPtr forall a b. (a -> b) -> a -> b
$ \Track
gi'self -> a -> IO ()
gi'cb (coerce :: forall a b. Coercible a b => a -> b
Coerce.coerce Track
gi'self)
onTrackCommited :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackCommitedCallback) -> m SignalHandlerId
onTrackCommited :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onTrackCommited a
obj (?self::a) => IO ()
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
self in (?self::a) => IO ()
cb
let wrapped' :: C_TrackCommitedCallback
wrapped' = forall a. GObject a => (a -> IO ()) -> C_TrackCommitedCallback
wrap_TrackCommitedCallback a -> IO ()
wrapped
FunPtr C_TrackCommitedCallback
wrapped'' <- C_TrackCommitedCallback -> IO (FunPtr C_TrackCommitedCallback)
mk_TrackCommitedCallback C_TrackCommitedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"commited" FunPtr C_TrackCommitedCallback
wrapped'' SignalConnectMode
SignalConnectBefore forall a. Maybe a
Nothing
afterTrackCommited :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackCommitedCallback) -> m SignalHandlerId
afterTrackCommited :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterTrackCommited a
obj (?self::a) => IO ()
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
self in (?self::a) => IO ()
cb
let wrapped' :: C_TrackCommitedCallback
wrapped' = forall a. GObject a => (a -> IO ()) -> C_TrackCommitedCallback
wrap_TrackCommitedCallback a -> IO ()
wrapped
FunPtr C_TrackCommitedCallback
wrapped'' <- C_TrackCommitedCallback -> IO (FunPtr C_TrackCommitedCallback)
mk_TrackCommitedCallback C_TrackCommitedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"commited" FunPtr C_TrackCommitedCallback
wrapped'' SignalConnectMode
SignalConnectAfter forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data TrackCommitedSignalInfo
instance SignalInfo TrackCommitedSignalInfo where
type HaskellCallbackType TrackCommitedSignalInfo = TrackCommitedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_TrackCommitedCallback cb
cb'' <- mk_TrackCommitedCallback cb'
connectSignalFunPtr obj "commited" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track::commited"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:signal:commited"})
#endif
type TrackTrackElementAddedCallback =
GES.TrackElement.TrackElement
-> IO ()
type C_TrackTrackElementAddedCallback =
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_TrackTrackElementAddedCallback :: C_TrackTrackElementAddedCallback -> IO (FunPtr C_TrackTrackElementAddedCallback)
wrap_TrackTrackElementAddedCallback ::
GObject a => (a -> TrackTrackElementAddedCallback) ->
C_TrackTrackElementAddedCallback
wrap_TrackTrackElementAddedCallback :: forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementAddedCallback a -> TrackTrackElementAddedCallback
gi'cb Ptr Track
gi'selfPtr Ptr TrackElement
effect Ptr ()
_ = do
TrackElement
effect' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr TrackElement -> TrackElement
GES.TrackElement.TrackElement) Ptr TrackElement
effect
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr Track
gi'selfPtr forall a b. (a -> b) -> a -> b
$ \Track
gi'self -> a -> TrackTrackElementAddedCallback
gi'cb (coerce :: forall a b. Coercible a b => a -> b
Coerce.coerce Track
gi'self) TrackElement
effect'
onTrackTrackElementAdded :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackTrackElementAddedCallback) -> m SignalHandlerId
onTrackTrackElementAdded :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a
-> ((?self::a) => TrackTrackElementAddedCallback)
-> m SignalHandlerId
onTrackTrackElementAdded a
obj (?self::a) => TrackTrackElementAddedCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackTrackElementAddedCallback
wrapped a
self = let ?self = a
self in (?self::a) => TrackTrackElementAddedCallback
cb
let wrapped' :: C_TrackTrackElementAddedCallback
wrapped' = forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementAddedCallback a -> TrackTrackElementAddedCallback
wrapped
FunPtr C_TrackTrackElementAddedCallback
wrapped'' <- C_TrackTrackElementAddedCallback
-> IO (FunPtr C_TrackTrackElementAddedCallback)
mk_TrackTrackElementAddedCallback C_TrackTrackElementAddedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"track-element-added" FunPtr C_TrackTrackElementAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore forall a. Maybe a
Nothing
afterTrackTrackElementAdded :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackTrackElementAddedCallback) -> m SignalHandlerId
afterTrackTrackElementAdded :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a
-> ((?self::a) => TrackTrackElementAddedCallback)
-> m SignalHandlerId
afterTrackTrackElementAdded a
obj (?self::a) => TrackTrackElementAddedCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackTrackElementAddedCallback
wrapped a
self = let ?self = a
self in (?self::a) => TrackTrackElementAddedCallback
cb
let wrapped' :: C_TrackTrackElementAddedCallback
wrapped' = forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementAddedCallback a -> TrackTrackElementAddedCallback
wrapped
FunPtr C_TrackTrackElementAddedCallback
wrapped'' <- C_TrackTrackElementAddedCallback
-> IO (FunPtr C_TrackTrackElementAddedCallback)
mk_TrackTrackElementAddedCallback C_TrackTrackElementAddedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"track-element-added" FunPtr C_TrackTrackElementAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data TrackTrackElementAddedSignalInfo
instance SignalInfo TrackTrackElementAddedSignalInfo where
type HaskellCallbackType TrackTrackElementAddedSignalInfo = TrackTrackElementAddedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_TrackTrackElementAddedCallback cb
cb'' <- mk_TrackTrackElementAddedCallback cb'
connectSignalFunPtr obj "track-element-added" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track::track-element-added"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:signal:trackElementAdded"})
#endif
type TrackTrackElementRemovedCallback =
GES.TrackElement.TrackElement
-> IO ()
type C_TrackTrackElementRemovedCallback =
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_TrackTrackElementRemovedCallback :: C_TrackTrackElementRemovedCallback -> IO (FunPtr C_TrackTrackElementRemovedCallback)
wrap_TrackTrackElementRemovedCallback ::
GObject a => (a -> TrackTrackElementRemovedCallback) ->
C_TrackTrackElementRemovedCallback
wrap_TrackTrackElementRemovedCallback :: forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementRemovedCallback a -> TrackTrackElementAddedCallback
gi'cb Ptr Track
gi'selfPtr Ptr TrackElement
effect Ptr ()
_ = do
TrackElement
effect' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr TrackElement -> TrackElement
GES.TrackElement.TrackElement) Ptr TrackElement
effect
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr Track
gi'selfPtr forall a b. (a -> b) -> a -> b
$ \Track
gi'self -> a -> TrackTrackElementAddedCallback
gi'cb (coerce :: forall a b. Coercible a b => a -> b
Coerce.coerce Track
gi'self) TrackElement
effect'
onTrackTrackElementRemoved :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackTrackElementRemovedCallback) -> m SignalHandlerId
onTrackTrackElementRemoved :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a
-> ((?self::a) => TrackTrackElementAddedCallback)
-> m SignalHandlerId
onTrackTrackElementRemoved a
obj (?self::a) => TrackTrackElementAddedCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackTrackElementAddedCallback
wrapped a
self = let ?self = a
self in (?self::a) => TrackTrackElementAddedCallback
cb
let wrapped' :: C_TrackTrackElementAddedCallback
wrapped' = forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementRemovedCallback a -> TrackTrackElementAddedCallback
wrapped
FunPtr C_TrackTrackElementAddedCallback
wrapped'' <- C_TrackTrackElementAddedCallback
-> IO (FunPtr C_TrackTrackElementAddedCallback)
mk_TrackTrackElementRemovedCallback C_TrackTrackElementAddedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"track-element-removed" FunPtr C_TrackTrackElementAddedCallback
wrapped'' SignalConnectMode
SignalConnectBefore forall a. Maybe a
Nothing
afterTrackTrackElementRemoved :: (IsTrack a, MonadIO m) => a -> ((?self :: a) => TrackTrackElementRemovedCallback) -> m SignalHandlerId
afterTrackTrackElementRemoved :: forall a (m :: * -> *).
(IsTrack a, MonadIO m) =>
a
-> ((?self::a) => TrackTrackElementAddedCallback)
-> m SignalHandlerId
afterTrackTrackElementRemoved a
obj (?self::a) => TrackTrackElementAddedCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> TrackTrackElementAddedCallback
wrapped a
self = let ?self = a
self in (?self::a) => TrackTrackElementAddedCallback
cb
let wrapped' :: C_TrackTrackElementAddedCallback
wrapped' = forall a.
GObject a =>
(a -> TrackTrackElementAddedCallback)
-> C_TrackTrackElementAddedCallback
wrap_TrackTrackElementRemovedCallback a -> TrackTrackElementAddedCallback
wrapped
FunPtr C_TrackTrackElementAddedCallback
wrapped'' <- C_TrackTrackElementAddedCallback
-> IO (FunPtr C_TrackTrackElementAddedCallback)
mk_TrackTrackElementRemovedCallback C_TrackTrackElementAddedCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"track-element-removed" FunPtr C_TrackTrackElementAddedCallback
wrapped'' SignalConnectMode
SignalConnectAfter forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data TrackTrackElementRemovedSignalInfo
instance SignalInfo TrackTrackElementRemovedSignalInfo where
type HaskellCallbackType TrackTrackElementRemovedSignalInfo = TrackTrackElementRemovedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_TrackTrackElementRemovedCallback cb
cb'' <- mk_TrackTrackElementRemovedCallback cb'
connectSignalFunPtr obj "track-element-removed" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track::track-element-removed"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:signal:trackElementRemoved"})
#endif
getTrackCaps :: (MonadIO m, IsTrack o) => o -> m Gst.Caps.Caps
getTrackCaps :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> m Caps
getTrackCaps o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getTrackCaps" forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GBoxed b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj String
"caps" ManagedPtr Caps -> Caps
Gst.Caps.Caps
constructTrackCaps :: (IsTrack o, MIO.MonadIO m) => Gst.Caps.Caps -> m (GValueConstruct o)
constructTrackCaps :: forall o (m :: * -> *).
(IsTrack o, MonadIO m) =>
Caps -> m (GValueConstruct o)
constructTrackCaps Caps
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o. GBoxed a => String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed String
"caps" (forall a. a -> Maybe a
P.Just Caps
val)
#if defined(ENABLE_OVERLOADING)
data TrackCapsPropertyInfo
instance AttrInfo TrackCapsPropertyInfo where
type AttrAllowedOps TrackCapsPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint TrackCapsPropertyInfo = IsTrack
type AttrSetTypeConstraint TrackCapsPropertyInfo = (~) Gst.Caps.Caps
type AttrTransferTypeConstraint TrackCapsPropertyInfo = (~) Gst.Caps.Caps
type AttrTransferType TrackCapsPropertyInfo = Gst.Caps.Caps
type AttrGetType TrackCapsPropertyInfo = Gst.Caps.Caps
type AttrLabel TrackCapsPropertyInfo = "caps"
type AttrOrigin TrackCapsPropertyInfo = Track
attrGet = getTrackCaps
attrSet = undefined
attrTransfer _ v = do
return v
attrConstruct = constructTrackCaps
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.caps"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:caps"
})
#endif
getTrackDuration :: (MonadIO m, IsTrack o) => o -> m Word64
getTrackDuration :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> m Word64
getTrackDuration o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO Word64
B.Properties.getObjectPropertyUInt64 o
obj String
"duration"
#if defined(ENABLE_OVERLOADING)
data TrackDurationPropertyInfo
instance AttrInfo TrackDurationPropertyInfo where
type AttrAllowedOps TrackDurationPropertyInfo = '[ 'AttrGet]
type AttrBaseTypeConstraint TrackDurationPropertyInfo = IsTrack
type AttrSetTypeConstraint TrackDurationPropertyInfo = (~) ()
type AttrTransferTypeConstraint TrackDurationPropertyInfo = (~) ()
type AttrTransferType TrackDurationPropertyInfo = ()
type AttrGetType TrackDurationPropertyInfo = Word64
type AttrLabel TrackDurationPropertyInfo = "duration"
type AttrOrigin TrackDurationPropertyInfo = Track
attrGet = getTrackDuration
attrSet = undefined
attrTransfer _ = undefined
attrConstruct = undefined
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.duration"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:duration"
})
#endif
getTrackId :: (MonadIO m, IsTrack o) => o -> m (Maybe T.Text)
getTrackId :: forall (m :: * -> *) o.
(MonadIO m, IsTrack o) =>
o -> m (Maybe Text)
getTrackId o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"id"
setTrackId :: (MonadIO m, IsTrack o) => o -> T.Text -> m ()
setTrackId :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> Text -> m ()
setTrackId o
obj Text
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"id" (forall a. a -> Maybe a
Just Text
val)
constructTrackId :: (IsTrack o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructTrackId :: forall o (m :: * -> *).
(IsTrack o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructTrackId Text
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"id" (forall a. a -> Maybe a
P.Just Text
val)
clearTrackId :: (MonadIO m, IsTrack o) => o -> m ()
clearTrackId :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> m ()
clearTrackId o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"id" (forall a. Maybe a
Nothing :: Maybe T.Text)
#if defined(ENABLE_OVERLOADING)
data TrackIdPropertyInfo
instance AttrInfo TrackIdPropertyInfo where
type AttrAllowedOps TrackIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint TrackIdPropertyInfo = IsTrack
type AttrSetTypeConstraint TrackIdPropertyInfo = (~) T.Text
type AttrTransferTypeConstraint TrackIdPropertyInfo = (~) T.Text
type AttrTransferType TrackIdPropertyInfo = T.Text
type AttrGetType TrackIdPropertyInfo = (Maybe T.Text)
type AttrLabel TrackIdPropertyInfo = "id"
type AttrOrigin TrackIdPropertyInfo = Track
attrGet = getTrackId
attrSet = setTrackId
attrTransfer _ v = do
return v
attrConstruct = constructTrackId
attrClear = clearTrackId
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.id"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:id"
})
#endif
getTrackMixing :: (MonadIO m, IsTrack o) => o -> m Bool
getTrackMixing :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> m Bool
getTrackMixing o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"mixing"
setTrackMixing :: (MonadIO m, IsTrack o) => o -> Bool -> m ()
setTrackMixing :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> Bool -> m ()
setTrackMixing o
obj Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"mixing" Bool
val
constructTrackMixing :: (IsTrack o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructTrackMixing :: forall o (m :: * -> *).
(IsTrack o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructTrackMixing Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"mixing" Bool
val
#if defined(ENABLE_OVERLOADING)
data TrackMixingPropertyInfo
instance AttrInfo TrackMixingPropertyInfo where
type AttrAllowedOps TrackMixingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackMixingPropertyInfo = IsTrack
type AttrSetTypeConstraint TrackMixingPropertyInfo = (~) Bool
type AttrTransferTypeConstraint TrackMixingPropertyInfo = (~) Bool
type AttrTransferType TrackMixingPropertyInfo = Bool
type AttrGetType TrackMixingPropertyInfo = Bool
type AttrLabel TrackMixingPropertyInfo = "mixing"
type AttrOrigin TrackMixingPropertyInfo = Track
attrGet = getTrackMixing
attrSet = setTrackMixing
attrTransfer _ v = do
return v
attrConstruct = constructTrackMixing
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.mixing"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:mixing"
})
#endif
getTrackRestrictionCaps :: (MonadIO m, IsTrack o) => o -> m (Maybe Gst.Caps.Caps)
getTrackRestrictionCaps :: forall (m :: * -> *) o.
(MonadIO m, IsTrack o) =>
o -> m (Maybe Caps)
getTrackRestrictionCaps o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GBoxed b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj String
"restriction-caps" ManagedPtr Caps -> Caps
Gst.Caps.Caps
setTrackRestrictionCaps :: (MonadIO m, IsTrack o) => o -> Gst.Caps.Caps -> m ()
setTrackRestrictionCaps :: forall (m :: * -> *) o. (MonadIO m, IsTrack o) => o -> Caps -> m ()
setTrackRestrictionCaps o
obj Caps
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"restriction-caps" (forall a. a -> Maybe a
Just Caps
val)
constructTrackRestrictionCaps :: (IsTrack o, MIO.MonadIO m) => Gst.Caps.Caps -> m (GValueConstruct o)
constructTrackRestrictionCaps :: forall o (m :: * -> *).
(IsTrack o, MonadIO m) =>
Caps -> m (GValueConstruct o)
constructTrackRestrictionCaps Caps
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o. GBoxed a => String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed String
"restriction-caps" (forall a. a -> Maybe a
P.Just Caps
val)
#if defined(ENABLE_OVERLOADING)
data TrackRestrictionCapsPropertyInfo
instance AttrInfo TrackRestrictionCapsPropertyInfo where
type AttrAllowedOps TrackRestrictionCapsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackRestrictionCapsPropertyInfo = IsTrack
type AttrSetTypeConstraint TrackRestrictionCapsPropertyInfo = (~) Gst.Caps.Caps
type AttrTransferTypeConstraint TrackRestrictionCapsPropertyInfo = (~) Gst.Caps.Caps
type AttrTransferType TrackRestrictionCapsPropertyInfo = Gst.Caps.Caps
type AttrGetType TrackRestrictionCapsPropertyInfo = (Maybe Gst.Caps.Caps)
type AttrLabel TrackRestrictionCapsPropertyInfo = "restriction-caps"
type AttrOrigin TrackRestrictionCapsPropertyInfo = Track
attrGet = getTrackRestrictionCaps
attrSet = setTrackRestrictionCaps
attrTransfer _ v = do
return v
attrConstruct = constructTrackRestrictionCaps
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.restrictionCaps"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:restrictionCaps"
})
#endif
getTrackTrackType :: (MonadIO m, IsTrack o) => o -> m [GES.Flags.TrackType]
getTrackTrackType :: forall (m :: * -> *) o.
(MonadIO m, IsTrack o) =>
o -> m [TrackType]
getTrackTrackType o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"track-type"
constructTrackTrackType :: (IsTrack o, MIO.MonadIO m) => [GES.Flags.TrackType] -> m (GValueConstruct o)
constructTrackTrackType :: forall o (m :: * -> *).
(IsTrack o, MonadIO m) =>
[TrackType] -> m (GValueConstruct o)
constructTrackTrackType [TrackType]
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ 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 TrackTrackTypePropertyInfo
instance AttrInfo TrackTrackTypePropertyInfo where
type AttrAllowedOps TrackTrackTypePropertyInfo = '[ 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint TrackTrackTypePropertyInfo = IsTrack
type AttrSetTypeConstraint TrackTrackTypePropertyInfo = (~) [GES.Flags.TrackType]
type AttrTransferTypeConstraint TrackTrackTypePropertyInfo = (~) [GES.Flags.TrackType]
type AttrTransferType TrackTrackTypePropertyInfo = [GES.Flags.TrackType]
type AttrGetType TrackTrackTypePropertyInfo = [GES.Flags.TrackType]
type AttrLabel TrackTrackTypePropertyInfo = "track-type"
type AttrOrigin TrackTrackTypePropertyInfo = Track
attrGet = getTrackTrackType
attrSet = undefined
attrTransfer _ v = do
return v
attrConstruct = constructTrackTrackType
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackType"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#g:attr:trackType"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Track
type instance O.AttributeList Track = TrackAttributeList
type TrackAttributeList = ('[ '("asyncHandling", Gst.Bin.BinAsyncHandlingPropertyInfo), '("caps", TrackCapsPropertyInfo), '("duration", TrackDurationPropertyInfo), '("id", TrackIdPropertyInfo), '("messageForward", Gst.Bin.BinMessageForwardPropertyInfo), '("mixing", TrackMixingPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("restrictionCaps", TrackRestrictionCapsPropertyInfo), '("trackType", TrackTrackTypePropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
trackCaps :: AttrLabelProxy "caps"
trackCaps = AttrLabelProxy
trackDuration :: AttrLabelProxy "duration"
trackDuration = AttrLabelProxy
trackId :: AttrLabelProxy "id"
trackId = AttrLabelProxy
trackMixing :: AttrLabelProxy "mixing"
trackMixing = AttrLabelProxy
trackRestrictionCaps :: AttrLabelProxy "restrictionCaps"
trackRestrictionCaps = AttrLabelProxy
trackTrackType :: AttrLabelProxy "trackType"
trackTrackType = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Track = TrackSignalList
type TrackSignalList = ('[ '("childAdded", Gst.ChildProxy.ChildProxyChildAddedSignalInfo), '("childRemoved", Gst.ChildProxy.ChildProxyChildRemovedSignalInfo), '("commited", TrackCommitedSignalInfo), '("deepElementAdded", Gst.Bin.BinDeepElementAddedSignalInfo), '("deepElementRemoved", Gst.Bin.BinDeepElementRemovedSignalInfo), '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("doLatency", Gst.Bin.BinDoLatencySignalInfo), '("elementAdded", Gst.Bin.BinElementAddedSignalInfo), '("elementRemoved", Gst.Bin.BinElementRemovedSignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("notifyMeta", GES.MetaContainer.MetaContainerNotifyMetaSignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo), '("trackElementAdded", TrackTrackElementAddedSignalInfo), '("trackElementRemoved", TrackTrackElementRemovedSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "ges_track_new" ges_track_new ::
CUInt ->
Ptr Gst.Caps.Caps ->
IO (Ptr Track)
trackNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
[GES.Flags.TrackType]
-> Gst.Caps.Caps
-> m Track
trackNew :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
[TrackType] -> Caps -> m Track
trackNew [TrackType]
type_ Caps
caps = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let type_' :: CUInt
type_' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [TrackType]
type_
Ptr Caps
caps' <- forall a. (HasCallStack, GBoxed a) => a -> IO (Ptr a)
B.ManagedPtr.disownBoxed Caps
caps
Ptr Track
result <- CUInt -> Ptr Caps -> IO (Ptr Track)
ges_track_new CUInt
type_' Ptr Caps
caps'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackNew" Ptr Track
result
Track
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Track -> Track
Track) Ptr Track
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Caps
caps
forall (m :: * -> *) a. Monad m => a -> m a
return Track
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "ges_track_add_element" ges_track_add_element ::
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
IO CInt
trackAddElement ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) =>
a
-> b
-> m Bool
trackAddElement :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrack a, IsTrackElement b) =>
a -> b -> m Bool
trackAddElement a
track b
object = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr TrackElement
object' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
object
CInt
result <- Ptr Track -> Ptr TrackElement -> IO CInt
ges_track_add_element Ptr Track
track' Ptr TrackElement
object'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
object
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackAddElementMethodInfo
instance (signature ~ (b -> m Bool), MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) => O.OverloadedMethod TrackAddElementMethodInfo a signature where
overloadedMethod = trackAddElement
instance O.OverloadedMethodInfo TrackAddElementMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackAddElement",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackAddElement"
})
#endif
foreign import ccall "ges_track_add_element_full" ges_track_add_element_full ::
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
Ptr (Ptr GError) ->
IO CInt
trackAddElementFull ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) =>
a
-> b
-> m ()
trackAddElementFull :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrack a, IsTrackElement b) =>
a -> b -> m ()
trackAddElementFull a
track b
object = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr TrackElement
object' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
object
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Track -> Ptr TrackElement -> Ptr (Ptr GError) -> IO CInt
ges_track_add_element_full Ptr Track
track' Ptr TrackElement
object'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
object
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data TrackAddElementFullMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) => O.OverloadedMethod TrackAddElementFullMethodInfo a signature where
overloadedMethod = trackAddElementFull
instance O.OverloadedMethodInfo TrackAddElementFullMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackAddElementFull",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackAddElementFull"
})
#endif
foreign import ccall "ges_track_commit" ges_track_commit ::
Ptr Track ->
IO CInt
trackCommit ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m Bool
trackCommit :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m Bool
trackCommit a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
CInt
result <- Ptr Track -> IO CInt
ges_track_commit Ptr Track
track'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackCommitMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrack a) => O.OverloadedMethod TrackCommitMethodInfo a signature where
overloadedMethod = trackCommit
instance O.OverloadedMethodInfo TrackCommitMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackCommit",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackCommit"
})
#endif
foreign import ccall "ges_track_get_caps" ges_track_get_caps ::
Ptr Track ->
IO (Ptr Gst.Caps.Caps)
trackGetCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m Gst.Caps.Caps
trackGetCaps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m Caps
trackGetCaps a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Caps
result <- Ptr Track -> IO (Ptr Caps)
ges_track_get_caps Ptr Track
track'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackGetCaps" Ptr Caps
result
Caps
result' <- (forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr Caps -> Caps
Gst.Caps.Caps) Ptr Caps
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return Caps
result'
#if defined(ENABLE_OVERLOADING)
data TrackGetCapsMethodInfo
instance (signature ~ (m Gst.Caps.Caps), MonadIO m, IsTrack a) => O.OverloadedMethod TrackGetCapsMethodInfo a signature where
overloadedMethod = trackGetCaps
instance O.OverloadedMethodInfo TrackGetCapsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackGetCaps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackGetCaps"
})
#endif
foreign import ccall "ges_track_get_elements" ges_track_get_elements ::
Ptr Track ->
IO (Ptr (GList (Ptr GES.TrackElement.TrackElement)))
trackGetElements ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m [GES.TrackElement.TrackElement]
trackGetElements :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m [TrackElement]
trackGetElements a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr (GList (Ptr TrackElement))
result <- Ptr Track -> IO (Ptr (GList (Ptr TrackElement)))
ges_track_get_elements Ptr Track
track'
[Ptr TrackElement]
result' <- forall a. Ptr (GList (Ptr a)) -> IO [Ptr a]
unpackGList Ptr (GList (Ptr TrackElement))
result
[TrackElement]
result'' <- forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
mapM (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr TrackElement -> TrackElement
GES.TrackElement.TrackElement) [Ptr TrackElement]
result'
forall a. Ptr (GList a) -> IO ()
g_list_free Ptr (GList (Ptr TrackElement))
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return [TrackElement]
result''
#if defined(ENABLE_OVERLOADING)
data TrackGetElementsMethodInfo
instance (signature ~ (m [GES.TrackElement.TrackElement]), MonadIO m, IsTrack a) => O.OverloadedMethod TrackGetElementsMethodInfo a signature where
overloadedMethod = trackGetElements
instance O.OverloadedMethodInfo TrackGetElementsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackGetElements",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackGetElements"
})
#endif
foreign import ccall "ges_track_get_mixing" ges_track_get_mixing ::
Ptr Track ->
IO CInt
trackGetMixing ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m Bool
trackGetMixing :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m Bool
trackGetMixing a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
CInt
result <- Ptr Track -> IO CInt
ges_track_get_mixing Ptr Track
track'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackGetMixingMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsTrack a) => O.OverloadedMethod TrackGetMixingMethodInfo a signature where
overloadedMethod = trackGetMixing
instance O.OverloadedMethodInfo TrackGetMixingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackGetMixing",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackGetMixing"
})
#endif
foreign import ccall "ges_track_get_restriction_caps" ges_track_get_restriction_caps ::
Ptr Track ->
IO (Ptr Gst.Caps.Caps)
trackGetRestrictionCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m Gst.Caps.Caps
trackGetRestrictionCaps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m Caps
trackGetRestrictionCaps a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Caps
result <- Ptr Track -> IO (Ptr Caps)
ges_track_get_restriction_caps Ptr Track
track'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"trackGetRestrictionCaps" Ptr Caps
result
Caps
result' <- (forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr Caps -> Caps
Gst.Caps.Caps) Ptr Caps
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return Caps
result'
#if defined(ENABLE_OVERLOADING)
data TrackGetRestrictionCapsMethodInfo
instance (signature ~ (m Gst.Caps.Caps), MonadIO m, IsTrack a) => O.OverloadedMethod TrackGetRestrictionCapsMethodInfo a signature where
overloadedMethod = trackGetRestrictionCaps
instance O.OverloadedMethodInfo TrackGetRestrictionCapsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackGetRestrictionCaps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackGetRestrictionCaps"
})
#endif
foreign import ccall "ges_track_get_timeline" ges_track_get_timeline ::
Ptr Track ->
IO (Ptr GES.Timeline.Timeline)
trackGetTimeline ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> m (Maybe GES.Timeline.Timeline)
trackGetTimeline :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> m (Maybe Timeline)
trackGetTimeline a
track = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Timeline
result <- Ptr Track -> IO (Ptr Timeline)
ges_track_get_timeline Ptr Track
track'
Maybe Timeline
maybeResult <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr Timeline
result forall a b. (a -> b) -> a -> b
$ \Ptr Timeline
result' -> do
Timeline
result'' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Timeline -> Timeline
GES.Timeline.Timeline) Ptr Timeline
result'
forall (m :: * -> *) a. Monad m => a -> m a
return Timeline
result''
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Timeline
maybeResult
#if defined(ENABLE_OVERLOADING)
data TrackGetTimelineMethodInfo
instance (signature ~ (m (Maybe GES.Timeline.Timeline)), MonadIO m, IsTrack a) => O.OverloadedMethod TrackGetTimelineMethodInfo a signature where
overloadedMethod = trackGetTimeline
instance O.OverloadedMethodInfo TrackGetTimelineMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackGetTimeline",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackGetTimeline"
})
#endif
foreign import ccall "ges_track_remove_element" ges_track_remove_element ::
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
IO CInt
trackRemoveElement ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) =>
a
-> b
-> m Bool
trackRemoveElement :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrack a, IsTrackElement b) =>
a -> b -> m Bool
trackRemoveElement a
track b
object = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr TrackElement
object' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
object
CInt
result <- Ptr Track -> Ptr TrackElement -> IO CInt
ges_track_remove_element Ptr Track
track' Ptr TrackElement
object'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
object
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data TrackRemoveElementMethodInfo
instance (signature ~ (b -> m Bool), MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) => O.OverloadedMethod TrackRemoveElementMethodInfo a signature where
overloadedMethod = trackRemoveElement
instance O.OverloadedMethodInfo TrackRemoveElementMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackRemoveElement",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackRemoveElement"
})
#endif
foreign import ccall "ges_track_remove_element_full" ges_track_remove_element_full ::
Ptr Track ->
Ptr GES.TrackElement.TrackElement ->
Ptr (Ptr GError) ->
IO CInt
trackRemoveElementFull ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) =>
a
-> b
-> m ()
trackRemoveElementFull :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrack a, IsTrackElement b) =>
a -> b -> m ()
trackRemoveElementFull a
track b
object = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr TrackElement
object' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
object
forall a b. IO a -> IO b -> IO a
onException (do
CInt
_ <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr Track -> Ptr TrackElement -> Ptr (Ptr GError) -> IO CInt
ges_track_remove_element_full Ptr Track
track' Ptr TrackElement
object'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
object
forall (m :: * -> *) a. Monad m => a -> m a
return ()
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data TrackRemoveElementFullMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsTrack a, GES.TrackElement.IsTrackElement b) => O.OverloadedMethod TrackRemoveElementFullMethodInfo a signature where
overloadedMethod = trackRemoveElementFull
instance O.OverloadedMethodInfo TrackRemoveElementFullMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackRemoveElementFull",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackRemoveElementFull"
})
#endif
foreign import ccall "ges_track_set_mixing" ges_track_set_mixing ::
Ptr Track ->
CInt ->
IO ()
trackSetMixing ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> Bool
-> m ()
trackSetMixing :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> Bool -> m ()
trackSetMixing a
track Bool
mixing = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
let mixing' :: CInt
mixing' = (forall a b. (Integral a, Num b) => a -> b
fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
fromEnum) Bool
mixing
Ptr Track -> CInt -> IO ()
ges_track_set_mixing Ptr Track
track' CInt
mixing'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackSetMixingMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsTrack a) => O.OverloadedMethod TrackSetMixingMethodInfo a signature where
overloadedMethod = trackSetMixing
instance O.OverloadedMethodInfo TrackSetMixingMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackSetMixing",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackSetMixing"
})
#endif
foreign import ccall "ges_track_set_restriction_caps" ges_track_set_restriction_caps ::
Ptr Track ->
Ptr Gst.Caps.Caps ->
IO ()
trackSetRestrictionCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> Gst.Caps.Caps
-> m ()
trackSetRestrictionCaps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> Caps -> m ()
trackSetRestrictionCaps a
track Caps
caps = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Caps
caps' <- forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Caps
caps
Ptr Track -> Ptr Caps -> IO ()
ges_track_set_restriction_caps Ptr Track
track' Ptr Caps
caps'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Caps
caps
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackSetRestrictionCapsMethodInfo
instance (signature ~ (Gst.Caps.Caps -> m ()), MonadIO m, IsTrack a) => O.OverloadedMethod TrackSetRestrictionCapsMethodInfo a signature where
overloadedMethod = trackSetRestrictionCaps
instance O.OverloadedMethodInfo TrackSetRestrictionCapsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackSetRestrictionCaps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackSetRestrictionCaps"
})
#endif
foreign import ccall "ges_track_set_timeline" ges_track_set_timeline ::
Ptr Track ->
Ptr GES.Timeline.Timeline ->
IO ()
trackSetTimeline ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a, GES.Timeline.IsTimeline b) =>
a
-> b
-> m ()
trackSetTimeline :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsTrack a, IsTimeline b) =>
a -> b -> m ()
trackSetTimeline a
track b
timeline = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Timeline
timeline' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
timeline
Ptr Track -> Ptr Timeline -> IO ()
ges_track_set_timeline Ptr Track
track' Ptr Timeline
timeline'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
timeline
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackSetTimelineMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsTrack a, GES.Timeline.IsTimeline b) => O.OverloadedMethod TrackSetTimelineMethodInfo a signature where
overloadedMethod = trackSetTimeline
instance O.OverloadedMethodInfo TrackSetTimelineMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackSetTimeline",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackSetTimeline"
})
#endif
foreign import ccall "ges_track_update_restriction_caps" ges_track_update_restriction_caps ::
Ptr Track ->
Ptr Gst.Caps.Caps ->
IO ()
trackUpdateRestrictionCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsTrack a) =>
a
-> Gst.Caps.Caps
-> m ()
trackUpdateRestrictionCaps :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsTrack a) =>
a -> Caps -> m ()
trackUpdateRestrictionCaps a
track Caps
caps = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr Track
track' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
track
Ptr Caps
caps' <- forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Caps
caps
Ptr Track -> Ptr Caps -> IO ()
ges_track_update_restriction_caps Ptr Track
track' Ptr Caps
caps'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
track
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Caps
caps
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data TrackUpdateRestrictionCapsMethodInfo
instance (signature ~ (Gst.Caps.Caps -> m ()), MonadIO m, IsTrack a) => O.OverloadedMethod TrackUpdateRestrictionCapsMethodInfo a signature where
overloadedMethod = trackUpdateRestrictionCaps
instance O.OverloadedMethodInfo TrackUpdateRestrictionCapsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.Track.trackUpdateRestrictionCaps",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.1/docs/GI-GES-Objects-Track.html#v:trackUpdateRestrictionCaps"
})
#endif