{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstAudio.Objects.AudioSrc
(
AudioSrc(..) ,
IsAudioSrc ,
toAudioSrc ,
noAudioSrc ,
#if defined(ENABLE_OVERLOADING)
ResolveAudioSrcMethod ,
#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.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.GI.Base.Signals as B.Signals
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.Objects.Element as Gst.Element
import qualified GI.Gst.Objects.Object as Gst.Object
import {-# SOURCE #-} qualified GI.GstAudio.Objects.AudioBaseSrc as GstAudio.AudioBaseSrc
import qualified GI.GstBase.Objects.BaseSrc as GstBase.BaseSrc
import qualified GI.GstBase.Objects.PushSrc as GstBase.PushSrc
newtype AudioSrc = AudioSrc (ManagedPtr AudioSrc)
deriving (AudioSrc -> AudioSrc -> Bool
(AudioSrc -> AudioSrc -> Bool)
-> (AudioSrc -> AudioSrc -> Bool) -> Eq AudioSrc
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AudioSrc -> AudioSrc -> Bool
$c/= :: AudioSrc -> AudioSrc -> Bool
== :: AudioSrc -> AudioSrc -> Bool
$c== :: AudioSrc -> AudioSrc -> Bool
Eq)
foreign import ccall "gst_audio_src_get_type"
c_gst_audio_src_get_type :: IO GType
instance GObject AudioSrc where
gobjectType :: IO GType
gobjectType = IO GType
c_gst_audio_src_get_type
instance B.GValue.IsGValue AudioSrc where
toGValue :: AudioSrc -> IO GValue
toGValue o :: AudioSrc
o = do
GType
gtype <- IO GType
c_gst_audio_src_get_type
AudioSrc -> (Ptr AudioSrc -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr AudioSrc
o (GType
-> (GValue -> Ptr AudioSrc -> IO ()) -> Ptr AudioSrc -> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr AudioSrc -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO AudioSrc
fromGValue gv :: GValue
gv = do
Ptr AudioSrc
ptr <- GValue -> IO (Ptr AudioSrc)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr AudioSrc)
(ManagedPtr AudioSrc -> AudioSrc) -> Ptr AudioSrc -> IO AudioSrc
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr AudioSrc -> AudioSrc
AudioSrc Ptr AudioSrc
ptr
class (GObject o, O.IsDescendantOf AudioSrc o) => IsAudioSrc o
instance (GObject o, O.IsDescendantOf AudioSrc o) => IsAudioSrc o
instance O.HasParentTypes AudioSrc
type instance O.ParentTypes AudioSrc = '[GstAudio.AudioBaseSrc.AudioBaseSrc, GstBase.PushSrc.PushSrc, GstBase.BaseSrc.BaseSrc, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object]
toAudioSrc :: (MonadIO m, IsAudioSrc o) => o -> m AudioSrc
toAudioSrc :: o -> m AudioSrc
toAudioSrc = IO AudioSrc -> m AudioSrc
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO AudioSrc -> m AudioSrc)
-> (o -> IO AudioSrc) -> o -> m AudioSrc
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr AudioSrc -> AudioSrc) -> o -> IO AudioSrc
forall o o'.
(HasCallStack, GObject o, GObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr AudioSrc -> AudioSrc
AudioSrc
noAudioSrc :: Maybe AudioSrc
noAudioSrc :: Maybe AudioSrc
noAudioSrc = Maybe AudioSrc
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveAudioSrcMethod (t :: Symbol) (o :: *) :: * where
ResolveAudioSrcMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
ResolveAudioSrcMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveAudioSrcMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
ResolveAudioSrcMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
ResolveAudioSrcMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
ResolveAudioSrcMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAudioSrcMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAudioSrcMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
ResolveAudioSrcMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
ResolveAudioSrcMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
ResolveAudioSrcMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
ResolveAudioSrcMethod "createRingbuffer" o = GstAudio.AudioBaseSrc.AudioBaseSrcCreateRingbufferMethodInfo
ResolveAudioSrcMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveAudioSrcMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAudioSrcMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
ResolveAudioSrcMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
ResolveAudioSrcMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
ResolveAudioSrcMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAudioSrcMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAudioSrcMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveAudioSrcMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveAudioSrcMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveAudioSrcMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveAudioSrcMethod "isAsync" o = GstBase.BaseSrc.BaseSrcIsAsyncMethodInfo
ResolveAudioSrcMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAudioSrcMethod "isLive" o = GstBase.BaseSrc.BaseSrcIsLiveMethodInfo
ResolveAudioSrcMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
ResolveAudioSrcMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
ResolveAudioSrcMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
ResolveAudioSrcMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
ResolveAudioSrcMethod "link" o = Gst.Element.ElementLinkMethodInfo
ResolveAudioSrcMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
ResolveAudioSrcMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
ResolveAudioSrcMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
ResolveAudioSrcMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
ResolveAudioSrcMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
ResolveAudioSrcMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
ResolveAudioSrcMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
ResolveAudioSrcMethod "newSeamlessSegment" o = GstBase.BaseSrc.BaseSrcNewSeamlessSegmentMethodInfo
ResolveAudioSrcMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
ResolveAudioSrcMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAudioSrcMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAudioSrcMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
ResolveAudioSrcMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
ResolveAudioSrcMethod "query" o = Gst.Element.ElementQueryMethodInfo
ResolveAudioSrcMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
ResolveAudioSrcMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
ResolveAudioSrcMethod "queryLatency" o = GstBase.BaseSrc.BaseSrcQueryLatencyMethodInfo
ResolveAudioSrcMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
ResolveAudioSrcMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveAudioSrcMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAudioSrcMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
ResolveAudioSrcMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveAudioSrcMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
ResolveAudioSrcMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
ResolveAudioSrcMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
ResolveAudioSrcMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAudioSrcMethod "seek" o = Gst.Element.ElementSeekMethodInfo
ResolveAudioSrcMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
ResolveAudioSrcMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
ResolveAudioSrcMethod "startComplete" o = GstBase.BaseSrc.BaseSrcStartCompleteMethodInfo
ResolveAudioSrcMethod "startWait" o = GstBase.BaseSrc.BaseSrcStartWaitMethodInfo
ResolveAudioSrcMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAudioSrcMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAudioSrcMethod "submitBufferList" o = GstBase.BaseSrc.BaseSrcSubmitBufferListMethodInfo
ResolveAudioSrcMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveAudioSrcMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
ResolveAudioSrcMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveAudioSrcMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAudioSrcMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
ResolveAudioSrcMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
ResolveAudioSrcMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveAudioSrcMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveAudioSrcMethod "waitPlaying" o = GstBase.BaseSrc.BaseSrcWaitPlayingMethodInfo
ResolveAudioSrcMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAudioSrcMethod "getAllocator" o = GstBase.BaseSrc.BaseSrcGetAllocatorMethodInfo
ResolveAudioSrcMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
ResolveAudioSrcMethod "getBlocksize" o = GstBase.BaseSrc.BaseSrcGetBlocksizeMethodInfo
ResolveAudioSrcMethod "getBufferPool" o = GstBase.BaseSrc.BaseSrcGetBufferPoolMethodInfo
ResolveAudioSrcMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
ResolveAudioSrcMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
ResolveAudioSrcMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
ResolveAudioSrcMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
ResolveAudioSrcMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
ResolveAudioSrcMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
ResolveAudioSrcMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
ResolveAudioSrcMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveAudioSrcMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveAudioSrcMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAudioSrcMethod "getDoTimestamp" o = GstBase.BaseSrc.BaseSrcGetDoTimestampMethodInfo
ResolveAudioSrcMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
ResolveAudioSrcMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveAudioSrcMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
ResolveAudioSrcMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveAudioSrcMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
ResolveAudioSrcMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
ResolveAudioSrcMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveAudioSrcMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveAudioSrcMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAudioSrcMethod "getProvideClock" o = GstAudio.AudioBaseSrc.AudioBaseSrcGetProvideClockMethodInfo
ResolveAudioSrcMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAudioSrcMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
ResolveAudioSrcMethod "getSlaveMethod" o = GstAudio.AudioBaseSrc.AudioBaseSrcGetSlaveMethodMethodInfo
ResolveAudioSrcMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
ResolveAudioSrcMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
ResolveAudioSrcMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
ResolveAudioSrcMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveAudioSrcMethod "setAsync" o = GstBase.BaseSrc.BaseSrcSetAsyncMethodInfo
ResolveAudioSrcMethod "setAutomaticEos" o = GstBase.BaseSrc.BaseSrcSetAutomaticEosMethodInfo
ResolveAudioSrcMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
ResolveAudioSrcMethod "setBlocksize" o = GstBase.BaseSrc.BaseSrcSetBlocksizeMethodInfo
ResolveAudioSrcMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
ResolveAudioSrcMethod "setCaps" o = GstBase.BaseSrc.BaseSrcSetCapsMethodInfo
ResolveAudioSrcMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
ResolveAudioSrcMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
ResolveAudioSrcMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveAudioSrcMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveAudioSrcMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveAudioSrcMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAudioSrcMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveAudioSrcMethod "setDoTimestamp" o = GstBase.BaseSrc.BaseSrcSetDoTimestampMethodInfo
ResolveAudioSrcMethod "setDynamicSize" o = GstBase.BaseSrc.BaseSrcSetDynamicSizeMethodInfo
ResolveAudioSrcMethod "setFormat" o = GstBase.BaseSrc.BaseSrcSetFormatMethodInfo
ResolveAudioSrcMethod "setLive" o = GstBase.BaseSrc.BaseSrcSetLiveMethodInfo
ResolveAudioSrcMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
ResolveAudioSrcMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveAudioSrcMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveAudioSrcMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAudioSrcMethod "setProvideClock" o = GstAudio.AudioBaseSrc.AudioBaseSrcSetProvideClockMethodInfo
ResolveAudioSrcMethod "setSlaveMethod" o = GstAudio.AudioBaseSrc.AudioBaseSrcSetSlaveMethodMethodInfo
ResolveAudioSrcMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
ResolveAudioSrcMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
ResolveAudioSrcMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAudioSrcMethod t AudioSrc, O.MethodInfo info AudioSrc p) => OL.IsLabel t (AudioSrc -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AudioSrc
type instance O.AttributeList AudioSrc = AudioSrcAttributeList
type AudioSrcAttributeList = ('[ '("actualBufferTime", GstAudio.AudioBaseSrc.AudioBaseSrcActualBufferTimePropertyInfo), '("actualLatencyTime", GstAudio.AudioBaseSrc.AudioBaseSrcActualLatencyTimePropertyInfo), '("blocksize", GstBase.BaseSrc.BaseSrcBlocksizePropertyInfo), '("bufferTime", GstAudio.AudioBaseSrc.AudioBaseSrcBufferTimePropertyInfo), '("doTimestamp", GstBase.BaseSrc.BaseSrcDoTimestampPropertyInfo), '("latencyTime", GstAudio.AudioBaseSrc.AudioBaseSrcLatencyTimePropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("numBuffers", GstBase.BaseSrc.BaseSrcNumBuffersPropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("provideClock", GstAudio.AudioBaseSrc.AudioBaseSrcProvideClockPropertyInfo), '("slaveMethod", GstAudio.AudioBaseSrc.AudioBaseSrcSlaveMethodPropertyInfo), '("typefind", GstBase.BaseSrc.BaseSrcTypefindPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList AudioSrc = AudioSrcSignalList
type AudioSrcSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("noMorePads", Gst.Element.ElementNoMorePadsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("padAdded", Gst.Element.ElementPadAddedSignalInfo), '("padRemoved", Gst.Element.ElementPadRemovedSignalInfo)] :: [(Symbol, *)])
#endif