gi-gstvideo-0.1.6.13: GI/GstVideo/Interfaces/VideoOrientation.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.GstVideo.Interfaces.VideoOrientation
(
-- * Exported types
VideoOrientation(..) ,
noVideoOrientation ,
VideoOrientationK ,
-- * Methods
-- ** videoOrientationGetHcenter
VideoOrientationGetHcenterMethodInfo ,
videoOrientationGetHcenter ,
-- ** videoOrientationGetHflip
VideoOrientationGetHflipMethodInfo ,
videoOrientationGetHflip ,
-- ** videoOrientationGetVcenter
VideoOrientationGetVcenterMethodInfo ,
videoOrientationGetVcenter ,
-- ** videoOrientationGetVflip
VideoOrientationGetVflipMethodInfo ,
videoOrientationGetVflip ,
-- ** videoOrientationSetHcenter
VideoOrientationSetHcenterMethodInfo ,
videoOrientationSetHcenter ,
-- ** videoOrientationSetHflip
VideoOrientationSetHflipMethodInfo ,
videoOrientationSetHflip ,
-- ** videoOrientationSetVcenter
VideoOrientationSetVcenterMethodInfo ,
videoOrientationSetVcenter ,
-- ** videoOrientationSetVflip
VideoOrientationSetVflipMethodInfo ,
videoOrientationSetVflip ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.GstVideo.Types
import GI.GstVideo.Callbacks
-- interface VideoOrientation
newtype VideoOrientation = VideoOrientation (ForeignPtr VideoOrientation)
noVideoOrientation :: Maybe VideoOrientation
noVideoOrientation = Nothing
type family ResolveVideoOrientationMethod (t :: Symbol) (o :: *) :: * where
ResolveVideoOrientationMethod "getHcenter" o = VideoOrientationGetHcenterMethodInfo
ResolveVideoOrientationMethod "getHflip" o = VideoOrientationGetHflipMethodInfo
ResolveVideoOrientationMethod "getVcenter" o = VideoOrientationGetVcenterMethodInfo
ResolveVideoOrientationMethod "getVflip" o = VideoOrientationGetVflipMethodInfo
ResolveVideoOrientationMethod "setHcenter" o = VideoOrientationSetHcenterMethodInfo
ResolveVideoOrientationMethod "setHflip" o = VideoOrientationSetHflipMethodInfo
ResolveVideoOrientationMethod "setVcenter" o = VideoOrientationSetVcenterMethodInfo
ResolveVideoOrientationMethod "setVflip" o = VideoOrientationSetVflipMethodInfo
ResolveVideoOrientationMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveVideoOrientationMethod t VideoOrientation, MethodInfo info VideoOrientation p) => IsLabelProxy t (VideoOrientation -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveVideoOrientationMethod t VideoOrientation, MethodInfo info VideoOrientation p) => IsLabel t (VideoOrientation -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
type instance AttributeList VideoOrientation = VideoOrientationAttributeList
type VideoOrientationAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList VideoOrientation = VideoOrientationSignalList
type VideoOrientationSignalList = ('[ ] :: [(Symbol, *)])
class ForeignPtrNewtype a => VideoOrientationK a
instance (ForeignPtrNewtype o, IsDescendantOf VideoOrientation o) => VideoOrientationK o
type instance ParentTypes VideoOrientation = VideoOrientationParentTypes
type VideoOrientationParentTypes = '[]
-- method VideoOrientation::get_hcenter
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_get_hcenter" gst_video_orientation_get_hcenter ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
Int32 -> -- center : TBasicType TInt32
IO CInt
videoOrientationGetHcenter ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Int32 -- center
-> m Bool -- result
videoOrientationGetHcenter _obj center = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_video_orientation_get_hcenter _obj' center
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationGetHcenterMethodInfo
instance (signature ~ (Int32 -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationGetHcenterMethodInfo a signature where
overloadedMethod _ = videoOrientationGetHcenter
-- method VideoOrientation::get_hflip
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_get_hflip" gst_video_orientation_get_hflip ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
CInt -> -- flip : TBasicType TBoolean
IO CInt
videoOrientationGetHflip ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Bool -- flip
-> m Bool -- result
videoOrientationGetHflip _obj flip = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let flip' = (fromIntegral . fromEnum) flip
result <- gst_video_orientation_get_hflip _obj' flip'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationGetHflipMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationGetHflipMethodInfo a signature where
overloadedMethod _ = videoOrientationGetHflip
-- method VideoOrientation::get_vcenter
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_get_vcenter" gst_video_orientation_get_vcenter ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
Int32 -> -- center : TBasicType TInt32
IO CInt
videoOrientationGetVcenter ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Int32 -- center
-> m Bool -- result
videoOrientationGetVcenter _obj center = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_video_orientation_get_vcenter _obj' center
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationGetVcenterMethodInfo
instance (signature ~ (Int32 -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationGetVcenterMethodInfo a signature where
overloadedMethod _ = videoOrientationGetVcenter
-- method VideoOrientation::get_vflip
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_get_vflip" gst_video_orientation_get_vflip ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
CInt -> -- flip : TBasicType TBoolean
IO CInt
videoOrientationGetVflip ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Bool -- flip
-> m Bool -- result
videoOrientationGetVflip _obj flip = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let flip' = (fromIntegral . fromEnum) flip
result <- gst_video_orientation_get_vflip _obj' flip'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationGetVflipMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationGetVflipMethodInfo a signature where
overloadedMethod _ = videoOrientationGetVflip
-- method VideoOrientation::set_hcenter
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_set_hcenter" gst_video_orientation_set_hcenter ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
Int32 -> -- center : TBasicType TInt32
IO CInt
videoOrientationSetHcenter ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Int32 -- center
-> m Bool -- result
videoOrientationSetHcenter _obj center = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_video_orientation_set_hcenter _obj' center
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationSetHcenterMethodInfo
instance (signature ~ (Int32 -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationSetHcenterMethodInfo a signature where
overloadedMethod _ = videoOrientationSetHcenter
-- method VideoOrientation::set_hflip
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_set_hflip" gst_video_orientation_set_hflip ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
CInt -> -- flip : TBasicType TBoolean
IO CInt
videoOrientationSetHflip ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Bool -- flip
-> m Bool -- result
videoOrientationSetHflip _obj flip = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let flip' = (fromIntegral . fromEnum) flip
result <- gst_video_orientation_set_hflip _obj' flip'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationSetHflipMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationSetHflipMethodInfo a signature where
overloadedMethod _ = videoOrientationSetHflip
-- method VideoOrientation::set_vcenter
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "center", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_set_vcenter" gst_video_orientation_set_vcenter ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
Int32 -> -- center : TBasicType TInt32
IO CInt
videoOrientationSetVcenter ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Int32 -- center
-> m Bool -- result
videoOrientationSetVcenter _obj center = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gst_video_orientation_set_vcenter _obj' center
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationSetVcenterMethodInfo
instance (signature ~ (Int32 -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationSetVcenterMethodInfo a signature where
overloadedMethod _ = videoOrientationSetVcenter
-- method VideoOrientation::set_vflip
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GstVideo" "VideoOrientation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flip", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gst_video_orientation_set_vflip" gst_video_orientation_set_vflip ::
Ptr VideoOrientation -> -- _obj : TInterface "GstVideo" "VideoOrientation"
CInt -> -- flip : TBasicType TBoolean
IO CInt
videoOrientationSetVflip ::
(MonadIO m, VideoOrientationK a) =>
a -- _obj
-> Bool -- flip
-> m Bool -- result
videoOrientationSetVflip _obj flip = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let flip' = (fromIntegral . fromEnum) flip
result <- gst_video_orientation_set_vflip _obj' flip'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
data VideoOrientationSetVflipMethodInfo
instance (signature ~ (Bool -> m Bool), MonadIO m, VideoOrientationK a) => MethodInfo VideoOrientationSetVflipMethodInfo a signature where
overloadedMethod _ = videoOrientationSetVflip