{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstAudio.Structs.AudioRingBufferSpec
(
AudioRingBufferSpec(..) ,
newZeroAudioRingBufferSpec ,
#if defined(ENABLE_OVERLOADING)
ResolveAudioRingBufferSpecMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_bufferTime ,
#endif
getAudioRingBufferSpecBufferTime ,
setAudioRingBufferSpecBufferTime ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_caps ,
#endif
clearAudioRingBufferSpecCaps ,
getAudioRingBufferSpecCaps ,
setAudioRingBufferSpecCaps ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_info ,
#endif
getAudioRingBufferSpecInfo ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_latencyTime ,
#endif
getAudioRingBufferSpecLatencyTime ,
setAudioRingBufferSpecLatencyTime ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_seglatency ,
#endif
getAudioRingBufferSpecSeglatency ,
setAudioRingBufferSpecSeglatency ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_segsize ,
#endif
getAudioRingBufferSpecSegsize ,
setAudioRingBufferSpecSegsize ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_segtotal ,
#endif
getAudioRingBufferSpecSegtotal ,
setAudioRingBufferSpecSegtotal ,
#if defined(ENABLE_OVERLOADING)
audioRingBufferSpec_type ,
#endif
getAudioRingBufferSpecType ,
setAudioRingBufferSpecType ,
) 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.Gst.Structs.Caps as Gst.Caps
import {-# SOURCE #-} qualified GI.GstAudio.Enums as GstAudio.Enums
import {-# SOURCE #-} qualified GI.GstAudio.Structs.AudioInfo as GstAudio.AudioInfo
newtype AudioRingBufferSpec = AudioRingBufferSpec (SP.ManagedPtr AudioRingBufferSpec)
deriving (AudioRingBufferSpec -> AudioRingBufferSpec -> Bool
(AudioRingBufferSpec -> AudioRingBufferSpec -> Bool)
-> (AudioRingBufferSpec -> AudioRingBufferSpec -> Bool)
-> Eq AudioRingBufferSpec
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: AudioRingBufferSpec -> AudioRingBufferSpec -> Bool
$c/= :: AudioRingBufferSpec -> AudioRingBufferSpec -> Bool
== :: AudioRingBufferSpec -> AudioRingBufferSpec -> Bool
$c== :: AudioRingBufferSpec -> AudioRingBufferSpec -> Bool
Eq)
instance SP.ManagedPtrNewtype AudioRingBufferSpec where
toManagedPtr :: AudioRingBufferSpec -> ManagedPtr AudioRingBufferSpec
toManagedPtr (AudioRingBufferSpec ManagedPtr AudioRingBufferSpec
p) = ManagedPtr AudioRingBufferSpec
p
instance BoxedPtr AudioRingBufferSpec where
boxedPtrCopy :: AudioRingBufferSpec -> IO AudioRingBufferSpec
boxedPtrCopy = \AudioRingBufferSpec
p -> AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO AudioRingBufferSpec)
-> IO AudioRingBufferSpec
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr AudioRingBufferSpec
p (Int -> Ptr AudioRingBufferSpec -> IO (Ptr AudioRingBufferSpec)
forall a. (HasCallStack, CallocPtr a) => Int -> Ptr a -> IO (Ptr a)
copyBytes Int
400 (Ptr AudioRingBufferSpec -> IO (Ptr AudioRingBufferSpec))
-> (Ptr AudioRingBufferSpec -> IO AudioRingBufferSpec)
-> Ptr AudioRingBufferSpec
-> IO AudioRingBufferSpec
forall (m :: * -> *) a b c.
Monad m =>
(a -> m b) -> (b -> m c) -> a -> m c
>=> (ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec)
-> Ptr AudioRingBufferSpec -> IO AudioRingBufferSpec
forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.wrapPtr ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec
AudioRingBufferSpec)
boxedPtrFree :: AudioRingBufferSpec -> IO ()
boxedPtrFree = \AudioRingBufferSpec
x -> AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
SP.withManagedPtr AudioRingBufferSpec
x Ptr AudioRingBufferSpec -> IO ()
forall a. Ptr a -> IO ()
SP.freeMem
instance CallocPtr AudioRingBufferSpec where
boxedPtrCalloc :: IO (Ptr AudioRingBufferSpec)
boxedPtrCalloc = Int -> IO (Ptr AudioRingBufferSpec)
forall a. Int -> IO (Ptr a)
callocBytes Int
400
newZeroAudioRingBufferSpec :: MonadIO m => m AudioRingBufferSpec
newZeroAudioRingBufferSpec :: forall (m :: * -> *). MonadIO m => m AudioRingBufferSpec
newZeroAudioRingBufferSpec = IO AudioRingBufferSpec -> m AudioRingBufferSpec
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO AudioRingBufferSpec -> m AudioRingBufferSpec)
-> IO AudioRingBufferSpec -> m AudioRingBufferSpec
forall a b. (a -> b) -> a -> b
$ IO (Ptr AudioRingBufferSpec)
forall a. CallocPtr a => IO (Ptr a)
boxedPtrCalloc IO (Ptr AudioRingBufferSpec)
-> (Ptr AudioRingBufferSpec -> IO AudioRingBufferSpec)
-> IO AudioRingBufferSpec
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec)
-> Ptr AudioRingBufferSpec -> IO AudioRingBufferSpec
forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapPtr ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec
AudioRingBufferSpec
instance tag ~ 'AttrSet => Constructible AudioRingBufferSpec tag where
new :: forall (m :: * -> *).
MonadIO m =>
(ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec)
-> [AttrOp AudioRingBufferSpec tag] -> m AudioRingBufferSpec
new ManagedPtr AudioRingBufferSpec -> AudioRingBufferSpec
_ [AttrOp AudioRingBufferSpec tag]
attrs = do
AudioRingBufferSpec
o <- m AudioRingBufferSpec
forall (m :: * -> *). MonadIO m => m AudioRingBufferSpec
newZeroAudioRingBufferSpec
AudioRingBufferSpec
-> [AttrOp AudioRingBufferSpec 'AttrSet] -> m ()
forall o (m :: * -> *).
MonadIO m =>
o -> [AttrOp o 'AttrSet] -> m ()
GI.Attributes.set AudioRingBufferSpec
o [AttrOp AudioRingBufferSpec tag]
[AttrOp AudioRingBufferSpec 'AttrSet]
attrs
AudioRingBufferSpec -> m AudioRingBufferSpec
forall (m :: * -> *) a. Monad m => a -> m a
return AudioRingBufferSpec
o
getAudioRingBufferSpecCaps :: MonadIO m => AudioRingBufferSpec -> m (Maybe Gst.Caps.Caps)
getAudioRingBufferSpecCaps :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> m (Maybe Caps)
getAudioRingBufferSpecCaps AudioRingBufferSpec
s = IO (Maybe Caps) -> m (Maybe Caps)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Caps) -> m (Maybe Caps))
-> IO (Maybe Caps) -> m (Maybe Caps)
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO (Maybe Caps)) -> IO (Maybe Caps)
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO (Maybe Caps)) -> IO (Maybe Caps))
-> (Ptr AudioRingBufferSpec -> IO (Maybe Caps)) -> IO (Maybe Caps)
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Caps
val <- Ptr (Ptr Caps) -> IO (Ptr Caps)
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr (Ptr Caps)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) :: IO (Ptr Gst.Caps.Caps)
Maybe Caps
result <- Ptr Caps -> (Ptr Caps -> IO Caps) -> IO (Maybe Caps)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
SP.convertIfNonNull Ptr Caps
val ((Ptr Caps -> IO Caps) -> IO (Maybe Caps))
-> (Ptr Caps -> IO Caps) -> IO (Maybe Caps)
forall a b. (a -> b) -> a -> b
$ \Ptr Caps
val' -> do
Caps
val'' <- ((ManagedPtr Caps -> Caps) -> Ptr Caps -> IO Caps
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr Caps -> Caps
Gst.Caps.Caps) Ptr Caps
val'
Caps -> IO Caps
forall (m :: * -> *) a. Monad m => a -> m a
return Caps
val''
Maybe Caps -> IO (Maybe Caps)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Caps
result
setAudioRingBufferSpecCaps :: MonadIO m => AudioRingBufferSpec -> Ptr Gst.Caps.Caps -> m ()
setAudioRingBufferSpecCaps :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Ptr Caps -> m ()
setAudioRingBufferSpecCaps AudioRingBufferSpec
s Ptr Caps
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr (Ptr Caps) -> Ptr Caps -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr (Ptr Caps)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) (Ptr Caps
val :: Ptr Gst.Caps.Caps)
clearAudioRingBufferSpecCaps :: MonadIO m => AudioRingBufferSpec -> m ()
clearAudioRingBufferSpecCaps :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m ()
clearAudioRingBufferSpecCaps AudioRingBufferSpec
s = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr (Ptr Caps) -> Ptr Caps -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr (Ptr Caps)
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) (Ptr Caps
forall a. Ptr a
FP.nullPtr :: Ptr Gst.Caps.Caps)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecCapsFieldInfo
instance AttrInfo AudioRingBufferSpecCapsFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecCapsFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecCapsFieldInfo = '[ 'AttrSet, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint AudioRingBufferSpecCapsFieldInfo = (~) (Ptr Gst.Caps.Caps)
type AttrTransferTypeConstraint AudioRingBufferSpecCapsFieldInfo = (~)(Ptr Gst.Caps.Caps)
type AttrTransferType AudioRingBufferSpecCapsFieldInfo = (Ptr Gst.Caps.Caps)
type AttrGetType AudioRingBufferSpecCapsFieldInfo = Maybe Gst.Caps.Caps
type AttrLabel AudioRingBufferSpecCapsFieldInfo = "caps"
type AttrOrigin AudioRingBufferSpecCapsFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecCaps
attrSet = setAudioRingBufferSpecCaps
attrConstruct = undefined
attrClear = clearAudioRingBufferSpecCaps
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.caps"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:caps"
})
audioRingBufferSpec_caps :: AttrLabelProxy "caps"
audioRingBufferSpec_caps = AttrLabelProxy
#endif
getAudioRingBufferSpecType :: MonadIO m => AudioRingBufferSpec -> m GstAudio.Enums.AudioRingBufferFormatType
getAudioRingBufferSpecType :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> m AudioRingBufferFormatType
getAudioRingBufferSpecType AudioRingBufferSpec
s = IO AudioRingBufferFormatType -> m AudioRingBufferFormatType
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO AudioRingBufferFormatType -> m AudioRingBufferFormatType)
-> IO AudioRingBufferFormatType -> m AudioRingBufferFormatType
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO AudioRingBufferFormatType)
-> IO AudioRingBufferFormatType
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO AudioRingBufferFormatType)
-> IO AudioRingBufferFormatType)
-> (Ptr AudioRingBufferSpec -> IO AudioRingBufferFormatType)
-> IO AudioRingBufferFormatType
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
CUInt
val <- Ptr CUInt -> IO CUInt
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr CUInt
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8) :: IO CUInt
let val' :: AudioRingBufferFormatType
val' = (Int -> AudioRingBufferFormatType
forall a. Enum a => Int -> a
toEnum (Int -> AudioRingBufferFormatType)
-> (CUInt -> Int) -> CUInt -> AudioRingBufferFormatType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
val
AudioRingBufferFormatType -> IO AudioRingBufferFormatType
forall (m :: * -> *) a. Monad m => a -> m a
return AudioRingBufferFormatType
val'
setAudioRingBufferSpecType :: MonadIO m => AudioRingBufferSpec -> GstAudio.Enums.AudioRingBufferFormatType -> m ()
setAudioRingBufferSpecType :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> AudioRingBufferFormatType -> m ()
setAudioRingBufferSpecType AudioRingBufferSpec
s AudioRingBufferFormatType
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
let val' :: CUInt
val' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt)
-> (AudioRingBufferFormatType -> Int)
-> AudioRingBufferFormatType
-> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. AudioRingBufferFormatType -> Int
forall a. Enum a => a -> Int
fromEnum) AudioRingBufferFormatType
val
Ptr CUInt -> CUInt -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr CUInt
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
8) (CUInt
val' :: CUInt)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecTypeFieldInfo
instance AttrInfo AudioRingBufferSpecTypeFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecTypeFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecTypeFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecTypeFieldInfo = (~) GstAudio.Enums.AudioRingBufferFormatType
type AttrTransferTypeConstraint AudioRingBufferSpecTypeFieldInfo = (~)GstAudio.Enums.AudioRingBufferFormatType
type AttrTransferType AudioRingBufferSpecTypeFieldInfo = GstAudio.Enums.AudioRingBufferFormatType
type AttrGetType AudioRingBufferSpecTypeFieldInfo = GstAudio.Enums.AudioRingBufferFormatType
type AttrLabel AudioRingBufferSpecTypeFieldInfo = "type"
type AttrOrigin AudioRingBufferSpecTypeFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecType
attrSet = setAudioRingBufferSpecType
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.type"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:type"
})
audioRingBufferSpec_type :: AttrLabelProxy "type"
audioRingBufferSpec_type = AttrLabelProxy
#endif
getAudioRingBufferSpecInfo :: MonadIO m => AudioRingBufferSpec -> m GstAudio.AudioInfo.AudioInfo
getAudioRingBufferSpecInfo :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> m AudioInfo
getAudioRingBufferSpecInfo AudioRingBufferSpec
s = IO AudioInfo -> m AudioInfo
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO AudioInfo -> m AudioInfo) -> IO AudioInfo -> m AudioInfo
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO AudioInfo) -> IO AudioInfo
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO AudioInfo) -> IO AudioInfo)
-> (Ptr AudioRingBufferSpec -> IO AudioInfo) -> IO AudioInfo
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
let val :: Ptr AudioInfo
val = Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr AudioInfo
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
16 :: (Ptr GstAudio.AudioInfo.AudioInfo)
AudioInfo
val' <- ((ManagedPtr AudioInfo -> AudioInfo)
-> Ptr AudioInfo -> IO AudioInfo
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr AudioInfo -> AudioInfo
GstAudio.AudioInfo.AudioInfo) Ptr AudioInfo
val
AudioInfo -> IO AudioInfo
forall (m :: * -> *) a. Monad m => a -> m a
return AudioInfo
val'
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecInfoFieldInfo
instance AttrInfo AudioRingBufferSpecInfoFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecInfoFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecInfoFieldInfo = '[ 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecInfoFieldInfo = (~) (Ptr GstAudio.AudioInfo.AudioInfo)
type AttrTransferTypeConstraint AudioRingBufferSpecInfoFieldInfo = (~)(Ptr GstAudio.AudioInfo.AudioInfo)
type AttrTransferType AudioRingBufferSpecInfoFieldInfo = (Ptr GstAudio.AudioInfo.AudioInfo)
type AttrGetType AudioRingBufferSpecInfoFieldInfo = GstAudio.AudioInfo.AudioInfo
type AttrLabel AudioRingBufferSpecInfoFieldInfo = "info"
type AttrOrigin AudioRingBufferSpecInfoFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecInfo
attrSet = undefined
attrConstruct = undefined
attrClear = undefined
attrTransfer = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.info"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:info"
})
audioRingBufferSpec_info :: AttrLabelProxy "info"
audioRingBufferSpec_info = AttrLabelProxy
#endif
getAudioRingBufferSpecLatencyTime :: MonadIO m => AudioRingBufferSpec -> m Word64
getAudioRingBufferSpecLatencyTime :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m Word64
getAudioRingBufferSpecLatencyTime AudioRingBufferSpec
s = IO Word64 -> m Word64
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64)
-> (Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Word64
val <- Ptr Word64 -> IO Word64
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
336) :: IO Word64
Word64 -> IO Word64
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
val
setAudioRingBufferSpecLatencyTime :: MonadIO m => AudioRingBufferSpec -> Word64 -> m ()
setAudioRingBufferSpecLatencyTime :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Word64 -> m ()
setAudioRingBufferSpecLatencyTime AudioRingBufferSpec
s Word64
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
336) (Word64
val :: Word64)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecLatencyTimeFieldInfo
instance AttrInfo AudioRingBufferSpecLatencyTimeFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecLatencyTimeFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecLatencyTimeFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecLatencyTimeFieldInfo = (~) Word64
type AttrTransferTypeConstraint AudioRingBufferSpecLatencyTimeFieldInfo = (~)Word64
type AttrTransferType AudioRingBufferSpecLatencyTimeFieldInfo = Word64
type AttrGetType AudioRingBufferSpecLatencyTimeFieldInfo = Word64
type AttrLabel AudioRingBufferSpecLatencyTimeFieldInfo = "latency_time"
type AttrOrigin AudioRingBufferSpecLatencyTimeFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecLatencyTime
attrSet = setAudioRingBufferSpecLatencyTime
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.latencyTime"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:latencyTime"
})
audioRingBufferSpec_latencyTime :: AttrLabelProxy "latencyTime"
audioRingBufferSpec_latencyTime = AttrLabelProxy
#endif
getAudioRingBufferSpecBufferTime :: MonadIO m => AudioRingBufferSpec -> m Word64
getAudioRingBufferSpecBufferTime :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m Word64
getAudioRingBufferSpecBufferTime AudioRingBufferSpec
s = IO Word64 -> m Word64
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word64 -> m Word64) -> IO Word64 -> m Word64
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64)
-> (Ptr AudioRingBufferSpec -> IO Word64) -> IO Word64
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Word64
val <- Ptr Word64 -> IO Word64
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
344) :: IO Word64
Word64 -> IO Word64
forall (m :: * -> *) a. Monad m => a -> m a
return Word64
val
setAudioRingBufferSpecBufferTime :: MonadIO m => AudioRingBufferSpec -> Word64 -> m ()
setAudioRingBufferSpecBufferTime :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Word64 -> m ()
setAudioRingBufferSpecBufferTime AudioRingBufferSpec
s Word64
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Word64 -> Word64 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Word64
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
344) (Word64
val :: Word64)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecBufferTimeFieldInfo
instance AttrInfo AudioRingBufferSpecBufferTimeFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecBufferTimeFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecBufferTimeFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecBufferTimeFieldInfo = (~) Word64
type AttrTransferTypeConstraint AudioRingBufferSpecBufferTimeFieldInfo = (~)Word64
type AttrTransferType AudioRingBufferSpecBufferTimeFieldInfo = Word64
type AttrGetType AudioRingBufferSpecBufferTimeFieldInfo = Word64
type AttrLabel AudioRingBufferSpecBufferTimeFieldInfo = "buffer_time"
type AttrOrigin AudioRingBufferSpecBufferTimeFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecBufferTime
attrSet = setAudioRingBufferSpecBufferTime
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.bufferTime"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:bufferTime"
})
audioRingBufferSpec_bufferTime :: AttrLabelProxy "bufferTime"
audioRingBufferSpec_bufferTime = AttrLabelProxy
#endif
getAudioRingBufferSpecSegsize :: MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSegsize :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSegsize AudioRingBufferSpec
s = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32)
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Int32
val <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
352) :: IO Int32
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
val
setAudioRingBufferSpecSegsize :: MonadIO m => AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSegsize :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSegsize AudioRingBufferSpec
s Int32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Int32 -> Int32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
352) (Int32
val :: Int32)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecSegsizeFieldInfo
instance AttrInfo AudioRingBufferSpecSegsizeFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecSegsizeFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecSegsizeFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecSegsizeFieldInfo = (~) Int32
type AttrTransferTypeConstraint AudioRingBufferSpecSegsizeFieldInfo = (~)Int32
type AttrTransferType AudioRingBufferSpecSegsizeFieldInfo = Int32
type AttrGetType AudioRingBufferSpecSegsizeFieldInfo = Int32
type AttrLabel AudioRingBufferSpecSegsizeFieldInfo = "segsize"
type AttrOrigin AudioRingBufferSpecSegsizeFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecSegsize
attrSet = setAudioRingBufferSpecSegsize
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.segsize"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:segsize"
})
audioRingBufferSpec_segsize :: AttrLabelProxy "segsize"
audioRingBufferSpec_segsize = AttrLabelProxy
#endif
getAudioRingBufferSpecSegtotal :: MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSegtotal :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSegtotal AudioRingBufferSpec
s = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32)
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Int32
val <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
356) :: IO Int32
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
val
setAudioRingBufferSpecSegtotal :: MonadIO m => AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSegtotal :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSegtotal AudioRingBufferSpec
s Int32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Int32 -> Int32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
356) (Int32
val :: Int32)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecSegtotalFieldInfo
instance AttrInfo AudioRingBufferSpecSegtotalFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecSegtotalFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecSegtotalFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecSegtotalFieldInfo = (~) Int32
type AttrTransferTypeConstraint AudioRingBufferSpecSegtotalFieldInfo = (~)Int32
type AttrTransferType AudioRingBufferSpecSegtotalFieldInfo = Int32
type AttrGetType AudioRingBufferSpecSegtotalFieldInfo = Int32
type AttrLabel AudioRingBufferSpecSegtotalFieldInfo = "segtotal"
type AttrOrigin AudioRingBufferSpecSegtotalFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecSegtotal
attrSet = setAudioRingBufferSpecSegtotal
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.segtotal"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:segtotal"
})
audioRingBufferSpec_segtotal :: AttrLabelProxy "segtotal"
audioRingBufferSpec_segtotal = AttrLabelProxy
#endif
getAudioRingBufferSpecSeglatency :: MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSeglatency :: forall (m :: * -> *). MonadIO m => AudioRingBufferSpec -> m Int32
getAudioRingBufferSpecSeglatency AudioRingBufferSpec
s = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32)
-> (Ptr AudioRingBufferSpec -> IO Int32) -> IO Int32
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Int32
val <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
360) :: IO Int32
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
val
setAudioRingBufferSpecSeglatency :: MonadIO m => AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSeglatency :: forall (m :: * -> *).
MonadIO m =>
AudioRingBufferSpec -> Int32 -> m ()
setAudioRingBufferSpecSeglatency AudioRingBufferSpec
s Int32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ AudioRingBufferSpec -> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr AudioRingBufferSpec
s ((Ptr AudioRingBufferSpec -> IO ()) -> IO ())
-> (Ptr AudioRingBufferSpec -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr AudioRingBufferSpec
ptr -> do
Ptr Int32 -> Int32 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr AudioRingBufferSpec
ptr Ptr AudioRingBufferSpec -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
360) (Int32
val :: Int32)
#if defined(ENABLE_OVERLOADING)
data AudioRingBufferSpecSeglatencyFieldInfo
instance AttrInfo AudioRingBufferSpecSeglatencyFieldInfo where
type AttrBaseTypeConstraint AudioRingBufferSpecSeglatencyFieldInfo = (~) AudioRingBufferSpec
type AttrAllowedOps AudioRingBufferSpecSeglatencyFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint AudioRingBufferSpecSeglatencyFieldInfo = (~) Int32
type AttrTransferTypeConstraint AudioRingBufferSpecSeglatencyFieldInfo = (~)Int32
type AttrTransferType AudioRingBufferSpecSeglatencyFieldInfo = Int32
type AttrGetType AudioRingBufferSpecSeglatencyFieldInfo = Int32
type AttrLabel AudioRingBufferSpecSeglatencyFieldInfo = "seglatency"
type AttrOrigin AudioRingBufferSpecSeglatencyFieldInfo = AudioRingBufferSpec
attrGet = getAudioRingBufferSpecSeglatency
attrSet = setAudioRingBufferSpecSeglatency
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstAudio.Structs.AudioRingBufferSpec.seglatency"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstaudio-1.0.24/docs/GI-GstAudio-Structs-AudioRingBufferSpec.html#g:attr:seglatency"
})
audioRingBufferSpec_seglatency :: AttrLabelProxy "seglatency"
audioRingBufferSpec_seglatency = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AudioRingBufferSpec
type instance O.AttributeList AudioRingBufferSpec = AudioRingBufferSpecAttributeList
type AudioRingBufferSpecAttributeList = ('[ '("caps", AudioRingBufferSpecCapsFieldInfo), '("type", AudioRingBufferSpecTypeFieldInfo), '("info", AudioRingBufferSpecInfoFieldInfo), '("latencyTime", AudioRingBufferSpecLatencyTimeFieldInfo), '("bufferTime", AudioRingBufferSpecBufferTimeFieldInfo), '("segsize", AudioRingBufferSpecSegsizeFieldInfo), '("segtotal", AudioRingBufferSpecSegtotalFieldInfo), '("seglatency", AudioRingBufferSpecSeglatencyFieldInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveAudioRingBufferSpecMethod (t :: Symbol) (o :: *) :: * where
ResolveAudioRingBufferSpecMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAudioRingBufferSpecMethod t AudioRingBufferSpec, O.OverloadedMethod info AudioRingBufferSpec p) => OL.IsLabel t (AudioRingBufferSpec -> 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 ~ ResolveAudioRingBufferSpecMethod t AudioRingBufferSpec, O.OverloadedMethod info AudioRingBufferSpec p, R.HasField t AudioRingBufferSpec p) => R.HasField t AudioRingBufferSpec p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveAudioRingBufferSpecMethod t AudioRingBufferSpec, O.OverloadedMethodInfo info AudioRingBufferSpec) => OL.IsLabel t (O.MethodProxy info AudioRingBufferSpec) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif