{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GES.Objects.BaseEffect
(
BaseEffect(..) ,
IsBaseEffect ,
toBaseEffect ,
#if defined(ENABLE_OVERLOADING)
ResolveBaseEffectMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
BaseEffectIsTimeEffectMethodInfo ,
#endif
baseEffectIsTimeEffect ,
#if defined(ENABLE_OVERLOADING)
BaseEffectRegisterTimePropertyMethodInfo,
#endif
baseEffectRegisterTimeProperty ,
#if defined(ENABLE_OVERLOADING)
BaseEffectSetTimeTranslationFuncsMethodInfo,
#endif
baseEffectSetTimeTranslationFuncs ,
) 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 qualified GI.GES.Callbacks as GES.Callbacks
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.Operation as GES.Operation
import {-# SOURCE #-} qualified GI.GES.Objects.TimelineElement as GES.TimelineElement
import {-# SOURCE #-} qualified GI.GES.Objects.TrackElement as GES.TrackElement
import qualified GI.GLib.Callbacks as GLib.Callbacks
import qualified GI.GObject.Objects.Object as GObject.Object
newtype BaseEffect = BaseEffect (SP.ManagedPtr BaseEffect)
deriving (BaseEffect -> BaseEffect -> Bool
(BaseEffect -> BaseEffect -> Bool)
-> (BaseEffect -> BaseEffect -> Bool) -> Eq BaseEffect
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: BaseEffect -> BaseEffect -> Bool
== :: BaseEffect -> BaseEffect -> Bool
$c/= :: BaseEffect -> BaseEffect -> Bool
/= :: BaseEffect -> BaseEffect -> Bool
Eq)
instance SP.ManagedPtrNewtype BaseEffect where
toManagedPtr :: BaseEffect -> ManagedPtr BaseEffect
toManagedPtr (BaseEffect ManagedPtr BaseEffect
p) = ManagedPtr BaseEffect
p
foreign import ccall "ges_base_effect_get_type"
c_ges_base_effect_get_type :: IO B.Types.GType
instance B.Types.TypedObject BaseEffect where
glibType :: IO GType
glibType = IO GType
c_ges_base_effect_get_type
instance B.Types.GObject BaseEffect
class (SP.GObject o, O.IsDescendantOf BaseEffect o) => IsBaseEffect o
instance (SP.GObject o, O.IsDescendantOf BaseEffect o) => IsBaseEffect o
instance O.HasParentTypes BaseEffect
type instance O.ParentTypes BaseEffect = '[GES.Operation.Operation, GES.TrackElement.TrackElement, GES.TimelineElement.TimelineElement, GObject.Object.Object, GES.Extractable.Extractable, GES.MetaContainer.MetaContainer]
toBaseEffect :: (MIO.MonadIO m, IsBaseEffect o) => o -> m BaseEffect
toBaseEffect :: forall (m :: * -> *) o.
(MonadIO m, IsBaseEffect o) =>
o -> m BaseEffect
toBaseEffect = IO BaseEffect -> m BaseEffect
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO BaseEffect -> m BaseEffect)
-> (o -> IO BaseEffect) -> o -> m BaseEffect
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr BaseEffect -> BaseEffect) -> o -> IO BaseEffect
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr BaseEffect -> BaseEffect
BaseEffect
instance B.GValue.IsGValue (Maybe BaseEffect) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_ges_base_effect_get_type
gvalueSet_ :: Ptr GValue -> Maybe BaseEffect -> IO ()
gvalueSet_ Ptr GValue
gv Maybe BaseEffect
P.Nothing = Ptr GValue -> Ptr BaseEffect -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr BaseEffect
forall a. Ptr a
FP.nullPtr :: FP.Ptr BaseEffect)
gvalueSet_ Ptr GValue
gv (P.Just BaseEffect
obj) = BaseEffect -> (Ptr BaseEffect -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr BaseEffect
obj (Ptr GValue -> Ptr BaseEffect -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe BaseEffect)
gvalueGet_ Ptr GValue
gv = do
Ptr BaseEffect
ptr <- Ptr GValue -> IO (Ptr BaseEffect)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr BaseEffect)
if Ptr BaseEffect
ptr Ptr BaseEffect -> Ptr BaseEffect -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr BaseEffect
forall a. Ptr a
FP.nullPtr
then BaseEffect -> Maybe BaseEffect
forall a. a -> Maybe a
P.Just (BaseEffect -> Maybe BaseEffect)
-> IO BaseEffect -> IO (Maybe BaseEffect)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr BaseEffect -> BaseEffect)
-> Ptr BaseEffect -> IO BaseEffect
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr BaseEffect -> BaseEffect
BaseEffect Ptr BaseEffect
ptr
else Maybe BaseEffect -> IO (Maybe BaseEffect)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe BaseEffect
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveBaseEffectMethod (t :: Symbol) (o :: *) :: * where
ResolveBaseEffectMethod "addChildProperty" o = GES.TimelineElement.TimelineElementAddChildPropertyMethodInfo
ResolveBaseEffectMethod "addChildrenProps" o = GES.TrackElement.TrackElementAddChildrenPropsMethodInfo
ResolveBaseEffectMethod "addMetasFromString" o = GES.MetaContainer.MetaContainerAddMetasFromStringMethodInfo
ResolveBaseEffectMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveBaseEffectMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveBaseEffectMethod "checkMetaRegistered" o = GES.MetaContainer.MetaContainerCheckMetaRegisteredMethodInfo
ResolveBaseEffectMethod "clampControlSource" o = GES.TrackElement.TrackElementClampControlSourceMethodInfo
ResolveBaseEffectMethod "copy" o = GES.TimelineElement.TimelineElementCopyMethodInfo
ResolveBaseEffectMethod "edit" o = GES.TrackElement.TrackElementEditMethodInfo
ResolveBaseEffectMethod "editFull" o = GES.TimelineElement.TimelineElementEditFullMethodInfo
ResolveBaseEffectMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveBaseEffectMethod "foreach" o = GES.MetaContainer.MetaContainerForeachMethodInfo
ResolveBaseEffectMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveBaseEffectMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveBaseEffectMethod "hasInternalSource" o = GES.TrackElement.TrackElementHasInternalSourceMethodInfo
ResolveBaseEffectMethod "isActive" o = GES.TrackElement.TrackElementIsActiveMethodInfo
ResolveBaseEffectMethod "isCore" o = GES.TrackElement.TrackElementIsCoreMethodInfo
ResolveBaseEffectMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveBaseEffectMethod "isTimeEffect" o = BaseEffectIsTimeEffectMethodInfo
ResolveBaseEffectMethod "listChildrenProperties" o = GES.TrackElement.TrackElementListChildrenPropertiesMethodInfo
ResolveBaseEffectMethod "lookupChild" o = GES.TrackElement.TrackElementLookupChildMethodInfo
ResolveBaseEffectMethod "metasToString" o = GES.MetaContainer.MetaContainerMetasToStringMethodInfo
ResolveBaseEffectMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveBaseEffectMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveBaseEffectMethod "paste" o = GES.TimelineElement.TimelineElementPasteMethodInfo
ResolveBaseEffectMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveBaseEffectMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveBaseEffectMethod "registerMeta" o = GES.MetaContainer.MetaContainerRegisterMetaMethodInfo
ResolveBaseEffectMethod "registerMetaBoolean" o = GES.MetaContainer.MetaContainerRegisterMetaBooleanMethodInfo
ResolveBaseEffectMethod "registerMetaDate" o = GES.MetaContainer.MetaContainerRegisterMetaDateMethodInfo
ResolveBaseEffectMethod "registerMetaDateTime" o = GES.MetaContainer.MetaContainerRegisterMetaDateTimeMethodInfo
ResolveBaseEffectMethod "registerMetaDouble" o = GES.MetaContainer.MetaContainerRegisterMetaDoubleMethodInfo
ResolveBaseEffectMethod "registerMetaFloat" o = GES.MetaContainer.MetaContainerRegisterMetaFloatMethodInfo
ResolveBaseEffectMethod "registerMetaInt" o = GES.MetaContainer.MetaContainerRegisterMetaIntMethodInfo
ResolveBaseEffectMethod "registerMetaInt64" o = GES.MetaContainer.MetaContainerRegisterMetaInt64MethodInfo
ResolveBaseEffectMethod "registerMetaString" o = GES.MetaContainer.MetaContainerRegisterMetaStringMethodInfo
ResolveBaseEffectMethod "registerMetaUint" o = GES.MetaContainer.MetaContainerRegisterMetaUintMethodInfo
ResolveBaseEffectMethod "registerMetaUint64" o = GES.MetaContainer.MetaContainerRegisterMetaUint64MethodInfo
ResolveBaseEffectMethod "registerStaticMeta" o = GES.MetaContainer.MetaContainerRegisterStaticMetaMethodInfo
ResolveBaseEffectMethod "registerTimeProperty" o = BaseEffectRegisterTimePropertyMethodInfo
ResolveBaseEffectMethod "removeChildProperty" o = GES.TimelineElement.TimelineElementRemoveChildPropertyMethodInfo
ResolveBaseEffectMethod "removeControlBinding" o = GES.TrackElement.TrackElementRemoveControlBindingMethodInfo
ResolveBaseEffectMethod "ripple" o = GES.TimelineElement.TimelineElementRippleMethodInfo
ResolveBaseEffectMethod "rippleEnd" o = GES.TimelineElement.TimelineElementRippleEndMethodInfo
ResolveBaseEffectMethod "rollEnd" o = GES.TimelineElement.TimelineElementRollEndMethodInfo
ResolveBaseEffectMethod "rollStart" o = GES.TimelineElement.TimelineElementRollStartMethodInfo
ResolveBaseEffectMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveBaseEffectMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveBaseEffectMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveBaseEffectMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveBaseEffectMethod "trim" o = GES.TimelineElement.TimelineElementTrimMethodInfo
ResolveBaseEffectMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveBaseEffectMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveBaseEffectMethod "getAllControlBindings" o = GES.TrackElement.TrackElementGetAllControlBindingsMethodInfo
ResolveBaseEffectMethod "getAsset" o = GES.Extractable.ExtractableGetAssetMethodInfo
ResolveBaseEffectMethod "getAutoClampControlSources" o = GES.TrackElement.TrackElementGetAutoClampControlSourcesMethodInfo
ResolveBaseEffectMethod "getBoolean" o = GES.MetaContainer.MetaContainerGetBooleanMethodInfo
ResolveBaseEffectMethod "getChildProperty" o = GES.TimelineElement.TimelineElementGetChildPropertyMethodInfo
ResolveBaseEffectMethod "getChildPropertyByPspec" o = GES.TimelineElement.TimelineElementGetChildPropertyByPspecMethodInfo
ResolveBaseEffectMethod "getControlBinding" o = GES.TrackElement.TrackElementGetControlBindingMethodInfo
ResolveBaseEffectMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveBaseEffectMethod "getDate" o = GES.MetaContainer.MetaContainerGetDateMethodInfo
ResolveBaseEffectMethod "getDateTime" o = GES.MetaContainer.MetaContainerGetDateTimeMethodInfo
ResolveBaseEffectMethod "getDouble" o = GES.MetaContainer.MetaContainerGetDoubleMethodInfo
ResolveBaseEffectMethod "getDuration" o = GES.TimelineElement.TimelineElementGetDurationMethodInfo
ResolveBaseEffectMethod "getElement" o = GES.TrackElement.TrackElementGetElementMethodInfo
ResolveBaseEffectMethod "getFloat" o = GES.MetaContainer.MetaContainerGetFloatMethodInfo
ResolveBaseEffectMethod "getGnlobject" o = GES.TrackElement.TrackElementGetGnlobjectMethodInfo
ResolveBaseEffectMethod "getId" o = GES.Extractable.ExtractableGetIdMethodInfo
ResolveBaseEffectMethod "getInpoint" o = GES.TimelineElement.TimelineElementGetInpointMethodInfo
ResolveBaseEffectMethod "getInt" o = GES.MetaContainer.MetaContainerGetIntMethodInfo
ResolveBaseEffectMethod "getInt64" o = GES.MetaContainer.MetaContainerGetInt64MethodInfo
ResolveBaseEffectMethod "getLayerPriority" o = GES.TimelineElement.TimelineElementGetLayerPriorityMethodInfo
ResolveBaseEffectMethod "getMarkerList" o = GES.MetaContainer.MetaContainerGetMarkerListMethodInfo
ResolveBaseEffectMethod "getMaxDuration" o = GES.TimelineElement.TimelineElementGetMaxDurationMethodInfo
ResolveBaseEffectMethod "getMeta" o = GES.MetaContainer.MetaContainerGetMetaMethodInfo
ResolveBaseEffectMethod "getName" o = GES.TimelineElement.TimelineElementGetNameMethodInfo
ResolveBaseEffectMethod "getNaturalFramerate" o = GES.TimelineElement.TimelineElementGetNaturalFramerateMethodInfo
ResolveBaseEffectMethod "getNleobject" o = GES.TrackElement.TrackElementGetNleobjectMethodInfo
ResolveBaseEffectMethod "getParent" o = GES.TimelineElement.TimelineElementGetParentMethodInfo
ResolveBaseEffectMethod "getPriority" o = GES.TimelineElement.TimelineElementGetPriorityMethodInfo
ResolveBaseEffectMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveBaseEffectMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveBaseEffectMethod "getStart" o = GES.TimelineElement.TimelineElementGetStartMethodInfo
ResolveBaseEffectMethod "getString" o = GES.MetaContainer.MetaContainerGetStringMethodInfo
ResolveBaseEffectMethod "getTimeline" o = GES.TimelineElement.TimelineElementGetTimelineMethodInfo
ResolveBaseEffectMethod "getToplevelParent" o = GES.TimelineElement.TimelineElementGetToplevelParentMethodInfo
ResolveBaseEffectMethod "getTrack" o = GES.TrackElement.TrackElementGetTrackMethodInfo
ResolveBaseEffectMethod "getTrackType" o = GES.TrackElement.TrackElementGetTrackTypeMethodInfo
ResolveBaseEffectMethod "getTrackTypes" o = GES.TimelineElement.TimelineElementGetTrackTypesMethodInfo
ResolveBaseEffectMethod "getUint" o = GES.MetaContainer.MetaContainerGetUintMethodInfo
ResolveBaseEffectMethod "getUint64" o = GES.MetaContainer.MetaContainerGetUint64MethodInfo
ResolveBaseEffectMethod "setActive" o = GES.TrackElement.TrackElementSetActiveMethodInfo
ResolveBaseEffectMethod "setAsset" o = GES.Extractable.ExtractableSetAssetMethodInfo
ResolveBaseEffectMethod "setAutoClampControlSources" o = GES.TrackElement.TrackElementSetAutoClampControlSourcesMethodInfo
ResolveBaseEffectMethod "setBoolean" o = GES.MetaContainer.MetaContainerSetBooleanMethodInfo
ResolveBaseEffectMethod "setChildProperty" o = GES.TimelineElement.TimelineElementSetChildPropertyMethodInfo
ResolveBaseEffectMethod "setChildPropertyByPspec" o = GES.TimelineElement.TimelineElementSetChildPropertyByPspecMethodInfo
ResolveBaseEffectMethod "setChildPropertyFull" o = GES.TimelineElement.TimelineElementSetChildPropertyFullMethodInfo
ResolveBaseEffectMethod "setControlSource" o = GES.TrackElement.TrackElementSetControlSourceMethodInfo
ResolveBaseEffectMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveBaseEffectMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveBaseEffectMethod "setDate" o = GES.MetaContainer.MetaContainerSetDateMethodInfo
ResolveBaseEffectMethod "setDateTime" o = GES.MetaContainer.MetaContainerSetDateTimeMethodInfo
ResolveBaseEffectMethod "setDouble" o = GES.MetaContainer.MetaContainerSetDoubleMethodInfo
ResolveBaseEffectMethod "setDuration" o = GES.TimelineElement.TimelineElementSetDurationMethodInfo
ResolveBaseEffectMethod "setFloat" o = GES.MetaContainer.MetaContainerSetFloatMethodInfo
ResolveBaseEffectMethod "setHasInternalSource" o = GES.TrackElement.TrackElementSetHasInternalSourceMethodInfo
ResolveBaseEffectMethod "setInpoint" o = GES.TimelineElement.TimelineElementSetInpointMethodInfo
ResolveBaseEffectMethod "setInt" o = GES.MetaContainer.MetaContainerSetIntMethodInfo
ResolveBaseEffectMethod "setInt64" o = GES.MetaContainer.MetaContainerSetInt64MethodInfo
ResolveBaseEffectMethod "setMarkerList" o = GES.MetaContainer.MetaContainerSetMarkerListMethodInfo
ResolveBaseEffectMethod "setMaxDuration" o = GES.TimelineElement.TimelineElementSetMaxDurationMethodInfo
ResolveBaseEffectMethod "setMeta" o = GES.MetaContainer.MetaContainerSetMetaMethodInfo
ResolveBaseEffectMethod "setName" o = GES.TimelineElement.TimelineElementSetNameMethodInfo
ResolveBaseEffectMethod "setParent" o = GES.TimelineElement.TimelineElementSetParentMethodInfo
ResolveBaseEffectMethod "setPriority" o = GES.TimelineElement.TimelineElementSetPriorityMethodInfo
ResolveBaseEffectMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveBaseEffectMethod "setStart" o = GES.TimelineElement.TimelineElementSetStartMethodInfo
ResolveBaseEffectMethod "setString" o = GES.MetaContainer.MetaContainerSetStringMethodInfo
ResolveBaseEffectMethod "setTimeTranslationFuncs" o = BaseEffectSetTimeTranslationFuncsMethodInfo
ResolveBaseEffectMethod "setTimeline" o = GES.TimelineElement.TimelineElementSetTimelineMethodInfo
ResolveBaseEffectMethod "setTrackType" o = GES.TrackElement.TrackElementSetTrackTypeMethodInfo
ResolveBaseEffectMethod "setUint" o = GES.MetaContainer.MetaContainerSetUintMethodInfo
ResolveBaseEffectMethod "setUint64" o = GES.MetaContainer.MetaContainerSetUint64MethodInfo
ResolveBaseEffectMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveBaseEffectMethod t BaseEffect, O.OverloadedMethod info BaseEffect p) => OL.IsLabel t (BaseEffect -> 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 ~ ResolveBaseEffectMethod t BaseEffect, O.OverloadedMethod info BaseEffect p, R.HasField t BaseEffect p) => R.HasField t BaseEffect p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveBaseEffectMethod t BaseEffect, O.OverloadedMethodInfo info BaseEffect) => OL.IsLabel t (O.MethodProxy info BaseEffect) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList BaseEffect
type instance O.AttributeList BaseEffect = BaseEffectAttributeList
type BaseEffectAttributeList = ('[ '("active", GES.TrackElement.TrackElementActivePropertyInfo), '("autoClampControlSources", GES.TrackElement.TrackElementAutoClampControlSourcesPropertyInfo), '("duration", GES.TimelineElement.TimelineElementDurationPropertyInfo), '("hasInternalSource", GES.TrackElement.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", GES.TrackElement.TrackElementTrackPropertyInfo), '("trackType", GES.TrackElement.TrackElementTrackTypePropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList BaseEffect = BaseEffectSignalList
type BaseEffectSignalList = ('[ '("childPropertyAdded", GES.TimelineElement.TimelineElementChildPropertyAddedSignalInfo), '("childPropertyRemoved", GES.TimelineElement.TimelineElementChildPropertyRemovedSignalInfo), '("controlBindingAdded", GES.TrackElement.TrackElementControlBindingAddedSignalInfo), '("controlBindingRemoved", GES.TrackElement.TrackElementControlBindingRemovedSignalInfo), '("deepNotify", GES.TimelineElement.TimelineElementDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("notifyMeta", GES.MetaContainer.MetaContainerNotifyMetaSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "ges_base_effect_is_time_effect" ges_base_effect_is_time_effect ::
Ptr BaseEffect ->
IO CInt
baseEffectIsTimeEffect ::
(B.CallStack.HasCallStack, MonadIO m, IsBaseEffect a) =>
a
-> m Bool
baseEffectIsTimeEffect :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsBaseEffect a) =>
a -> m Bool
baseEffectIsTimeEffect a
effect = 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 BaseEffect
effect' <- a -> IO (Ptr BaseEffect)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
effect
CInt
result <- Ptr BaseEffect -> IO CInt
ges_base_effect_is_time_effect Ptr BaseEffect
effect'
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
effect
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data BaseEffectIsTimeEffectMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsBaseEffect a) => O.OverloadedMethod BaseEffectIsTimeEffectMethodInfo a signature where
overloadedMethod = baseEffectIsTimeEffect
instance O.OverloadedMethodInfo BaseEffectIsTimeEffectMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.BaseEffect.baseEffectIsTimeEffect",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-BaseEffect.html#v:baseEffectIsTimeEffect"
})
#endif
foreign import ccall "ges_base_effect_register_time_property" ges_base_effect_register_time_property ::
Ptr BaseEffect ->
CString ->
IO CInt
baseEffectRegisterTimeProperty ::
(B.CallStack.HasCallStack, MonadIO m, IsBaseEffect a) =>
a
-> T.Text
-> m Bool
baseEffectRegisterTimeProperty :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsBaseEffect a) =>
a -> Text -> m Bool
baseEffectRegisterTimeProperty a
effect Text
childPropertyName = 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 BaseEffect
effect' <- a -> IO (Ptr BaseEffect)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
effect
CString
childPropertyName' <- Text -> IO CString
textToCString Text
childPropertyName
CInt
result <- Ptr BaseEffect -> CString -> IO CInt
ges_base_effect_register_time_property Ptr BaseEffect
effect' CString
childPropertyName'
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
effect
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
childPropertyName'
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data BaseEffectRegisterTimePropertyMethodInfo
instance (signature ~ (T.Text -> m Bool), MonadIO m, IsBaseEffect a) => O.OverloadedMethod BaseEffectRegisterTimePropertyMethodInfo a signature where
overloadedMethod = baseEffectRegisterTimeProperty
instance O.OverloadedMethodInfo BaseEffectRegisterTimePropertyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.BaseEffect.baseEffectRegisterTimeProperty",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-BaseEffect.html#v:baseEffectRegisterTimeProperty"
})
#endif
foreign import ccall "ges_base_effect_set_time_translation_funcs" ges_base_effect_set_time_translation_funcs ::
Ptr BaseEffect ->
FunPtr GES.Callbacks.C_BaseEffectTimeTranslationFunc ->
FunPtr GES.Callbacks.C_BaseEffectTimeTranslationFunc ->
Ptr () ->
FunPtr GLib.Callbacks.C_DestroyNotify ->
IO CInt
baseEffectSetTimeTranslationFuncs ::
(B.CallStack.HasCallStack, MonadIO m, IsBaseEffect a) =>
a
-> Maybe (GES.Callbacks.BaseEffectTimeTranslationFunc)
-> Maybe (GES.Callbacks.BaseEffectTimeTranslationFunc)
-> m Bool
baseEffectSetTimeTranslationFuncs :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsBaseEffect a) =>
a
-> Maybe BaseEffectTimeTranslationFunc
-> Maybe BaseEffectTimeTranslationFunc
-> m Bool
baseEffectSetTimeTranslationFuncs a
effect Maybe BaseEffectTimeTranslationFunc
sourceToSinkFunc Maybe BaseEffectTimeTranslationFunc
sinkToSourceFunc = 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 BaseEffect
effect' <- a -> IO (Ptr BaseEffect)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
effect
FunPtr C_BaseEffectTimeTranslationFunc
maybeSourceToSinkFunc <- case Maybe BaseEffectTimeTranslationFunc
sourceToSinkFunc of
Maybe BaseEffectTimeTranslationFunc
Nothing -> FunPtr C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Ptr Any -> FunPtr C_BaseEffectTimeTranslationFunc
forall a b. Ptr a -> FunPtr b
castPtrToFunPtr Ptr Any
forall a. Ptr a
nullPtr)
Just BaseEffectTimeTranslationFunc
jSourceToSinkFunc -> do
FunPtr C_BaseEffectTimeTranslationFunc
jSourceToSinkFunc' <- C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
GES.Callbacks.mk_BaseEffectTimeTranslationFunc (Maybe (Ptr (FunPtr C_BaseEffectTimeTranslationFunc))
-> BaseEffectTimeTranslationFunc_WithClosures
-> C_BaseEffectTimeTranslationFunc
GES.Callbacks.wrap_BaseEffectTimeTranslationFunc Maybe (Ptr (FunPtr C_BaseEffectTimeTranslationFunc))
forall a. Maybe a
Nothing (BaseEffectTimeTranslationFunc
-> BaseEffectTimeTranslationFunc_WithClosures
GES.Callbacks.drop_closures_BaseEffectTimeTranslationFunc BaseEffectTimeTranslationFunc
jSourceToSinkFunc))
FunPtr C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_BaseEffectTimeTranslationFunc
jSourceToSinkFunc'
FunPtr C_BaseEffectTimeTranslationFunc
maybeSinkToSourceFunc <- case Maybe BaseEffectTimeTranslationFunc
sinkToSourceFunc of
Maybe BaseEffectTimeTranslationFunc
Nothing -> FunPtr C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Ptr Any -> FunPtr C_BaseEffectTimeTranslationFunc
forall a b. Ptr a -> FunPtr b
castPtrToFunPtr Ptr Any
forall a. Ptr a
nullPtr)
Just BaseEffectTimeTranslationFunc
jSinkToSourceFunc -> do
FunPtr C_BaseEffectTimeTranslationFunc
jSinkToSourceFunc' <- C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
GES.Callbacks.mk_BaseEffectTimeTranslationFunc (Maybe (Ptr (FunPtr C_BaseEffectTimeTranslationFunc))
-> BaseEffectTimeTranslationFunc_WithClosures
-> C_BaseEffectTimeTranslationFunc
GES.Callbacks.wrap_BaseEffectTimeTranslationFunc Maybe (Ptr (FunPtr C_BaseEffectTimeTranslationFunc))
forall a. Maybe a
Nothing (BaseEffectTimeTranslationFunc
-> BaseEffectTimeTranslationFunc_WithClosures
GES.Callbacks.drop_closures_BaseEffectTimeTranslationFunc BaseEffectTimeTranslationFunc
jSinkToSourceFunc))
FunPtr C_BaseEffectTimeTranslationFunc
-> IO (FunPtr C_BaseEffectTimeTranslationFunc)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_BaseEffectTimeTranslationFunc
jSinkToSourceFunc'
let userData :: Ptr ()
userData = FunPtr C_BaseEffectTimeTranslationFunc -> Ptr ()
forall a b. FunPtr a -> Ptr b
castFunPtrToPtr FunPtr C_BaseEffectTimeTranslationFunc
maybeSinkToSourceFunc
let destroy :: FunPtr (Ptr a -> IO ())
destroy = FunPtr (Ptr a -> IO ())
forall a. FunPtr (Ptr a -> IO ())
SP.safeFreeFunPtrPtr
CInt
result <- Ptr BaseEffect
-> FunPtr C_BaseEffectTimeTranslationFunc
-> FunPtr C_BaseEffectTimeTranslationFunc
-> Ptr ()
-> FunPtr C_DestroyNotify
-> IO CInt
ges_base_effect_set_time_translation_funcs Ptr BaseEffect
effect' FunPtr C_BaseEffectTimeTranslationFunc
maybeSourceToSinkFunc FunPtr C_BaseEffectTimeTranslationFunc
maybeSinkToSourceFunc Ptr ()
userData FunPtr C_DestroyNotify
forall a. FunPtr (Ptr a -> IO ())
destroy
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
effect
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data BaseEffectSetTimeTranslationFuncsMethodInfo
instance (signature ~ (Maybe (GES.Callbacks.BaseEffectTimeTranslationFunc) -> Maybe (GES.Callbacks.BaseEffectTimeTranslationFunc) -> m Bool), MonadIO m, IsBaseEffect a) => O.OverloadedMethod BaseEffectSetTimeTranslationFuncsMethodInfo a signature where
overloadedMethod = baseEffectSetTimeTranslationFuncs
instance O.OverloadedMethodInfo BaseEffectSetTimeTranslationFuncsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GES.Objects.BaseEffect.baseEffectSetTimeTranslationFuncs",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-ges-1.0.2/docs/GI-GES-Objects-BaseEffect.html#v:baseEffectSetTimeTranslationFuncs"
})
#endif