{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstVideo.Objects.VideoSink
(
VideoSink(..) ,
IsVideoSink ,
toVideoSink ,
#if defined(ENABLE_OVERLOADING)
ResolveVideoSinkMethod ,
#endif
videoSinkCenterRect ,
#if defined(ENABLE_OVERLOADING)
VideoSinkShowPrerollFramePropertyInfo ,
#endif
constructVideoSinkShowPrerollFrame ,
getVideoSinkShowPrerollFrame ,
setVideoSinkShowPrerollFrame ,
#if defined(ENABLE_OVERLOADING)
videoSinkShowPrerollFrame ,
#endif
) 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.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.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.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Objects.Element as Gst.Element
import qualified GI.Gst.Objects.Object as Gst.Object
import qualified GI.GstBase.Objects.BaseSink as GstBase.BaseSink
import {-# SOURCE #-} qualified GI.GstVideo.Structs.VideoRectangle as GstVideo.VideoRectangle
newtype VideoSink = VideoSink (SP.ManagedPtr VideoSink)
deriving (VideoSink -> VideoSink -> Bool
(VideoSink -> VideoSink -> Bool)
-> (VideoSink -> VideoSink -> Bool) -> Eq VideoSink
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VideoSink -> VideoSink -> Bool
$c/= :: VideoSink -> VideoSink -> Bool
== :: VideoSink -> VideoSink -> Bool
$c== :: VideoSink -> VideoSink -> Bool
Eq)
instance SP.ManagedPtrNewtype VideoSink where
toManagedPtr :: VideoSink -> ManagedPtr VideoSink
toManagedPtr (VideoSink ManagedPtr VideoSink
p) = ManagedPtr VideoSink
p
foreign import ccall "gst_video_sink_get_type"
c_gst_video_sink_get_type :: IO B.Types.GType
instance B.Types.TypedObject VideoSink where
glibType :: IO GType
glibType = IO GType
c_gst_video_sink_get_type
instance B.Types.GObject VideoSink
class (SP.GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
instance (SP.GObject o, O.IsDescendantOf VideoSink o) => IsVideoSink o
instance O.HasParentTypes VideoSink
type instance O.ParentTypes VideoSink = '[GstBase.BaseSink.BaseSink, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
toVideoSink :: (MIO.MonadIO m, IsVideoSink o) => o -> m VideoSink
toVideoSink :: forall (m :: * -> *) o.
(MonadIO m, IsVideoSink o) =>
o -> m VideoSink
toVideoSink = IO VideoSink -> m VideoSink
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO VideoSink -> m VideoSink)
-> (o -> IO VideoSink) -> o -> m VideoSink
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr VideoSink -> VideoSink) -> o -> IO VideoSink
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr VideoSink -> VideoSink
VideoSink
instance B.GValue.IsGValue (Maybe VideoSink) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gst_video_sink_get_type
gvalueSet_ :: Ptr GValue -> Maybe VideoSink -> IO ()
gvalueSet_ Ptr GValue
gv Maybe VideoSink
P.Nothing = Ptr GValue -> Ptr VideoSink -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr VideoSink
forall a. Ptr a
FP.nullPtr :: FP.Ptr VideoSink)
gvalueSet_ Ptr GValue
gv (P.Just VideoSink
obj) = VideoSink -> (Ptr VideoSink -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr VideoSink
obj (Ptr GValue -> Ptr VideoSink -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe VideoSink)
gvalueGet_ Ptr GValue
gv = do
Ptr VideoSink
ptr <- Ptr GValue -> IO (Ptr VideoSink)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr VideoSink)
if Ptr VideoSink
ptr Ptr VideoSink -> Ptr VideoSink -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr VideoSink
forall a. Ptr a
FP.nullPtr
then VideoSink -> Maybe VideoSink
forall a. a -> Maybe a
P.Just (VideoSink -> Maybe VideoSink)
-> IO VideoSink -> IO (Maybe VideoSink)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr VideoSink -> VideoSink)
-> Ptr VideoSink -> IO VideoSink
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr VideoSink -> VideoSink
VideoSink Ptr VideoSink
ptr
else Maybe VideoSink -> IO (Maybe VideoSink)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe VideoSink
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveVideoSinkMethod (t :: Symbol) (o :: *) :: * where
ResolveVideoSinkMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
ResolveVideoSinkMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveVideoSinkMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
ResolveVideoSinkMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
ResolveVideoSinkMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
ResolveVideoSinkMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveVideoSinkMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveVideoSinkMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
ResolveVideoSinkMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
ResolveVideoSinkMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
ResolveVideoSinkMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
ResolveVideoSinkMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveVideoSinkMethod "doPreroll" o = GstBase.BaseSink.BaseSinkDoPrerollMethodInfo
ResolveVideoSinkMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveVideoSinkMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
ResolveVideoSinkMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
ResolveVideoSinkMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
ResolveVideoSinkMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveVideoSinkMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveVideoSinkMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveVideoSinkMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveVideoSinkMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveVideoSinkMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveVideoSinkMethod "isAsyncEnabled" o = GstBase.BaseSink.BaseSinkIsAsyncEnabledMethodInfo
ResolveVideoSinkMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveVideoSinkMethod "isLastSampleEnabled" o = GstBase.BaseSink.BaseSinkIsLastSampleEnabledMethodInfo
ResolveVideoSinkMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
ResolveVideoSinkMethod "isQosEnabled" o = GstBase.BaseSink.BaseSinkIsQosEnabledMethodInfo
ResolveVideoSinkMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
ResolveVideoSinkMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
ResolveVideoSinkMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
ResolveVideoSinkMethod "link" o = Gst.Element.ElementLinkMethodInfo
ResolveVideoSinkMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
ResolveVideoSinkMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
ResolveVideoSinkMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
ResolveVideoSinkMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
ResolveVideoSinkMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
ResolveVideoSinkMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
ResolveVideoSinkMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
ResolveVideoSinkMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
ResolveVideoSinkMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveVideoSinkMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveVideoSinkMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
ResolveVideoSinkMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
ResolveVideoSinkMethod "query" o = Gst.Element.ElementQueryMethodInfo
ResolveVideoSinkMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
ResolveVideoSinkMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
ResolveVideoSinkMethod "queryLatency" o = GstBase.BaseSink.BaseSinkQueryLatencyMethodInfo
ResolveVideoSinkMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
ResolveVideoSinkMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveVideoSinkMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveVideoSinkMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
ResolveVideoSinkMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveVideoSinkMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
ResolveVideoSinkMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
ResolveVideoSinkMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
ResolveVideoSinkMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveVideoSinkMethod "seek" o = Gst.Element.ElementSeekMethodInfo
ResolveVideoSinkMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
ResolveVideoSinkMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
ResolveVideoSinkMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveVideoSinkMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveVideoSinkMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveVideoSinkMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
ResolveVideoSinkMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveVideoSinkMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveVideoSinkMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
ResolveVideoSinkMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
ResolveVideoSinkMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveVideoSinkMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveVideoSinkMethod "wait" o = GstBase.BaseSink.BaseSinkWaitMethodInfo
ResolveVideoSinkMethod "waitClock" o = GstBase.BaseSink.BaseSinkWaitClockMethodInfo
ResolveVideoSinkMethod "waitPreroll" o = GstBase.BaseSink.BaseSinkWaitPrerollMethodInfo
ResolveVideoSinkMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveVideoSinkMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
ResolveVideoSinkMethod "getBlocksize" o = GstBase.BaseSink.BaseSinkGetBlocksizeMethodInfo
ResolveVideoSinkMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
ResolveVideoSinkMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
ResolveVideoSinkMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
ResolveVideoSinkMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
ResolveVideoSinkMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
ResolveVideoSinkMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
ResolveVideoSinkMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
ResolveVideoSinkMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveVideoSinkMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveVideoSinkMethod "getCurrentClockTime" o = Gst.Element.ElementGetCurrentClockTimeMethodInfo
ResolveVideoSinkMethod "getCurrentRunningTime" o = Gst.Element.ElementGetCurrentRunningTimeMethodInfo
ResolveVideoSinkMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveVideoSinkMethod "getDropOutOfSegment" o = GstBase.BaseSink.BaseSinkGetDropOutOfSegmentMethodInfo
ResolveVideoSinkMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
ResolveVideoSinkMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveVideoSinkMethod "getLastSample" o = GstBase.BaseSink.BaseSinkGetLastSampleMethodInfo
ResolveVideoSinkMethod "getLatency" o = GstBase.BaseSink.BaseSinkGetLatencyMethodInfo
ResolveVideoSinkMethod "getMaxBitrate" o = GstBase.BaseSink.BaseSinkGetMaxBitrateMethodInfo
ResolveVideoSinkMethod "getMaxLateness" o = GstBase.BaseSink.BaseSinkGetMaxLatenessMethodInfo
ResolveVideoSinkMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
ResolveVideoSinkMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveVideoSinkMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
ResolveVideoSinkMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
ResolveVideoSinkMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveVideoSinkMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveVideoSinkMethod "getProcessingDeadline" o = GstBase.BaseSink.BaseSinkGetProcessingDeadlineMethodInfo
ResolveVideoSinkMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveVideoSinkMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveVideoSinkMethod "getRenderDelay" o = GstBase.BaseSink.BaseSinkGetRenderDelayMethodInfo
ResolveVideoSinkMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
ResolveVideoSinkMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
ResolveVideoSinkMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
ResolveVideoSinkMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
ResolveVideoSinkMethod "getStats" o = GstBase.BaseSink.BaseSinkGetStatsMethodInfo
ResolveVideoSinkMethod "getSync" o = GstBase.BaseSink.BaseSinkGetSyncMethodInfo
ResolveVideoSinkMethod "getThrottleTime" o = GstBase.BaseSink.BaseSinkGetThrottleTimeMethodInfo
ResolveVideoSinkMethod "getTsOffset" o = GstBase.BaseSink.BaseSinkGetTsOffsetMethodInfo
ResolveVideoSinkMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveVideoSinkMethod "setAsyncEnabled" o = GstBase.BaseSink.BaseSinkSetAsyncEnabledMethodInfo
ResolveVideoSinkMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
ResolveVideoSinkMethod "setBlocksize" o = GstBase.BaseSink.BaseSinkSetBlocksizeMethodInfo
ResolveVideoSinkMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
ResolveVideoSinkMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
ResolveVideoSinkMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
ResolveVideoSinkMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveVideoSinkMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveVideoSinkMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveVideoSinkMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveVideoSinkMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveVideoSinkMethod "setDropOutOfSegment" o = GstBase.BaseSink.BaseSinkSetDropOutOfSegmentMethodInfo
ResolveVideoSinkMethod "setLastSampleEnabled" o = GstBase.BaseSink.BaseSinkSetLastSampleEnabledMethodInfo
ResolveVideoSinkMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
ResolveVideoSinkMethod "setMaxBitrate" o = GstBase.BaseSink.BaseSinkSetMaxBitrateMethodInfo
ResolveVideoSinkMethod "setMaxLateness" o = GstBase.BaseSink.BaseSinkSetMaxLatenessMethodInfo
ResolveVideoSinkMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveVideoSinkMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveVideoSinkMethod "setProcessingDeadline" o = GstBase.BaseSink.BaseSinkSetProcessingDeadlineMethodInfo
ResolveVideoSinkMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveVideoSinkMethod "setQosEnabled" o = GstBase.BaseSink.BaseSinkSetQosEnabledMethodInfo
ResolveVideoSinkMethod "setRenderDelay" o = GstBase.BaseSink.BaseSinkSetRenderDelayMethodInfo
ResolveVideoSinkMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
ResolveVideoSinkMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
ResolveVideoSinkMethod "setSync" o = GstBase.BaseSink.BaseSinkSetSyncMethodInfo
ResolveVideoSinkMethod "setThrottleTime" o = GstBase.BaseSink.BaseSinkSetThrottleTimeMethodInfo
ResolveVideoSinkMethod "setTsOffset" o = GstBase.BaseSink.BaseSinkSetTsOffsetMethodInfo
ResolveVideoSinkMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveVideoSinkMethod t VideoSink, O.OverloadedMethod info VideoSink p) => OL.IsLabel t (VideoSink -> 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 ~ ResolveVideoSinkMethod t VideoSink, O.OverloadedMethod info VideoSink p, R.HasField t VideoSink p) => R.HasField t VideoSink p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveVideoSinkMethod t VideoSink, O.OverloadedMethodInfo info VideoSink) => OL.IsLabel t (O.MethodProxy info VideoSink) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
getVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> m Bool
getVideoSinkShowPrerollFrame :: forall (m :: * -> *) o. (MonadIO m, IsVideoSink o) => o -> m Bool
getVideoSinkShowPrerollFrame o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"show-preroll-frame"
setVideoSinkShowPrerollFrame :: (MonadIO m, IsVideoSink o) => o -> Bool -> m ()
setVideoSinkShowPrerollFrame :: forall (m :: * -> *) o.
(MonadIO m, IsVideoSink o) =>
o -> Bool -> m ()
setVideoSinkShowPrerollFrame o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"show-preroll-frame" Bool
val
constructVideoSinkShowPrerollFrame :: (IsVideoSink o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructVideoSinkShowPrerollFrame :: forall o (m :: * -> *).
(IsVideoSink o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructVideoSinkShowPrerollFrame Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"show-preroll-frame" Bool
val
#if defined(ENABLE_OVERLOADING)
data VideoSinkShowPrerollFramePropertyInfo
instance AttrInfo VideoSinkShowPrerollFramePropertyInfo where
type AttrAllowedOps VideoSinkShowPrerollFramePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint VideoSinkShowPrerollFramePropertyInfo = IsVideoSink
type AttrSetTypeConstraint VideoSinkShowPrerollFramePropertyInfo = (~) Bool
type AttrTransferTypeConstraint VideoSinkShowPrerollFramePropertyInfo = (~) Bool
type AttrTransferType VideoSinkShowPrerollFramePropertyInfo = Bool
type AttrGetType VideoSinkShowPrerollFramePropertyInfo = Bool
type AttrLabel VideoSinkShowPrerollFramePropertyInfo = "show-preroll-frame"
type AttrOrigin VideoSinkShowPrerollFramePropertyInfo = VideoSink
attrGet = getVideoSinkShowPrerollFrame
attrSet = setVideoSinkShowPrerollFrame
attrTransfer _ v = do
return v
attrConstruct = constructVideoSinkShowPrerollFrame
attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList VideoSink
type instance O.AttributeList VideoSink = VideoSinkAttributeList
type VideoSinkAttributeList = ('[ '("async", GstBase.BaseSink.BaseSinkAsyncPropertyInfo), '("blocksize", GstBase.BaseSink.BaseSinkBlocksizePropertyInfo), '("enableLastSample", GstBase.BaseSink.BaseSinkEnableLastSamplePropertyInfo), '("lastSample", GstBase.BaseSink.BaseSinkLastSamplePropertyInfo), '("maxBitrate", GstBase.BaseSink.BaseSinkMaxBitratePropertyInfo), '("maxLateness", GstBase.BaseSink.BaseSinkMaxLatenessPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("processingDeadline", GstBase.BaseSink.BaseSinkProcessingDeadlinePropertyInfo), '("qos", GstBase.BaseSink.BaseSinkQosPropertyInfo), '("renderDelay", GstBase.BaseSink.BaseSinkRenderDelayPropertyInfo), '("showPrerollFrame", VideoSinkShowPrerollFramePropertyInfo), '("stats", GstBase.BaseSink.BaseSinkStatsPropertyInfo), '("sync", GstBase.BaseSink.BaseSinkSyncPropertyInfo), '("throttleTime", GstBase.BaseSink.BaseSinkThrottleTimePropertyInfo), '("tsOffset", GstBase.BaseSink.BaseSinkTsOffsetPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
videoSinkShowPrerollFrame :: AttrLabelProxy "showPrerollFrame"
videoSinkShowPrerollFrame = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList VideoSink = VideoSinkSignalList
type VideoSinkSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gst_video_sink_center_rect" gst_video_sink_center_rect ::
Ptr GstVideo.VideoRectangle.VideoRectangle ->
Ptr GstVideo.VideoRectangle.VideoRectangle ->
Ptr GstVideo.VideoRectangle.VideoRectangle ->
CInt ->
IO ()
videoSinkCenterRect ::
(B.CallStack.HasCallStack, MonadIO m) =>
GstVideo.VideoRectangle.VideoRectangle
-> GstVideo.VideoRectangle.VideoRectangle
-> GstVideo.VideoRectangle.VideoRectangle
-> Bool
-> m ()
videoSinkCenterRect :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
VideoRectangle -> VideoRectangle -> VideoRectangle -> Bool -> m ()
videoSinkCenterRect VideoRectangle
src VideoRectangle
dst VideoRectangle
result_ Bool
scaling = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr VideoRectangle
src' <- VideoRectangle -> IO (Ptr VideoRectangle)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr VideoRectangle
src
Ptr VideoRectangle
dst' <- VideoRectangle -> IO (Ptr VideoRectangle)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr VideoRectangle
dst
Ptr VideoRectangle
result_' <- VideoRectangle -> IO (Ptr VideoRectangle)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr VideoRectangle
result_
let scaling' :: CInt
scaling' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
scaling
Ptr VideoRectangle
-> Ptr VideoRectangle -> Ptr VideoRectangle -> CInt -> IO ()
gst_video_sink_center_rect Ptr VideoRectangle
src' Ptr VideoRectangle
dst' Ptr VideoRectangle
result_' CInt
scaling'
VideoRectangle -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr VideoRectangle
src
VideoRectangle -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr VideoRectangle
dst
VideoRectangle -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr VideoRectangle
result_
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
#endif