{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.GstVideo.Structs.VideoMasteringDisplayInfoCoordinates
(
VideoMasteringDisplayInfoCoordinates(..),
newZeroVideoMasteringDisplayInfoCoordinates,
#if defined(ENABLE_OVERLOADING)
ResolveVideoMasteringDisplayInfoCoordinatesMethod,
#endif
getVideoMasteringDisplayInfoCoordinatesX,
setVideoMasteringDisplayInfoCoordinatesX,
#if defined(ENABLE_OVERLOADING)
videoMasteringDisplayInfoCoordinates_x ,
#endif
getVideoMasteringDisplayInfoCoordinatesY,
setVideoMasteringDisplayInfoCoordinatesY,
#if defined(ENABLE_OVERLOADING)
videoMasteringDisplayInfoCoordinates_y ,
#endif
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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.Kind as DK
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
newtype VideoMasteringDisplayInfoCoordinates = VideoMasteringDisplayInfoCoordinates (SP.ManagedPtr VideoMasteringDisplayInfoCoordinates)
deriving (VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool
(VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool)
-> (VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool)
-> Eq VideoMasteringDisplayInfoCoordinates
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool
== :: VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool
$c/= :: VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool
/= :: VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates -> Bool
Eq)
instance SP.ManagedPtrNewtype VideoMasteringDisplayInfoCoordinates where
toManagedPtr :: VideoMasteringDisplayInfoCoordinates
-> ManagedPtr VideoMasteringDisplayInfoCoordinates
toManagedPtr (VideoMasteringDisplayInfoCoordinates ManagedPtr VideoMasteringDisplayInfoCoordinates
p) = ManagedPtr VideoMasteringDisplayInfoCoordinates
p
instance BoxedPtr VideoMasteringDisplayInfoCoordinates where
boxedPtrCopy :: VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates
boxedPtrCopy = \VideoMasteringDisplayInfoCoordinates
p -> VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates)
-> IO VideoMasteringDisplayInfoCoordinates
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr VideoMasteringDisplayInfoCoordinates
p (Int
-> Ptr VideoMasteringDisplayInfoCoordinates
-> IO (Ptr VideoMasteringDisplayInfoCoordinates)
forall a. (HasCallStack, CallocPtr a) => Int -> Ptr a -> IO (Ptr a)
copyBytes Int
4 (Ptr VideoMasteringDisplayInfoCoordinates
-> IO (Ptr VideoMasteringDisplayInfoCoordinates))
-> (Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates)
-> Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates
forall (m :: * -> *) a b c.
Monad m =>
(a -> m b) -> (b -> m c) -> a -> m c
>=> (ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates)
-> Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates
forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.wrapPtr ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates
VideoMasteringDisplayInfoCoordinates)
boxedPtrFree :: VideoMasteringDisplayInfoCoordinates -> IO ()
boxedPtrFree = \VideoMasteringDisplayInfoCoordinates
x -> VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
SP.withManagedPtr VideoMasteringDisplayInfoCoordinates
x Ptr VideoMasteringDisplayInfoCoordinates -> IO ()
forall a. Ptr a -> IO ()
SP.freeMem
instance CallocPtr VideoMasteringDisplayInfoCoordinates where
boxedPtrCalloc :: IO (Ptr VideoMasteringDisplayInfoCoordinates)
boxedPtrCalloc = Int -> IO (Ptr VideoMasteringDisplayInfoCoordinates)
forall a. Int -> IO (Ptr a)
callocBytes Int
4
newZeroVideoMasteringDisplayInfoCoordinates :: MonadIO m => m VideoMasteringDisplayInfoCoordinates
newZeroVideoMasteringDisplayInfoCoordinates :: forall (m :: * -> *).
MonadIO m =>
m VideoMasteringDisplayInfoCoordinates
newZeroVideoMasteringDisplayInfoCoordinates = IO VideoMasteringDisplayInfoCoordinates
-> m VideoMasteringDisplayInfoCoordinates
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO VideoMasteringDisplayInfoCoordinates
-> m VideoMasteringDisplayInfoCoordinates)
-> IO VideoMasteringDisplayInfoCoordinates
-> m VideoMasteringDisplayInfoCoordinates
forall a b. (a -> b) -> a -> b
$ IO (Ptr VideoMasteringDisplayInfoCoordinates)
forall a. CallocPtr a => IO (Ptr a)
boxedPtrCalloc IO (Ptr VideoMasteringDisplayInfoCoordinates)
-> (Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates)
-> IO VideoMasteringDisplayInfoCoordinates
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates)
-> Ptr VideoMasteringDisplayInfoCoordinates
-> IO VideoMasteringDisplayInfoCoordinates
forall a.
(HasCallStack, BoxedPtr a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapPtr ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates
VideoMasteringDisplayInfoCoordinates
instance tag ~ 'AttrSet => Constructible VideoMasteringDisplayInfoCoordinates tag where
new :: forall (m :: * -> *).
MonadIO m =>
(ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates)
-> [AttrOp VideoMasteringDisplayInfoCoordinates tag]
-> m VideoMasteringDisplayInfoCoordinates
new ManagedPtr VideoMasteringDisplayInfoCoordinates
-> VideoMasteringDisplayInfoCoordinates
_ [AttrOp VideoMasteringDisplayInfoCoordinates tag]
attrs = do
VideoMasteringDisplayInfoCoordinates
o <- m VideoMasteringDisplayInfoCoordinates
forall (m :: * -> *).
MonadIO m =>
m VideoMasteringDisplayInfoCoordinates
newZeroVideoMasteringDisplayInfoCoordinates
VideoMasteringDisplayInfoCoordinates
-> [AttrOp VideoMasteringDisplayInfoCoordinates 'AttrSet] -> m ()
forall o (m :: * -> *).
MonadIO m =>
o -> [AttrOp o 'AttrSet] -> m ()
GI.Attributes.set VideoMasteringDisplayInfoCoordinates
o [AttrOp VideoMasteringDisplayInfoCoordinates tag]
[AttrOp VideoMasteringDisplayInfoCoordinates 'AttrSet]
attrs
VideoMasteringDisplayInfoCoordinates
-> m VideoMasteringDisplayInfoCoordinates
forall a. a -> m a
forall (m :: * -> *) a. Monad m => a -> m a
return VideoMasteringDisplayInfoCoordinates
o
getVideoMasteringDisplayInfoCoordinatesX :: MonadIO m => VideoMasteringDisplayInfoCoordinates -> m Word16
getVideoMasteringDisplayInfoCoordinatesX :: forall (m :: * -> *).
MonadIO m =>
VideoMasteringDisplayInfoCoordinates -> m Word16
getVideoMasteringDisplayInfoCoordinatesX VideoMasteringDisplayInfoCoordinates
s = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr VideoMasteringDisplayInfoCoordinates
s ((Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16)
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16
forall a b. (a -> b) -> a -> b
$ \Ptr VideoMasteringDisplayInfoCoordinates
ptr -> do
Word16
val <- Ptr Word16 -> IO Word16
forall a. Storable a => Ptr a -> IO a
peek (Ptr VideoMasteringDisplayInfoCoordinates
ptr Ptr VideoMasteringDisplayInfoCoordinates -> Int -> Ptr Word16
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) :: IO Word16
Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
val
setVideoMasteringDisplayInfoCoordinatesX :: MonadIO m => VideoMasteringDisplayInfoCoordinates -> Word16 -> m ()
setVideoMasteringDisplayInfoCoordinatesX :: forall (m :: * -> *).
MonadIO m =>
VideoMasteringDisplayInfoCoordinates -> Word16 -> m ()
setVideoMasteringDisplayInfoCoordinatesX VideoMasteringDisplayInfoCoordinates
s Word16
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr VideoMasteringDisplayInfoCoordinates
s ((Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ())
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr VideoMasteringDisplayInfoCoordinates
ptr -> do
Ptr Word16 -> Word16 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr VideoMasteringDisplayInfoCoordinates
ptr Ptr VideoMasteringDisplayInfoCoordinates -> Int -> Ptr Word16
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
0) (Word16
val :: Word16)
#if defined(ENABLE_OVERLOADING)
data VideoMasteringDisplayInfoCoordinatesXFieldInfo
instance AttrInfo VideoMasteringDisplayInfoCoordinatesXFieldInfo where
type AttrBaseTypeConstraint VideoMasteringDisplayInfoCoordinatesXFieldInfo = (~) VideoMasteringDisplayInfoCoordinates
type AttrAllowedOps VideoMasteringDisplayInfoCoordinatesXFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint VideoMasteringDisplayInfoCoordinatesXFieldInfo = (~) Word16
type AttrTransferTypeConstraint VideoMasteringDisplayInfoCoordinatesXFieldInfo = (~)Word16
type AttrTransferType VideoMasteringDisplayInfoCoordinatesXFieldInfo = Word16
type AttrGetType VideoMasteringDisplayInfoCoordinatesXFieldInfo = Word16
type AttrLabel VideoMasteringDisplayInfoCoordinatesXFieldInfo = "x"
type AttrOrigin VideoMasteringDisplayInfoCoordinatesXFieldInfo = VideoMasteringDisplayInfoCoordinates
attrGet = getVideoMasteringDisplayInfoCoordinatesX
attrSet = setVideoMasteringDisplayInfoCoordinatesX
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstVideo.Structs.VideoMasteringDisplayInfoCoordinates.x"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstvideo-1.0.28/docs/GI-GstVideo-Structs-VideoMasteringDisplayInfoCoordinates.html#g:attr:x"
})
videoMasteringDisplayInfoCoordinates_x :: AttrLabelProxy "x"
videoMasteringDisplayInfoCoordinates_x = AttrLabelProxy
#endif
getVideoMasteringDisplayInfoCoordinatesY :: MonadIO m => VideoMasteringDisplayInfoCoordinates -> m Word16
getVideoMasteringDisplayInfoCoordinatesY :: forall (m :: * -> *).
MonadIO m =>
VideoMasteringDisplayInfoCoordinates -> m Word16
getVideoMasteringDisplayInfoCoordinatesY VideoMasteringDisplayInfoCoordinates
s = IO Word16 -> m Word16
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word16 -> m Word16) -> IO Word16 -> m Word16
forall a b. (a -> b) -> a -> b
$ VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr VideoMasteringDisplayInfoCoordinates
s ((Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16)
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO Word16)
-> IO Word16
forall a b. (a -> b) -> a -> b
$ \Ptr VideoMasteringDisplayInfoCoordinates
ptr -> do
Word16
val <- Ptr Word16 -> IO Word16
forall a. Storable a => Ptr a -> IO a
peek (Ptr VideoMasteringDisplayInfoCoordinates
ptr Ptr VideoMasteringDisplayInfoCoordinates -> Int -> Ptr Word16
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
2) :: IO Word16
Word16 -> IO Word16
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Word16
val
setVideoMasteringDisplayInfoCoordinatesY :: MonadIO m => VideoMasteringDisplayInfoCoordinates -> Word16 -> m ()
setVideoMasteringDisplayInfoCoordinatesY :: forall (m :: * -> *).
MonadIO m =>
VideoMasteringDisplayInfoCoordinates -> Word16 -> m ()
setVideoMasteringDisplayInfoCoordinatesY VideoMasteringDisplayInfoCoordinates
s Word16
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ VideoMasteringDisplayInfoCoordinates
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
withManagedPtr VideoMasteringDisplayInfoCoordinates
s ((Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ())
-> (Ptr VideoMasteringDisplayInfoCoordinates -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr VideoMasteringDisplayInfoCoordinates
ptr -> do
Ptr Word16 -> Word16 -> IO ()
forall a. Storable a => Ptr a -> a -> IO ()
poke (Ptr VideoMasteringDisplayInfoCoordinates
ptr Ptr VideoMasteringDisplayInfoCoordinates -> Int -> Ptr Word16
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
2) (Word16
val :: Word16)
#if defined(ENABLE_OVERLOADING)
data VideoMasteringDisplayInfoCoordinatesYFieldInfo
instance AttrInfo VideoMasteringDisplayInfoCoordinatesYFieldInfo where
type AttrBaseTypeConstraint VideoMasteringDisplayInfoCoordinatesYFieldInfo = (~) VideoMasteringDisplayInfoCoordinates
type AttrAllowedOps VideoMasteringDisplayInfoCoordinatesYFieldInfo = '[ 'AttrSet, 'AttrGet]
type AttrSetTypeConstraint VideoMasteringDisplayInfoCoordinatesYFieldInfo = (~) Word16
type AttrTransferTypeConstraint VideoMasteringDisplayInfoCoordinatesYFieldInfo = (~)Word16
type AttrTransferType VideoMasteringDisplayInfoCoordinatesYFieldInfo = Word16
type AttrGetType VideoMasteringDisplayInfoCoordinatesYFieldInfo = Word16
type AttrLabel VideoMasteringDisplayInfoCoordinatesYFieldInfo = "y"
type AttrOrigin VideoMasteringDisplayInfoCoordinatesYFieldInfo = VideoMasteringDisplayInfoCoordinates
attrGet = getVideoMasteringDisplayInfoCoordinatesY
attrSet = setVideoMasteringDisplayInfoCoordinatesY
attrConstruct = undefined
attrClear = undefined
attrTransfer _ v = do
return v
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.GstVideo.Structs.VideoMasteringDisplayInfoCoordinates.y"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gstvideo-1.0.28/docs/GI-GstVideo-Structs-VideoMasteringDisplayInfoCoordinates.html#g:attr:y"
})
videoMasteringDisplayInfoCoordinates_y :: AttrLabelProxy "y"
videoMasteringDisplayInfoCoordinates_y = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList VideoMasteringDisplayInfoCoordinates
type instance O.AttributeList VideoMasteringDisplayInfoCoordinates = VideoMasteringDisplayInfoCoordinatesAttributeList
type VideoMasteringDisplayInfoCoordinatesAttributeList = ('[ '("x", VideoMasteringDisplayInfoCoordinatesXFieldInfo), '("y", VideoMasteringDisplayInfoCoordinatesYFieldInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveVideoMasteringDisplayInfoCoordinatesMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveVideoMasteringDisplayInfoCoordinatesMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveVideoMasteringDisplayInfoCoordinatesMethod t VideoMasteringDisplayInfoCoordinates, O.OverloadedMethod info VideoMasteringDisplayInfoCoordinates p) => OL.IsLabel t (VideoMasteringDisplayInfoCoordinates -> 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 ~ ResolveVideoMasteringDisplayInfoCoordinatesMethod t VideoMasteringDisplayInfoCoordinates, O.OverloadedMethod info VideoMasteringDisplayInfoCoordinates p, R.HasField t VideoMasteringDisplayInfoCoordinates p) => R.HasField t VideoMasteringDisplayInfoCoordinates p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveVideoMasteringDisplayInfoCoordinatesMethod t VideoMasteringDisplayInfoCoordinates, O.OverloadedMethodInfo info VideoMasteringDisplayInfoCoordinates) => OL.IsLabel t (O.MethodProxy info VideoMasteringDisplayInfoCoordinates) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif