{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstAudio.Objects.AudioCdSrc
(
AudioCdSrc(..) ,
IsAudioCdSrc ,
toAudioCdSrc ,
#if defined(ENABLE_OVERLOADING)
ResolveAudioCdSrcMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
AudioCdSrcAddTrackMethodInfo ,
#endif
audioCdSrcAddTrack ,
#if defined(ENABLE_OVERLOADING)
AudioCdSrcDevicePropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
audioCdSrcDevice ,
#endif
clearAudioCdSrcDevice ,
constructAudioCdSrcDevice ,
getAudioCdSrcDevice ,
setAudioCdSrcDevice ,
#if defined(ENABLE_OVERLOADING)
AudioCdSrcModePropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
audioCdSrcMode ,
#endif
constructAudioCdSrcMode ,
getAudioCdSrcMode ,
setAudioCdSrcMode ,
#if defined(ENABLE_OVERLOADING)
AudioCdSrcTrackPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
audioCdSrcTrack ,
#endif
constructAudioCdSrcTrack ,
getAudioCdSrcTrack ,
setAudioCdSrcTrack ,
) 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.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.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Interfaces.URIHandler as Gst.URIHandler
import qualified GI.Gst.Objects.Element as Gst.Element
import qualified GI.Gst.Objects.Object as Gst.Object
import {-# SOURCE #-} qualified GI.GstAudio.Enums as GstAudio.Enums
import {-# SOURCE #-} qualified GI.GstAudio.Structs.AudioCdSrcTrack as GstAudio.AudioCdSrcTrack
import qualified GI.GstBase.Objects.BaseSrc as GstBase.BaseSrc
import qualified GI.GstBase.Objects.PushSrc as GstBase.PushSrc
newtype AudioCdSrc = AudioCdSrc (SP.ManagedPtr AudioCdSrc)
deriving (AudioCdSrc -> AudioCdSrc -> Bool
(AudioCdSrc -> AudioCdSrc -> Bool)
-> (AudioCdSrc -> AudioCdSrc -> Bool) -> Eq AudioCdSrc
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AudioCdSrc -> AudioCdSrc -> Bool
$c/= :: AudioCdSrc -> AudioCdSrc -> Bool
== :: AudioCdSrc -> AudioCdSrc -> Bool
$c== :: AudioCdSrc -> AudioCdSrc -> Bool
Eq)
instance SP.ManagedPtrNewtype AudioCdSrc where
toManagedPtr :: AudioCdSrc -> ManagedPtr AudioCdSrc
toManagedPtr (AudioCdSrc ManagedPtr AudioCdSrc
p) = ManagedPtr AudioCdSrc
p
foreign import ccall "gst_audio_cd_src_get_type"
c_gst_audio_cd_src_get_type :: IO B.Types.GType
instance B.Types.TypedObject AudioCdSrc where
glibType :: IO GType
glibType = IO GType
c_gst_audio_cd_src_get_type
instance B.Types.GObject AudioCdSrc
class (SP.GObject o, O.IsDescendantOf AudioCdSrc o) => IsAudioCdSrc o
instance (SP.GObject o, O.IsDescendantOf AudioCdSrc o) => IsAudioCdSrc o
instance O.HasParentTypes AudioCdSrc
type instance O.ParentTypes AudioCdSrc = '[GstBase.PushSrc.PushSrc, GstBase.BaseSrc.BaseSrc, Gst.Element.Element, Gst.Object.Object, GObject.Object.Object, Gst.URIHandler.URIHandler]
toAudioCdSrc :: (MIO.MonadIO m, IsAudioCdSrc o) => o -> m AudioCdSrc
toAudioCdSrc :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> m AudioCdSrc
toAudioCdSrc = IO AudioCdSrc -> m AudioCdSrc
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO AudioCdSrc -> m AudioCdSrc)
-> (o -> IO AudioCdSrc) -> o -> m AudioCdSrc
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr AudioCdSrc -> AudioCdSrc) -> o -> IO AudioCdSrc
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr AudioCdSrc -> AudioCdSrc
AudioCdSrc
instance B.GValue.IsGValue (Maybe AudioCdSrc) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gst_audio_cd_src_get_type
gvalueSet_ :: Ptr GValue -> Maybe AudioCdSrc -> IO ()
gvalueSet_ Ptr GValue
gv Maybe AudioCdSrc
P.Nothing = Ptr GValue -> Ptr AudioCdSrc -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr AudioCdSrc
forall a. Ptr a
FP.nullPtr :: FP.Ptr AudioCdSrc)
gvalueSet_ Ptr GValue
gv (P.Just AudioCdSrc
obj) = AudioCdSrc -> (Ptr AudioCdSrc -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr AudioCdSrc
obj (Ptr GValue -> Ptr AudioCdSrc -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe AudioCdSrc)
gvalueGet_ Ptr GValue
gv = do
Ptr AudioCdSrc
ptr <- Ptr GValue -> IO (Ptr AudioCdSrc)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr AudioCdSrc)
if Ptr AudioCdSrc
ptr Ptr AudioCdSrc -> Ptr AudioCdSrc -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr AudioCdSrc
forall a. Ptr a
FP.nullPtr
then AudioCdSrc -> Maybe AudioCdSrc
forall a. a -> Maybe a
P.Just (AudioCdSrc -> Maybe AudioCdSrc)
-> IO AudioCdSrc -> IO (Maybe AudioCdSrc)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr AudioCdSrc -> AudioCdSrc)
-> Ptr AudioCdSrc -> IO AudioCdSrc
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr AudioCdSrc -> AudioCdSrc
AudioCdSrc Ptr AudioCdSrc
ptr
else Maybe AudioCdSrc -> IO (Maybe AudioCdSrc)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe AudioCdSrc
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveAudioCdSrcMethod (t :: Symbol) (o :: *) :: * where
ResolveAudioCdSrcMethod "abortState" o = Gst.Element.ElementAbortStateMethodInfo
ResolveAudioCdSrcMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveAudioCdSrcMethod "addPad" o = Gst.Element.ElementAddPadMethodInfo
ResolveAudioCdSrcMethod "addPropertyDeepNotifyWatch" o = Gst.Element.ElementAddPropertyDeepNotifyWatchMethodInfo
ResolveAudioCdSrcMethod "addPropertyNotifyWatch" o = Gst.Element.ElementAddPropertyNotifyWatchMethodInfo
ResolveAudioCdSrcMethod "addTrack" o = AudioCdSrcAddTrackMethodInfo
ResolveAudioCdSrcMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAudioCdSrcMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAudioCdSrcMethod "callAsync" o = Gst.Element.ElementCallAsyncMethodInfo
ResolveAudioCdSrcMethod "changeState" o = Gst.Element.ElementChangeStateMethodInfo
ResolveAudioCdSrcMethod "continueState" o = Gst.Element.ElementContinueStateMethodInfo
ResolveAudioCdSrcMethod "createAllPads" o = Gst.Element.ElementCreateAllPadsMethodInfo
ResolveAudioCdSrcMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveAudioCdSrcMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAudioCdSrcMethod "foreachPad" o = Gst.Element.ElementForeachPadMethodInfo
ResolveAudioCdSrcMethod "foreachSinkPad" o = Gst.Element.ElementForeachSinkPadMethodInfo
ResolveAudioCdSrcMethod "foreachSrcPad" o = Gst.Element.ElementForeachSrcPadMethodInfo
ResolveAudioCdSrcMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAudioCdSrcMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAudioCdSrcMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveAudioCdSrcMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveAudioCdSrcMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveAudioCdSrcMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveAudioCdSrcMethod "isAsync" o = GstBase.BaseSrc.BaseSrcIsAsyncMethodInfo
ResolveAudioCdSrcMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAudioCdSrcMethod "isLive" o = GstBase.BaseSrc.BaseSrcIsLiveMethodInfo
ResolveAudioCdSrcMethod "isLockedState" o = Gst.Element.ElementIsLockedStateMethodInfo
ResolveAudioCdSrcMethod "iteratePads" o = Gst.Element.ElementIteratePadsMethodInfo
ResolveAudioCdSrcMethod "iterateSinkPads" o = Gst.Element.ElementIterateSinkPadsMethodInfo
ResolveAudioCdSrcMethod "iterateSrcPads" o = Gst.Element.ElementIterateSrcPadsMethodInfo
ResolveAudioCdSrcMethod "link" o = Gst.Element.ElementLinkMethodInfo
ResolveAudioCdSrcMethod "linkFiltered" o = Gst.Element.ElementLinkFilteredMethodInfo
ResolveAudioCdSrcMethod "linkPads" o = Gst.Element.ElementLinkPadsMethodInfo
ResolveAudioCdSrcMethod "linkPadsFiltered" o = Gst.Element.ElementLinkPadsFilteredMethodInfo
ResolveAudioCdSrcMethod "linkPadsFull" o = Gst.Element.ElementLinkPadsFullMethodInfo
ResolveAudioCdSrcMethod "lostState" o = Gst.Element.ElementLostStateMethodInfo
ResolveAudioCdSrcMethod "messageFull" o = Gst.Element.ElementMessageFullMethodInfo
ResolveAudioCdSrcMethod "messageFullWithDetails" o = Gst.Element.ElementMessageFullWithDetailsMethodInfo
ResolveAudioCdSrcMethod "negotiate" o = GstBase.BaseSrc.BaseSrcNegotiateMethodInfo
ResolveAudioCdSrcMethod "newSeamlessSegment" o = GstBase.BaseSrc.BaseSrcNewSeamlessSegmentMethodInfo
ResolveAudioCdSrcMethod "newSegment" o = GstBase.BaseSrc.BaseSrcNewSegmentMethodInfo
ResolveAudioCdSrcMethod "noMorePads" o = Gst.Element.ElementNoMorePadsMethodInfo
ResolveAudioCdSrcMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAudioCdSrcMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAudioCdSrcMethod "postMessage" o = Gst.Element.ElementPostMessageMethodInfo
ResolveAudioCdSrcMethod "provideClock" o = Gst.Element.ElementProvideClockMethodInfo
ResolveAudioCdSrcMethod "query" o = Gst.Element.ElementQueryMethodInfo
ResolveAudioCdSrcMethod "queryConvert" o = Gst.Element.ElementQueryConvertMethodInfo
ResolveAudioCdSrcMethod "queryDuration" o = Gst.Element.ElementQueryDurationMethodInfo
ResolveAudioCdSrcMethod "queryLatency" o = GstBase.BaseSrc.BaseSrcQueryLatencyMethodInfo
ResolveAudioCdSrcMethod "queryPosition" o = Gst.Element.ElementQueryPositionMethodInfo
ResolveAudioCdSrcMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveAudioCdSrcMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAudioCdSrcMethod "releaseRequestPad" o = Gst.Element.ElementReleaseRequestPadMethodInfo
ResolveAudioCdSrcMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveAudioCdSrcMethod "removePad" o = Gst.Element.ElementRemovePadMethodInfo
ResolveAudioCdSrcMethod "removePropertyNotifyWatch" o = Gst.Element.ElementRemovePropertyNotifyWatchMethodInfo
ResolveAudioCdSrcMethod "requestPad" o = Gst.Element.ElementRequestPadMethodInfo
ResolveAudioCdSrcMethod "requestPadSimple" o = Gst.Element.ElementRequestPadSimpleMethodInfo
ResolveAudioCdSrcMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAudioCdSrcMethod "seek" o = Gst.Element.ElementSeekMethodInfo
ResolveAudioCdSrcMethod "seekSimple" o = Gst.Element.ElementSeekSimpleMethodInfo
ResolveAudioCdSrcMethod "sendEvent" o = Gst.Element.ElementSendEventMethodInfo
ResolveAudioCdSrcMethod "startComplete" o = GstBase.BaseSrc.BaseSrcStartCompleteMethodInfo
ResolveAudioCdSrcMethod "startWait" o = GstBase.BaseSrc.BaseSrcStartWaitMethodInfo
ResolveAudioCdSrcMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAudioCdSrcMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAudioCdSrcMethod "submitBufferList" o = GstBase.BaseSrc.BaseSrcSubmitBufferListMethodInfo
ResolveAudioCdSrcMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveAudioCdSrcMethod "syncStateWithParent" o = Gst.Element.ElementSyncStateWithParentMethodInfo
ResolveAudioCdSrcMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveAudioCdSrcMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAudioCdSrcMethod "unlink" o = Gst.Element.ElementUnlinkMethodInfo
ResolveAudioCdSrcMethod "unlinkPads" o = Gst.Element.ElementUnlinkPadsMethodInfo
ResolveAudioCdSrcMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveAudioCdSrcMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveAudioCdSrcMethod "waitPlaying" o = GstBase.BaseSrc.BaseSrcWaitPlayingMethodInfo
ResolveAudioCdSrcMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAudioCdSrcMethod "getAllocator" o = GstBase.BaseSrc.BaseSrcGetAllocatorMethodInfo
ResolveAudioCdSrcMethod "getBaseTime" o = Gst.Element.ElementGetBaseTimeMethodInfo
ResolveAudioCdSrcMethod "getBlocksize" o = GstBase.BaseSrc.BaseSrcGetBlocksizeMethodInfo
ResolveAudioCdSrcMethod "getBufferPool" o = GstBase.BaseSrc.BaseSrcGetBufferPoolMethodInfo
ResolveAudioCdSrcMethod "getBus" o = Gst.Element.ElementGetBusMethodInfo
ResolveAudioCdSrcMethod "getClock" o = Gst.Element.ElementGetClockMethodInfo
ResolveAudioCdSrcMethod "getCompatiblePad" o = Gst.Element.ElementGetCompatiblePadMethodInfo
ResolveAudioCdSrcMethod "getCompatiblePadTemplate" o = Gst.Element.ElementGetCompatiblePadTemplateMethodInfo
ResolveAudioCdSrcMethod "getContext" o = Gst.Element.ElementGetContextMethodInfo
ResolveAudioCdSrcMethod "getContextUnlocked" o = Gst.Element.ElementGetContextUnlockedMethodInfo
ResolveAudioCdSrcMethod "getContexts" o = Gst.Element.ElementGetContextsMethodInfo
ResolveAudioCdSrcMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveAudioCdSrcMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveAudioCdSrcMethod "getCurrentClockTime" o = Gst.Element.ElementGetCurrentClockTimeMethodInfo
ResolveAudioCdSrcMethod "getCurrentRunningTime" o = Gst.Element.ElementGetCurrentRunningTimeMethodInfo
ResolveAudioCdSrcMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAudioCdSrcMethod "getDoTimestamp" o = GstBase.BaseSrc.BaseSrcGetDoTimestampMethodInfo
ResolveAudioCdSrcMethod "getFactory" o = Gst.Element.ElementGetFactoryMethodInfo
ResolveAudioCdSrcMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveAudioCdSrcMethod "getMetadata" o = Gst.Element.ElementGetMetadataMethodInfo
ResolveAudioCdSrcMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveAudioCdSrcMethod "getPadTemplate" o = Gst.Element.ElementGetPadTemplateMethodInfo
ResolveAudioCdSrcMethod "getPadTemplateList" o = Gst.Element.ElementGetPadTemplateListMethodInfo
ResolveAudioCdSrcMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveAudioCdSrcMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveAudioCdSrcMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAudioCdSrcMethod "getProtocols" o = Gst.URIHandler.URIHandlerGetProtocolsMethodInfo
ResolveAudioCdSrcMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAudioCdSrcMethod "getRequestPad" o = Gst.Element.ElementGetRequestPadMethodInfo
ResolveAudioCdSrcMethod "getStartTime" o = Gst.Element.ElementGetStartTimeMethodInfo
ResolveAudioCdSrcMethod "getState" o = Gst.Element.ElementGetStateMethodInfo
ResolveAudioCdSrcMethod "getStaticPad" o = Gst.Element.ElementGetStaticPadMethodInfo
ResolveAudioCdSrcMethod "getUri" o = Gst.URIHandler.URIHandlerGetUriMethodInfo
ResolveAudioCdSrcMethod "getUriType" o = Gst.URIHandler.URIHandlerGetUriTypeMethodInfo
ResolveAudioCdSrcMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveAudioCdSrcMethod "setAsync" o = GstBase.BaseSrc.BaseSrcSetAsyncMethodInfo
ResolveAudioCdSrcMethod "setAutomaticEos" o = GstBase.BaseSrc.BaseSrcSetAutomaticEosMethodInfo
ResolveAudioCdSrcMethod "setBaseTime" o = Gst.Element.ElementSetBaseTimeMethodInfo
ResolveAudioCdSrcMethod "setBlocksize" o = GstBase.BaseSrc.BaseSrcSetBlocksizeMethodInfo
ResolveAudioCdSrcMethod "setBus" o = Gst.Element.ElementSetBusMethodInfo
ResolveAudioCdSrcMethod "setCaps" o = GstBase.BaseSrc.BaseSrcSetCapsMethodInfo
ResolveAudioCdSrcMethod "setClock" o = Gst.Element.ElementSetClockMethodInfo
ResolveAudioCdSrcMethod "setContext" o = Gst.Element.ElementSetContextMethodInfo
ResolveAudioCdSrcMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveAudioCdSrcMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveAudioCdSrcMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveAudioCdSrcMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAudioCdSrcMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveAudioCdSrcMethod "setDoTimestamp" o = GstBase.BaseSrc.BaseSrcSetDoTimestampMethodInfo
ResolveAudioCdSrcMethod "setDynamicSize" o = GstBase.BaseSrc.BaseSrcSetDynamicSizeMethodInfo
ResolveAudioCdSrcMethod "setFormat" o = GstBase.BaseSrc.BaseSrcSetFormatMethodInfo
ResolveAudioCdSrcMethod "setLive" o = GstBase.BaseSrc.BaseSrcSetLiveMethodInfo
ResolveAudioCdSrcMethod "setLockedState" o = Gst.Element.ElementSetLockedStateMethodInfo
ResolveAudioCdSrcMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveAudioCdSrcMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveAudioCdSrcMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAudioCdSrcMethod "setStartTime" o = Gst.Element.ElementSetStartTimeMethodInfo
ResolveAudioCdSrcMethod "setState" o = Gst.Element.ElementSetStateMethodInfo
ResolveAudioCdSrcMethod "setUri" o = Gst.URIHandler.URIHandlerSetUriMethodInfo
ResolveAudioCdSrcMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAudioCdSrcMethod t AudioCdSrc, O.OverloadedMethod info AudioCdSrc p) => OL.IsLabel t (AudioCdSrc -> 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 ~ ResolveAudioCdSrcMethod t AudioCdSrc, O.OverloadedMethod info AudioCdSrc p, R.HasField t AudioCdSrc p) => R.HasField t AudioCdSrc p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveAudioCdSrcMethod t AudioCdSrc, O.OverloadedMethodInfo info AudioCdSrc) => OL.IsLabel t (O.MethodProxy info AudioCdSrc) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
getAudioCdSrcDevice :: (MonadIO m, IsAudioCdSrc o) => o -> m (Maybe T.Text)
getAudioCdSrcDevice :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> m (Maybe Text)
getAudioCdSrcDevice o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"device"
setAudioCdSrcDevice :: (MonadIO m, IsAudioCdSrc o) => o -> T.Text -> m ()
setAudioCdSrcDevice :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> Text -> m ()
setAudioCdSrcDevice o
obj Text
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 -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"device" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)
constructAudioCdSrcDevice :: (IsAudioCdSrc o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructAudioCdSrcDevice :: forall o (m :: * -> *).
(IsAudioCdSrc o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructAudioCdSrcDevice Text
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 -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"device" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)
clearAudioCdSrcDevice :: (MonadIO m, IsAudioCdSrc o) => o -> m ()
clearAudioCdSrcDevice :: forall (m :: * -> *) o. (MonadIO m, IsAudioCdSrc o) => o -> m ()
clearAudioCdSrcDevice o
obj = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"device" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)
#if defined(ENABLE_OVERLOADING)
data AudioCdSrcDevicePropertyInfo
instance AttrInfo AudioCdSrcDevicePropertyInfo where
type AttrAllowedOps AudioCdSrcDevicePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint AudioCdSrcDevicePropertyInfo = IsAudioCdSrc
type AttrSetTypeConstraint AudioCdSrcDevicePropertyInfo = (~) T.Text
type AttrTransferTypeConstraint AudioCdSrcDevicePropertyInfo = (~) T.Text
type AttrTransferType AudioCdSrcDevicePropertyInfo = T.Text
type AttrGetType AudioCdSrcDevicePropertyInfo = (Maybe T.Text)
type AttrLabel AudioCdSrcDevicePropertyInfo = "device"
type AttrOrigin AudioCdSrcDevicePropertyInfo = AudioCdSrc
attrGet = getAudioCdSrcDevice
attrSet = setAudioCdSrcDevice
attrTransfer _ v = do
return v
attrConstruct = constructAudioCdSrcDevice
attrClear = clearAudioCdSrcDevice
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Objects.AudioCdSrc.device"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Objects-AudioCdSrc.html#g:attr:device"
})
#endif
getAudioCdSrcMode :: (MonadIO m, IsAudioCdSrc o) => o -> m GstAudio.Enums.AudioCdSrcMode
getAudioCdSrcMode :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> m AudioCdSrcMode
getAudioCdSrcMode o
obj = IO AudioCdSrcMode -> m AudioCdSrcMode
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO AudioCdSrcMode -> m AudioCdSrcMode)
-> IO AudioCdSrcMode -> m AudioCdSrcMode
forall a b. (a -> b) -> a -> b
$ o -> String -> IO AudioCdSrcMode
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"mode"
setAudioCdSrcMode :: (MonadIO m, IsAudioCdSrc o) => o -> GstAudio.Enums.AudioCdSrcMode -> m ()
setAudioCdSrcMode :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> AudioCdSrcMode -> m ()
setAudioCdSrcMode o
obj AudioCdSrcMode
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 -> AudioCdSrcMode -> IO ()
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"mode" AudioCdSrcMode
val
constructAudioCdSrcMode :: (IsAudioCdSrc o, MIO.MonadIO m) => GstAudio.Enums.AudioCdSrcMode -> m (GValueConstruct o)
constructAudioCdSrcMode :: forall o (m :: * -> *).
(IsAudioCdSrc o, MonadIO m) =>
AudioCdSrcMode -> m (GValueConstruct o)
constructAudioCdSrcMode AudioCdSrcMode
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 -> AudioCdSrcMode -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"mode" AudioCdSrcMode
val
#if defined(ENABLE_OVERLOADING)
data AudioCdSrcModePropertyInfo
instance AttrInfo AudioCdSrcModePropertyInfo where
type AttrAllowedOps AudioCdSrcModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint AudioCdSrcModePropertyInfo = IsAudioCdSrc
type AttrSetTypeConstraint AudioCdSrcModePropertyInfo = (~) GstAudio.Enums.AudioCdSrcMode
type AttrTransferTypeConstraint AudioCdSrcModePropertyInfo = (~) GstAudio.Enums.AudioCdSrcMode
type AttrTransferType AudioCdSrcModePropertyInfo = GstAudio.Enums.AudioCdSrcMode
type AttrGetType AudioCdSrcModePropertyInfo = GstAudio.Enums.AudioCdSrcMode
type AttrLabel AudioCdSrcModePropertyInfo = "mode"
type AttrOrigin AudioCdSrcModePropertyInfo = AudioCdSrc
attrGet = getAudioCdSrcMode
attrSet = setAudioCdSrcMode
attrTransfer _ v = do
return v
attrConstruct = constructAudioCdSrcMode
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Objects.AudioCdSrc.mode"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Objects-AudioCdSrc.html#g:attr:mode"
})
#endif
getAudioCdSrcTrack :: (MonadIO m, IsAudioCdSrc o) => o -> m Word32
getAudioCdSrcTrack :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> m Word32
getAudioCdSrcTrack o
obj = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"track"
setAudioCdSrcTrack :: (MonadIO m, IsAudioCdSrc o) => o -> Word32 -> m ()
setAudioCdSrcTrack :: forall (m :: * -> *) o.
(MonadIO m, IsAudioCdSrc o) =>
o -> Word32 -> m ()
setAudioCdSrcTrack o
obj Word32
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 -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"track" Word32
val
constructAudioCdSrcTrack :: (IsAudioCdSrc o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructAudioCdSrcTrack :: forall o (m :: * -> *).
(IsAudioCdSrc o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructAudioCdSrcTrack Word32
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 -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"track" Word32
val
#if defined(ENABLE_OVERLOADING)
data AudioCdSrcTrackPropertyInfo
instance AttrInfo AudioCdSrcTrackPropertyInfo where
type AttrAllowedOps AudioCdSrcTrackPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint AudioCdSrcTrackPropertyInfo = IsAudioCdSrc
type AttrSetTypeConstraint AudioCdSrcTrackPropertyInfo = (~) Word32
type AttrTransferTypeConstraint AudioCdSrcTrackPropertyInfo = (~) Word32
type AttrTransferType AudioCdSrcTrackPropertyInfo = Word32
type AttrGetType AudioCdSrcTrackPropertyInfo = Word32
type AttrLabel AudioCdSrcTrackPropertyInfo = "track"
type AttrOrigin AudioCdSrcTrackPropertyInfo = AudioCdSrc
attrGet = getAudioCdSrcTrack
attrSet = setAudioCdSrcTrack
attrTransfer _ v = do
return v
attrConstruct = constructAudioCdSrcTrack
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Objects.AudioCdSrc.track"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Objects-AudioCdSrc.html#g:attr:track"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AudioCdSrc
type instance O.AttributeList AudioCdSrc = AudioCdSrcAttributeList
type AudioCdSrcAttributeList = ('[ '("blocksize", GstBase.BaseSrc.BaseSrcBlocksizePropertyInfo), '("device", AudioCdSrcDevicePropertyInfo), '("doTimestamp", GstBase.BaseSrc.BaseSrcDoTimestampPropertyInfo), '("mode", AudioCdSrcModePropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("numBuffers", GstBase.BaseSrc.BaseSrcNumBuffersPropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("track", AudioCdSrcTrackPropertyInfo), '("typefind", GstBase.BaseSrc.BaseSrcTypefindPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
audioCdSrcDevice :: AttrLabelProxy "device"
audioCdSrcDevice = AttrLabelProxy
audioCdSrcMode :: AttrLabelProxy "mode"
audioCdSrcMode = AttrLabelProxy
audioCdSrcTrack :: AttrLabelProxy "track"
audioCdSrcTrack = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList AudioCdSrc = AudioCdSrcSignalList
type AudioCdSrcSignalList = ('[ '("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_audio_cd_src_add_track" gst_audio_cd_src_add_track ::
Ptr AudioCdSrc ->
Ptr GstAudio.AudioCdSrcTrack.AudioCdSrcTrack ->
IO CInt
audioCdSrcAddTrack ::
(B.CallStack.HasCallStack, MonadIO m, IsAudioCdSrc a) =>
a
-> GstAudio.AudioCdSrcTrack.AudioCdSrcTrack
-> m Bool
audioCdSrcAddTrack :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsAudioCdSrc a) =>
a -> AudioCdSrcTrack -> m Bool
audioCdSrcAddTrack a
src AudioCdSrcTrack
track = IO Bool -> m Bool
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 AudioCdSrc
src' <- a -> IO (Ptr AudioCdSrc)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
src
Ptr AudioCdSrcTrack
track' <- AudioCdSrcTrack -> IO (Ptr AudioCdSrcTrack)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr AudioCdSrcTrack
track
CInt
result <- Ptr AudioCdSrc -> Ptr AudioCdSrcTrack -> IO CInt
gst_audio_cd_src_add_track Ptr AudioCdSrc
src' Ptr AudioCdSrcTrack
track'
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
src
AudioCdSrcTrack -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr AudioCdSrcTrack
track
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data AudioCdSrcAddTrackMethodInfo
instance (signature ~ (GstAudio.AudioCdSrcTrack.AudioCdSrcTrack -> m Bool), MonadIO m, IsAudioCdSrc a) => O.OverloadedMethod AudioCdSrcAddTrackMethodInfo a signature where
overloadedMethod = audioCdSrcAddTrack
instance O.OverloadedMethodInfo AudioCdSrcAddTrackMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Objects.AudioCdSrc.audioCdSrcAddTrack",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Objects-AudioCdSrc.html#v:audioCdSrcAddTrack"
})
#endif