#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.Gst.Objects.Device
(
Device(..) ,
IsDevice ,
toDevice ,
noDevice ,
#if ENABLE_OVERLOADING
DeviceCreateElementMethodInfo ,
#endif
deviceCreateElement ,
#if ENABLE_OVERLOADING
DeviceGetCapsMethodInfo ,
#endif
deviceGetCaps ,
#if ENABLE_OVERLOADING
DeviceGetDeviceClassMethodInfo ,
#endif
deviceGetDeviceClass ,
#if ENABLE_OVERLOADING
DeviceGetDisplayNameMethodInfo ,
#endif
deviceGetDisplayName ,
#if ENABLE_OVERLOADING
DeviceGetPropertiesMethodInfo ,
#endif
deviceGetProperties ,
#if ENABLE_OVERLOADING
DeviceHasClassesMethodInfo ,
#endif
deviceHasClasses ,
#if ENABLE_OVERLOADING
DeviceHasClassesvMethodInfo ,
#endif
deviceHasClassesv ,
#if ENABLE_OVERLOADING
DeviceReconfigureElementMethodInfo ,
#endif
deviceReconfigureElement ,
#if ENABLE_OVERLOADING
DeviceCapsPropertyInfo ,
#endif
constructDeviceCaps ,
#if ENABLE_OVERLOADING
deviceCaps ,
#endif
getDeviceCaps ,
#if ENABLE_OVERLOADING
DeviceDeviceClassPropertyInfo ,
#endif
constructDeviceDeviceClass ,
#if ENABLE_OVERLOADING
deviceDeviceClass ,
#endif
getDeviceDeviceClass ,
#if ENABLE_OVERLOADING
DeviceDisplayNamePropertyInfo ,
#endif
constructDeviceDisplayName ,
#if ENABLE_OVERLOADING
deviceDisplayName ,
#endif
getDeviceDisplayName ,
#if ENABLE_OVERLOADING
DevicePropertiesPropertyInfo ,
#endif
constructDeviceProperties ,
#if ENABLE_OVERLOADING
deviceProperties ,
#endif
getDeviceProperties ,
C_DeviceRemovedCallback ,
DeviceRemovedCallback ,
#if ENABLE_OVERLOADING
DeviceRemovedSignalInfo ,
#endif
afterDeviceRemoved ,
genClosure_DeviceRemoved ,
mk_DeviceRemovedCallback ,
noDeviceRemovedCallback ,
onDeviceRemoved ,
wrap_DeviceRemovedCallback ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gst.Objects.Element as Gst.Element
import {-# SOURCE #-} qualified GI.Gst.Objects.Object as Gst.Object
import {-# SOURCE #-} qualified GI.Gst.Structs.Caps as Gst.Caps
import {-# SOURCE #-} qualified GI.Gst.Structs.Structure as Gst.Structure
newtype Device = Device (ManagedPtr Device)
foreign import ccall "gst_device_get_type"
c_gst_device_get_type :: IO GType
instance GObject Device where
gobjectType = c_gst_device_get_type
class (GObject o, O.IsDescendantOf Device o) => IsDevice o
instance (GObject o, O.IsDescendantOf Device o) => IsDevice o
instance O.HasParentTypes Device
type instance O.ParentTypes Device = '[Gst.Object.Object, GObject.Object.Object]
toDevice :: (MonadIO m, IsDevice o) => o -> m Device
toDevice = liftIO . unsafeCastTo Device
noDevice :: Maybe Device
noDevice = Nothing
#if ENABLE_OVERLOADING
type family ResolveDeviceMethod (t :: Symbol) (o :: *) :: * where
ResolveDeviceMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveDeviceMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDeviceMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDeviceMethod "createElement" o = DeviceCreateElementMethodInfo
ResolveDeviceMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveDeviceMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDeviceMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDeviceMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveDeviceMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveDeviceMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveDeviceMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveDeviceMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveDeviceMethod "hasClasses" o = DeviceHasClassesMethodInfo
ResolveDeviceMethod "hasClassesv" o = DeviceHasClassesvMethodInfo
ResolveDeviceMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDeviceMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDeviceMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDeviceMethod "reconfigureElement" o = DeviceReconfigureElementMethodInfo
ResolveDeviceMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveDeviceMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDeviceMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveDeviceMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDeviceMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDeviceMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDeviceMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveDeviceMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveDeviceMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDeviceMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveDeviceMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveDeviceMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDeviceMethod "getCaps" o = DeviceGetCapsMethodInfo
ResolveDeviceMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveDeviceMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveDeviceMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveDeviceMethod "getDeviceClass" o = DeviceGetDeviceClassMethodInfo
ResolveDeviceMethod "getDisplayName" o = DeviceGetDisplayNameMethodInfo
ResolveDeviceMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveDeviceMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveDeviceMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveDeviceMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveDeviceMethod "getProperties" o = DeviceGetPropertiesMethodInfo
ResolveDeviceMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDeviceMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDeviceMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveDeviceMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveDeviceMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveDeviceMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveDeviceMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveDeviceMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveDeviceMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveDeviceMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDeviceMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDeviceMethod t Device, O.MethodInfo info Device p) => OL.IsLabel t (Device -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
type DeviceRemovedCallback =
IO ()
noDeviceRemovedCallback :: Maybe DeviceRemovedCallback
noDeviceRemovedCallback = Nothing
type C_DeviceRemovedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DeviceRemovedCallback :: C_DeviceRemovedCallback -> IO (FunPtr C_DeviceRemovedCallback)
genClosure_DeviceRemoved :: MonadIO m => DeviceRemovedCallback -> m (GClosure C_DeviceRemovedCallback)
genClosure_DeviceRemoved cb = liftIO $ do
let cb' = wrap_DeviceRemovedCallback cb
mk_DeviceRemovedCallback cb' >>= B.GClosure.newGClosure
wrap_DeviceRemovedCallback ::
DeviceRemovedCallback ->
C_DeviceRemovedCallback
wrap_DeviceRemovedCallback _cb _ _ = do
_cb
onDeviceRemoved :: (IsDevice a, MonadIO m) => a -> DeviceRemovedCallback -> m SignalHandlerId
onDeviceRemoved obj cb = liftIO $ do
let cb' = wrap_DeviceRemovedCallback cb
cb'' <- mk_DeviceRemovedCallback cb'
connectSignalFunPtr obj "removed" cb'' SignalConnectBefore
afterDeviceRemoved :: (IsDevice a, MonadIO m) => a -> DeviceRemovedCallback -> m SignalHandlerId
afterDeviceRemoved obj cb = liftIO $ do
let cb' = wrap_DeviceRemovedCallback cb
cb'' <- mk_DeviceRemovedCallback cb'
connectSignalFunPtr obj "removed" cb'' SignalConnectAfter
getDeviceCaps :: (MonadIO m, IsDevice o) => o -> m (Maybe Gst.Caps.Caps)
getDeviceCaps obj = liftIO $ B.Properties.getObjectPropertyBoxed obj "caps" Gst.Caps.Caps
constructDeviceCaps :: (IsDevice o) => Gst.Caps.Caps -> IO (GValueConstruct o)
constructDeviceCaps val = B.Properties.constructObjectPropertyBoxed "caps" (Just val)
#if ENABLE_OVERLOADING
data DeviceCapsPropertyInfo
instance AttrInfo DeviceCapsPropertyInfo where
type AttrAllowedOps DeviceCapsPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DeviceCapsPropertyInfo = (~) Gst.Caps.Caps
type AttrBaseTypeConstraint DeviceCapsPropertyInfo = IsDevice
type AttrGetType DeviceCapsPropertyInfo = (Maybe Gst.Caps.Caps)
type AttrLabel DeviceCapsPropertyInfo = "caps"
type AttrOrigin DeviceCapsPropertyInfo = Device
attrGet _ = getDeviceCaps
attrSet _ = undefined
attrConstruct _ = constructDeviceCaps
attrClear _ = undefined
#endif
getDeviceDeviceClass :: (MonadIO m, IsDevice o) => o -> m (Maybe T.Text)
getDeviceDeviceClass obj = liftIO $ B.Properties.getObjectPropertyString obj "device-class"
constructDeviceDeviceClass :: (IsDevice o) => T.Text -> IO (GValueConstruct o)
constructDeviceDeviceClass val = B.Properties.constructObjectPropertyString "device-class" (Just val)
#if ENABLE_OVERLOADING
data DeviceDeviceClassPropertyInfo
instance AttrInfo DeviceDeviceClassPropertyInfo where
type AttrAllowedOps DeviceDeviceClassPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DeviceDeviceClassPropertyInfo = (~) T.Text
type AttrBaseTypeConstraint DeviceDeviceClassPropertyInfo = IsDevice
type AttrGetType DeviceDeviceClassPropertyInfo = (Maybe T.Text)
type AttrLabel DeviceDeviceClassPropertyInfo = "device-class"
type AttrOrigin DeviceDeviceClassPropertyInfo = Device
attrGet _ = getDeviceDeviceClass
attrSet _ = undefined
attrConstruct _ = constructDeviceDeviceClass
attrClear _ = undefined
#endif
getDeviceDisplayName :: (MonadIO m, IsDevice o) => o -> m (Maybe T.Text)
getDeviceDisplayName obj = liftIO $ B.Properties.getObjectPropertyString obj "display-name"
constructDeviceDisplayName :: (IsDevice o) => T.Text -> IO (GValueConstruct o)
constructDeviceDisplayName val = B.Properties.constructObjectPropertyString "display-name" (Just val)
#if ENABLE_OVERLOADING
data DeviceDisplayNamePropertyInfo
instance AttrInfo DeviceDisplayNamePropertyInfo where
type AttrAllowedOps DeviceDisplayNamePropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DeviceDisplayNamePropertyInfo = (~) T.Text
type AttrBaseTypeConstraint DeviceDisplayNamePropertyInfo = IsDevice
type AttrGetType DeviceDisplayNamePropertyInfo = (Maybe T.Text)
type AttrLabel DeviceDisplayNamePropertyInfo = "display-name"
type AttrOrigin DeviceDisplayNamePropertyInfo = Device
attrGet _ = getDeviceDisplayName
attrSet _ = undefined
attrConstruct _ = constructDeviceDisplayName
attrClear _ = undefined
#endif
getDeviceProperties :: (MonadIO m, IsDevice o) => o -> m (Maybe Gst.Structure.Structure)
getDeviceProperties obj = liftIO $ B.Properties.getObjectPropertyBoxed obj "properties" Gst.Structure.Structure
constructDeviceProperties :: (IsDevice o) => Gst.Structure.Structure -> IO (GValueConstruct o)
constructDeviceProperties val = B.Properties.constructObjectPropertyBoxed "properties" (Just val)
#if ENABLE_OVERLOADING
data DevicePropertiesPropertyInfo
instance AttrInfo DevicePropertiesPropertyInfo where
type AttrAllowedOps DevicePropertiesPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DevicePropertiesPropertyInfo = (~) Gst.Structure.Structure
type AttrBaseTypeConstraint DevicePropertiesPropertyInfo = IsDevice
type AttrGetType DevicePropertiesPropertyInfo = (Maybe Gst.Structure.Structure)
type AttrLabel DevicePropertiesPropertyInfo = "properties"
type AttrOrigin DevicePropertiesPropertyInfo = Device
attrGet _ = getDeviceProperties
attrSet _ = undefined
attrConstruct _ = constructDeviceProperties
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList Device
type instance O.AttributeList Device = DeviceAttributeList
type DeviceAttributeList = ('[ '("caps", DeviceCapsPropertyInfo), '("deviceClass", DeviceDeviceClassPropertyInfo), '("displayName", DeviceDisplayNamePropertyInfo), '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo), '("properties", DevicePropertiesPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
deviceCaps :: AttrLabelProxy "caps"
deviceCaps = AttrLabelProxy
deviceDeviceClass :: AttrLabelProxy "deviceClass"
deviceDeviceClass = AttrLabelProxy
deviceDisplayName :: AttrLabelProxy "displayName"
deviceDisplayName = AttrLabelProxy
deviceProperties :: AttrLabelProxy "properties"
deviceProperties = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
data DeviceRemovedSignalInfo
instance SignalInfo DeviceRemovedSignalInfo where
type HaskellCallbackType DeviceRemovedSignalInfo = DeviceRemovedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DeviceRemovedCallback cb
cb'' <- mk_DeviceRemovedCallback cb'
connectSignalFunPtr obj "removed" cb'' connectMode
type instance O.SignalList Device = DeviceSignalList
type DeviceSignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("removed", DeviceRemovedSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gst_device_create_element" gst_device_create_element ::
Ptr Device ->
CString ->
IO (Ptr Gst.Element.Element)
deviceCreateElement ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> Maybe (T.Text)
-> m (Maybe Gst.Element.Element)
deviceCreateElement device name = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
maybeName <- case name of
Nothing -> return nullPtr
Just jName -> do
jName' <- textToCString jName
return jName'
result <- gst_device_create_element device' maybeName
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapObject Gst.Element.Element) result'
return result''
touchManagedPtr device
freeMem maybeName
return maybeResult
#if ENABLE_OVERLOADING
data DeviceCreateElementMethodInfo
instance (signature ~ (Maybe (T.Text) -> m (Maybe Gst.Element.Element)), MonadIO m, IsDevice a) => O.MethodInfo DeviceCreateElementMethodInfo a signature where
overloadedMethod _ = deviceCreateElement
#endif
foreign import ccall "gst_device_get_caps" gst_device_get_caps ::
Ptr Device ->
IO (Ptr Gst.Caps.Caps)
deviceGetCaps ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> m (Maybe Gst.Caps.Caps)
deviceGetCaps device = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
result <- gst_device_get_caps device'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed Gst.Caps.Caps) result'
return result''
touchManagedPtr device
return maybeResult
#if ENABLE_OVERLOADING
data DeviceGetCapsMethodInfo
instance (signature ~ (m (Maybe Gst.Caps.Caps)), MonadIO m, IsDevice a) => O.MethodInfo DeviceGetCapsMethodInfo a signature where
overloadedMethod _ = deviceGetCaps
#endif
foreign import ccall "gst_device_get_device_class" gst_device_get_device_class ::
Ptr Device ->
IO CString
deviceGetDeviceClass ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> m T.Text
deviceGetDeviceClass device = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
result <- gst_device_get_device_class device'
checkUnexpectedReturnNULL "deviceGetDeviceClass" result
result' <- cstringToText result
freeMem result
touchManagedPtr device
return result'
#if ENABLE_OVERLOADING
data DeviceGetDeviceClassMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDevice a) => O.MethodInfo DeviceGetDeviceClassMethodInfo a signature where
overloadedMethod _ = deviceGetDeviceClass
#endif
foreign import ccall "gst_device_get_display_name" gst_device_get_display_name ::
Ptr Device ->
IO CString
deviceGetDisplayName ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> m T.Text
deviceGetDisplayName device = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
result <- gst_device_get_display_name device'
checkUnexpectedReturnNULL "deviceGetDisplayName" result
result' <- cstringToText result
freeMem result
touchManagedPtr device
return result'
#if ENABLE_OVERLOADING
data DeviceGetDisplayNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDevice a) => O.MethodInfo DeviceGetDisplayNameMethodInfo a signature where
overloadedMethod _ = deviceGetDisplayName
#endif
foreign import ccall "gst_device_get_properties" gst_device_get_properties ::
Ptr Device ->
IO (Ptr Gst.Structure.Structure)
deviceGetProperties ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> m (Maybe Gst.Structure.Structure)
deviceGetProperties device = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
result <- gst_device_get_properties device'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapBoxed Gst.Structure.Structure) result'
return result''
touchManagedPtr device
return maybeResult
#if ENABLE_OVERLOADING
data DeviceGetPropertiesMethodInfo
instance (signature ~ (m (Maybe Gst.Structure.Structure)), MonadIO m, IsDevice a) => O.MethodInfo DeviceGetPropertiesMethodInfo a signature where
overloadedMethod _ = deviceGetProperties
#endif
foreign import ccall "gst_device_has_classes" gst_device_has_classes ::
Ptr Device ->
CString ->
IO CInt
deviceHasClasses ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> T.Text
-> m Bool
deviceHasClasses device classes = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
classes' <- textToCString classes
result <- gst_device_has_classes device' classes'
let result' = (/= 0) result
touchManagedPtr device
freeMem classes'
return result'
#if ENABLE_OVERLOADING
data DeviceHasClassesMethodInfo
instance (signature ~ (T.Text -> m Bool), MonadIO m, IsDevice a) => O.MethodInfo DeviceHasClassesMethodInfo a signature where
overloadedMethod _ = deviceHasClasses
#endif
foreign import ccall "gst_device_has_classesv" gst_device_has_classesv ::
Ptr Device ->
Ptr CString ->
IO CInt
deviceHasClassesv ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a) =>
a
-> [T.Text]
-> m Bool
deviceHasClassesv device classes = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
classes' <- packZeroTerminatedUTF8CArray classes
result <- gst_device_has_classesv device' classes'
let result' = (/= 0) result
touchManagedPtr device
mapZeroTerminatedCArray freeMem classes'
freeMem classes'
return result'
#if ENABLE_OVERLOADING
data DeviceHasClassesvMethodInfo
instance (signature ~ ([T.Text] -> m Bool), MonadIO m, IsDevice a) => O.MethodInfo DeviceHasClassesvMethodInfo a signature where
overloadedMethod _ = deviceHasClassesv
#endif
foreign import ccall "gst_device_reconfigure_element" gst_device_reconfigure_element ::
Ptr Device ->
Ptr Gst.Element.Element ->
IO CInt
deviceReconfigureElement ::
(B.CallStack.HasCallStack, MonadIO m, IsDevice a, Gst.Element.IsElement b) =>
a
-> b
-> m Bool
deviceReconfigureElement device element = liftIO $ do
device' <- unsafeManagedPtrCastPtr device
element' <- unsafeManagedPtrCastPtr element
result <- gst_device_reconfigure_element device' element'
let result' = (/= 0) result
touchManagedPtr device
touchManagedPtr element
return result'
#if ENABLE_OVERLOADING
data DeviceReconfigureElementMethodInfo
instance (signature ~ (b -> m Bool), MonadIO m, IsDevice a, Gst.Element.IsElement b) => O.MethodInfo DeviceReconfigureElementMethodInfo a signature where
overloadedMethod _ = deviceReconfigureElement
#endif