#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.GstBase.Objects.Aggregator
(
Aggregator(..) ,
IsAggregator ,
toAggregator ,
noAggregator ,
#if ENABLE_OVERLOADING
AggregatorFinishBufferMethodInfo ,
#endif
aggregatorFinishBuffer ,
#if ENABLE_OVERLOADING
AggregatorGetAllocatorMethodInfo ,
#endif
aggregatorGetAllocator ,
#if ENABLE_OVERLOADING
AggregatorGetBufferPoolMethodInfo ,
#endif
aggregatorGetBufferPool ,
#if ENABLE_OVERLOADING
AggregatorGetLatencyMethodInfo ,
#endif
aggregatorGetLatency ,
#if ENABLE_OVERLOADING
AggregatorSetLatencyMethodInfo ,
#endif
aggregatorSetLatency ,
#if ENABLE_OVERLOADING
AggregatorSetSrcCapsMethodInfo ,
#endif
aggregatorSetSrcCaps ,
#if ENABLE_OVERLOADING
AggregatorSimpleGetNextTimeMethodInfo ,
#endif
aggregatorSimpleGetNextTime ,
#if ENABLE_OVERLOADING
AggregatorLatencyPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
aggregatorLatency ,
#endif
constructAggregatorLatency ,
getAggregatorLatency ,
setAggregatorLatency ,
#if ENABLE_OVERLOADING
AggregatorMinUpstreamLatencyPropertyInfo,
#endif
#if ENABLE_OVERLOADING
aggregatorMinUpstreamLatency ,
#endif
constructAggregatorMinUpstreamLatency ,
getAggregatorMinUpstreamLatency ,
setAggregatorMinUpstreamLatency ,
#if ENABLE_OVERLOADING
AggregatorStartTimePropertyInfo ,
#endif
#if ENABLE_OVERLOADING
aggregatorStartTime ,
#endif
constructAggregatorStartTime ,
getAggregatorStartTime ,
setAggregatorStartTime ,
) 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.ManagedPtr as B.ManagedPtr
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.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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Enums as Gst.Enums
import qualified GI.Gst.Objects.Allocator as Gst.Allocator
import qualified GI.Gst.Objects.BufferPool as Gst.BufferPool
import qualified GI.Gst.Objects.Element as Gst.Element
import qualified GI.Gst.Objects.Object as Gst.Object
import qualified GI.Gst.Structs.AllocationParams as Gst.AllocationParams
import qualified GI.Gst.Structs.Buffer as Gst.Buffer
import qualified GI.Gst.Structs.Caps as Gst.Caps
newtype Aggregator = Aggregator (ManagedPtr Aggregator)
foreign import ccall "gst_aggregator_get_type"
c_gst_aggregator_get_type :: IO GType
instance GObject Aggregator where
gobjectType = c_gst_aggregator_get_type
class (GObject o, O.IsDescendantOf Aggregator o) => IsAggregator o
instance (GObject o, O.IsDescendantOf Aggregator o) => IsAggregator o
instance O.HasParentTypes Aggregator
type instance O.ParentTypes Aggregator = '[Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
toAggregator :: (MonadIO m, IsAggregator o) => o -> m Aggregator
toAggregator = liftIO . unsafeCastTo Aggregator
noAggregator :: Maybe Aggregator
noAggregator = Nothing
#if ENABLE_OVERLOADING
type family ResolveAggregatorMethod (t :: Symbol) (o :: *) :: * where
ResolveAggregatorMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
ResolveAggregatorMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveAggregatorMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
ResolveAggregatorMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
ResolveAggregatorMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
ResolveAggregatorMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAggregatorMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAggregatorMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
ResolveAggregatorMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
ResolveAggregatorMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
ResolveAggregatorMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
ResolveAggregatorMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveAggregatorMethod "finishBuffer" o = AggregatorFinishBufferMethodInfo
ResolveAggregatorMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAggregatorMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
ResolveAggregatorMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
ResolveAggregatorMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
ResolveAggregatorMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAggregatorMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAggregatorMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveAggregatorMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveAggregatorMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveAggregatorMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveAggregatorMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAggregatorMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
ResolveAggregatorMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
ResolveAggregatorMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
ResolveAggregatorMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
ResolveAggregatorMethod "link" o = Gst.Element.ElementLinkMethodInfo
ResolveAggregatorMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
ResolveAggregatorMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
ResolveAggregatorMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
ResolveAggregatorMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
ResolveAggregatorMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
ResolveAggregatorMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
ResolveAggregatorMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
ResolveAggregatorMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
ResolveAggregatorMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAggregatorMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAggregatorMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
ResolveAggregatorMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
ResolveAggregatorMethod "query" o = Gst.Element.ElementQueryMethodInfo
ResolveAggregatorMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
ResolveAggregatorMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
ResolveAggregatorMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
ResolveAggregatorMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveAggregatorMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAggregatorMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
ResolveAggregatorMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveAggregatorMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
ResolveAggregatorMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
ResolveAggregatorMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
ResolveAggregatorMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAggregatorMethod "seek" o = Gst.Element.ElementSeekMethodInfo
ResolveAggregatorMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
ResolveAggregatorMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
ResolveAggregatorMethod "simpleGetNextTime" o = AggregatorSimpleGetNextTimeMethodInfo
ResolveAggregatorMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAggregatorMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAggregatorMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveAggregatorMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
ResolveAggregatorMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveAggregatorMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAggregatorMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
ResolveAggregatorMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
ResolveAggregatorMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveAggregatorMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveAggregatorMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAggregatorMethod "getAllocator" o = AggregatorGetAllocatorMethodInfo
ResolveAggregatorMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
ResolveAggregatorMethod "getBufferPool" o = AggregatorGetBufferPoolMethodInfo
ResolveAggregatorMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
ResolveAggregatorMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
ResolveAggregatorMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
ResolveAggregatorMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
ResolveAggregatorMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
ResolveAggregatorMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
ResolveAggregatorMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
ResolveAggregatorMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveAggregatorMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveAggregatorMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAggregatorMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
ResolveAggregatorMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveAggregatorMethod "getLatency" o = AggregatorGetLatencyMethodInfo
ResolveAggregatorMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
ResolveAggregatorMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveAggregatorMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
ResolveAggregatorMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
ResolveAggregatorMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveAggregatorMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveAggregatorMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAggregatorMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAggregatorMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
ResolveAggregatorMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
ResolveAggregatorMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
ResolveAggregatorMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
ResolveAggregatorMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveAggregatorMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
ResolveAggregatorMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
ResolveAggregatorMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
ResolveAggregatorMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
ResolveAggregatorMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveAggregatorMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveAggregatorMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveAggregatorMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAggregatorMethod "setLatency" o = AggregatorSetLatencyMethodInfo
ResolveAggregatorMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
ResolveAggregatorMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveAggregatorMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveAggregatorMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAggregatorMethod "setSrcCaps" o = AggregatorSetSrcCapsMethodInfo
ResolveAggregatorMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
ResolveAggregatorMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
ResolveAggregatorMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAggregatorMethod t Aggregator, O.MethodInfo info Aggregator p) => OL.IsLabel t (Aggregator -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
getAggregatorLatency :: (MonadIO m, IsAggregator o) => o -> m Word64
getAggregatorLatency obj = liftIO $ B.Properties.getObjectPropertyUInt64 obj "latency"
setAggregatorLatency :: (MonadIO m, IsAggregator o) => o -> Word64 -> m ()
setAggregatorLatency obj val = liftIO $ B.Properties.setObjectPropertyUInt64 obj "latency" val
constructAggregatorLatency :: (IsAggregator o) => Word64 -> IO (GValueConstruct o)
constructAggregatorLatency val = B.Properties.constructObjectPropertyUInt64 "latency" val
#if ENABLE_OVERLOADING
data AggregatorLatencyPropertyInfo
instance AttrInfo AggregatorLatencyPropertyInfo where
type AttrAllowedOps AggregatorLatencyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint AggregatorLatencyPropertyInfo = (~) Word64
type AttrBaseTypeConstraint AggregatorLatencyPropertyInfo = IsAggregator
type AttrGetType AggregatorLatencyPropertyInfo = Word64
type AttrLabel AggregatorLatencyPropertyInfo = "latency"
type AttrOrigin AggregatorLatencyPropertyInfo = Aggregator
attrGet _ = getAggregatorLatency
attrSet _ = setAggregatorLatency
attrConstruct _ = constructAggregatorLatency
attrClear _ = undefined
#endif
getAggregatorMinUpstreamLatency :: (MonadIO m, IsAggregator o) => o -> m Word64
getAggregatorMinUpstreamLatency obj = liftIO $ B.Properties.getObjectPropertyUInt64 obj "min-upstream-latency"
setAggregatorMinUpstreamLatency :: (MonadIO m, IsAggregator o) => o -> Word64 -> m ()
setAggregatorMinUpstreamLatency obj val = liftIO $ B.Properties.setObjectPropertyUInt64 obj "min-upstream-latency" val
constructAggregatorMinUpstreamLatency :: (IsAggregator o) => Word64 -> IO (GValueConstruct o)
constructAggregatorMinUpstreamLatency val = B.Properties.constructObjectPropertyUInt64 "min-upstream-latency" val
#if ENABLE_OVERLOADING
data AggregatorMinUpstreamLatencyPropertyInfo
instance AttrInfo AggregatorMinUpstreamLatencyPropertyInfo where
type AttrAllowedOps AggregatorMinUpstreamLatencyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint AggregatorMinUpstreamLatencyPropertyInfo = (~) Word64
type AttrBaseTypeConstraint AggregatorMinUpstreamLatencyPropertyInfo = IsAggregator
type AttrGetType AggregatorMinUpstreamLatencyPropertyInfo = Word64
type AttrLabel AggregatorMinUpstreamLatencyPropertyInfo = "min-upstream-latency"
type AttrOrigin AggregatorMinUpstreamLatencyPropertyInfo = Aggregator
attrGet _ = getAggregatorMinUpstreamLatency
attrSet _ = setAggregatorMinUpstreamLatency
attrConstruct _ = constructAggregatorMinUpstreamLatency
attrClear _ = undefined
#endif
getAggregatorStartTime :: (MonadIO m, IsAggregator o) => o -> m Word64
getAggregatorStartTime obj = liftIO $ B.Properties.getObjectPropertyUInt64 obj "start-time"
setAggregatorStartTime :: (MonadIO m, IsAggregator o) => o -> Word64 -> m ()
setAggregatorStartTime obj val = liftIO $ B.Properties.setObjectPropertyUInt64 obj "start-time" val
constructAggregatorStartTime :: (IsAggregator o) => Word64 -> IO (GValueConstruct o)
constructAggregatorStartTime val = B.Properties.constructObjectPropertyUInt64 "start-time" val
#if ENABLE_OVERLOADING
data AggregatorStartTimePropertyInfo
instance AttrInfo AggregatorStartTimePropertyInfo where
type AttrAllowedOps AggregatorStartTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint AggregatorStartTimePropertyInfo = (~) Word64
type AttrBaseTypeConstraint AggregatorStartTimePropertyInfo = IsAggregator
type AttrGetType AggregatorStartTimePropertyInfo = Word64
type AttrLabel AggregatorStartTimePropertyInfo = "start-time"
type AttrOrigin AggregatorStartTimePropertyInfo = Aggregator
attrGet _ = getAggregatorStartTime
attrSet _ = setAggregatorStartTime
attrConstruct _ = constructAggregatorStartTime
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList Aggregator
type instance O.AttributeList Aggregator = AggregatorAttributeList
type AggregatorAttributeList = ('[ '("latency", AggregatorLatencyPropertyInfo), '("minUpstreamLatency", AggregatorMinUpstreamLatencyPropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("startTime", AggregatorStartTimePropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
aggregatorLatency :: AttrLabelProxy "latency"
aggregatorLatency = AttrLabelProxy
aggregatorMinUpstreamLatency :: AttrLabelProxy "minUpstreamLatency"
aggregatorMinUpstreamLatency = AttrLabelProxy
aggregatorStartTime :: AttrLabelProxy "startTime"
aggregatorStartTime = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList Aggregator = AggregatorSignalList
type AggregatorSignalList = ('[ '("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_aggregator_finish_buffer" gst_aggregator_finish_buffer ::
Ptr Aggregator ->
Ptr Gst.Buffer.Buffer ->
IO CInt
aggregatorFinishBuffer ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> Gst.Buffer.Buffer
-> m Gst.Enums.FlowReturn
aggregatorFinishBuffer aggregator buffer = liftIO $ do
aggregator' <- unsafeManagedPtrCastPtr aggregator
buffer' <- B.ManagedPtr.disownBoxed buffer
result <- gst_aggregator_finish_buffer aggregator' buffer'
let result' = (toEnum . fromIntegral) result
touchManagedPtr aggregator
touchManagedPtr buffer
return result'
#if ENABLE_OVERLOADING
data AggregatorFinishBufferMethodInfo
instance (signature ~ (Gst.Buffer.Buffer -> m Gst.Enums.FlowReturn), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorFinishBufferMethodInfo a signature where
overloadedMethod _ = aggregatorFinishBuffer
#endif
foreign import ccall "gst_aggregator_get_allocator" gst_aggregator_get_allocator ::
Ptr Aggregator ->
Ptr (Ptr Gst.Allocator.Allocator) ->
Ptr Gst.AllocationParams.AllocationParams ->
IO ()
aggregatorGetAllocator ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))
aggregatorGetAllocator self = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
allocator <- allocMem :: IO (Ptr (Ptr Gst.Allocator.Allocator))
params <- callocBoxedBytes 64 :: IO (Ptr Gst.AllocationParams.AllocationParams)
gst_aggregator_get_allocator self' allocator params
allocator' <- peek allocator
allocator'' <- (wrapObject Gst.Allocator.Allocator) allocator'
params' <- (wrapBoxed Gst.AllocationParams.AllocationParams) params
touchManagedPtr self
freeMem allocator
return (allocator'', params')
#if ENABLE_OVERLOADING
data AggregatorGetAllocatorMethodInfo
instance (signature ~ (m ((Gst.Allocator.Allocator, Gst.AllocationParams.AllocationParams))), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorGetAllocatorMethodInfo a signature where
overloadedMethod _ = aggregatorGetAllocator
#endif
foreign import ccall "gst_aggregator_get_buffer_pool" gst_aggregator_get_buffer_pool ::
Ptr Aggregator ->
IO (Ptr Gst.BufferPool.BufferPool)
aggregatorGetBufferPool ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> m Gst.BufferPool.BufferPool
aggregatorGetBufferPool self = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
result <- gst_aggregator_get_buffer_pool self'
checkUnexpectedReturnNULL "aggregatorGetBufferPool" result
result' <- (wrapObject Gst.BufferPool.BufferPool) result
touchManagedPtr self
return result'
#if ENABLE_OVERLOADING
data AggregatorGetBufferPoolMethodInfo
instance (signature ~ (m Gst.BufferPool.BufferPool), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorGetBufferPoolMethodInfo a signature where
overloadedMethod _ = aggregatorGetBufferPool
#endif
foreign import ccall "gst_aggregator_get_latency" gst_aggregator_get_latency ::
Ptr Aggregator ->
IO Word64
aggregatorGetLatency ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> m Word64
aggregatorGetLatency self = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
result <- gst_aggregator_get_latency self'
touchManagedPtr self
return result
#if ENABLE_OVERLOADING
data AggregatorGetLatencyMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorGetLatencyMethodInfo a signature where
overloadedMethod _ = aggregatorGetLatency
#endif
foreign import ccall "gst_aggregator_set_latency" gst_aggregator_set_latency ::
Ptr Aggregator ->
Word64 ->
Word64 ->
IO ()
aggregatorSetLatency ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> Word64
-> Word64
-> m ()
aggregatorSetLatency self minLatency maxLatency = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
gst_aggregator_set_latency self' minLatency maxLatency
touchManagedPtr self
return ()
#if ENABLE_OVERLOADING
data AggregatorSetLatencyMethodInfo
instance (signature ~ (Word64 -> Word64 -> m ()), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorSetLatencyMethodInfo a signature where
overloadedMethod _ = aggregatorSetLatency
#endif
foreign import ccall "gst_aggregator_set_src_caps" gst_aggregator_set_src_caps ::
Ptr Aggregator ->
Ptr Gst.Caps.Caps ->
IO ()
aggregatorSetSrcCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> Gst.Caps.Caps
-> m ()
aggregatorSetSrcCaps self caps = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
caps' <- unsafeManagedPtrGetPtr caps
gst_aggregator_set_src_caps self' caps'
touchManagedPtr self
touchManagedPtr caps
return ()
#if ENABLE_OVERLOADING
data AggregatorSetSrcCapsMethodInfo
instance (signature ~ (Gst.Caps.Caps -> m ()), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorSetSrcCapsMethodInfo a signature where
overloadedMethod _ = aggregatorSetSrcCaps
#endif
foreign import ccall "gst_aggregator_simple_get_next_time" gst_aggregator_simple_get_next_time ::
Ptr Aggregator ->
IO Word64
aggregatorSimpleGetNextTime ::
(B.CallStack.HasCallStack, MonadIO m, IsAggregator a) =>
a
-> m Word64
aggregatorSimpleGetNextTime self = liftIO $ do
self' <- unsafeManagedPtrCastPtr self
result <- gst_aggregator_simple_get_next_time self'
touchManagedPtr self
return result
#if ENABLE_OVERLOADING
data AggregatorSimpleGetNextTimeMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsAggregator a) => O.MethodInfo AggregatorSimpleGetNextTimeMethodInfo a signature where
overloadedMethod _ = aggregatorSimpleGetNextTime
#endif