module GI.Gst.Objects.DeviceProviderFactory
(
DeviceProviderFactory(..) ,
IsDeviceProviderFactory ,
toDeviceProviderFactory ,
noDeviceProviderFactory ,
deviceProviderFactoryFind ,
DeviceProviderFactoryGetMethodInfo ,
deviceProviderFactoryGet ,
deviceProviderFactoryGetByName ,
DeviceProviderFactoryGetDeviceProviderTypeMethodInfo,
deviceProviderFactoryGetDeviceProviderType,
DeviceProviderFactoryGetMetadataMethodInfo,
deviceProviderFactoryGetMetadata ,
DeviceProviderFactoryGetMetadataKeysMethodInfo,
deviceProviderFactoryGetMetadataKeys ,
DeviceProviderFactoryHasClassesMethodInfo,
deviceProviderFactoryHasClasses ,
DeviceProviderFactoryHasClassesvMethodInfo,
deviceProviderFactoryHasClassesv ,
deviceProviderFactoryListGetDeviceProviders,
) 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.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gst.Enums as Gst.Enums
import qualified GI.Gst.Objects.DeviceProvider as Gst.DeviceProvider
import qualified GI.Gst.Objects.Object as Gst.Object
import qualified GI.Gst.Objects.PluginFeature as Gst.PluginFeature
newtype DeviceProviderFactory = DeviceProviderFactory (ManagedPtr DeviceProviderFactory)
foreign import ccall "gst_device_provider_factory_get_type"
c_gst_device_provider_factory_get_type :: IO GType
instance GObject DeviceProviderFactory where
gobjectType _ = c_gst_device_provider_factory_get_type
class GObject o => IsDeviceProviderFactory o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError DeviceProviderFactory a) =>
IsDeviceProviderFactory a
#endif
instance IsDeviceProviderFactory DeviceProviderFactory
instance Gst.PluginFeature.IsPluginFeature DeviceProviderFactory
instance Gst.Object.IsObject DeviceProviderFactory
instance GObject.Object.IsObject DeviceProviderFactory
toDeviceProviderFactory :: IsDeviceProviderFactory o => o -> IO DeviceProviderFactory
toDeviceProviderFactory = unsafeCastTo DeviceProviderFactory
noDeviceProviderFactory :: Maybe DeviceProviderFactory
noDeviceProviderFactory = Nothing
type family ResolveDeviceProviderFactoryMethod (t :: Symbol) (o :: *) :: * where
ResolveDeviceProviderFactoryMethod "addControlBinding" o = Gst.Object.ObjectAddControlBindingMethodInfo
ResolveDeviceProviderFactoryMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDeviceProviderFactoryMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDeviceProviderFactoryMethod "checkVersion" o = Gst.PluginFeature.PluginFeatureCheckVersionMethodInfo
ResolveDeviceProviderFactoryMethod "defaultError" o = Gst.Object.ObjectDefaultErrorMethodInfo
ResolveDeviceProviderFactoryMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDeviceProviderFactoryMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDeviceProviderFactoryMethod "get" o = DeviceProviderFactoryGetMethodInfo
ResolveDeviceProviderFactoryMethod "hasActiveControlBindings" o = Gst.Object.ObjectHasActiveControlBindingsMethodInfo
ResolveDeviceProviderFactoryMethod "hasAncestor" o = Gst.Object.ObjectHasAncestorMethodInfo
ResolveDeviceProviderFactoryMethod "hasAsAncestor" o = Gst.Object.ObjectHasAsAncestorMethodInfo
ResolveDeviceProviderFactoryMethod "hasAsParent" o = Gst.Object.ObjectHasAsParentMethodInfo
ResolveDeviceProviderFactoryMethod "hasClasses" o = DeviceProviderFactoryHasClassesMethodInfo
ResolveDeviceProviderFactoryMethod "hasClassesv" o = DeviceProviderFactoryHasClassesvMethodInfo
ResolveDeviceProviderFactoryMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDeviceProviderFactoryMethod "load" o = Gst.PluginFeature.PluginFeatureLoadMethodInfo
ResolveDeviceProviderFactoryMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDeviceProviderFactoryMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDeviceProviderFactoryMethod "ref" o = Gst.Object.ObjectRefMethodInfo
ResolveDeviceProviderFactoryMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDeviceProviderFactoryMethod "removeControlBinding" o = Gst.Object.ObjectRemoveControlBindingMethodInfo
ResolveDeviceProviderFactoryMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolveDeviceProviderFactoryMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
ResolveDeviceProviderFactoryMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDeviceProviderFactoryMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDeviceProviderFactoryMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDeviceProviderFactoryMethod "suggestNextSync" o = Gst.Object.ObjectSuggestNextSyncMethodInfo
ResolveDeviceProviderFactoryMethod "syncValues" o = Gst.Object.ObjectSyncValuesMethodInfo
ResolveDeviceProviderFactoryMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDeviceProviderFactoryMethod "unparent" o = Gst.Object.ObjectUnparentMethodInfo
ResolveDeviceProviderFactoryMethod "unref" o = Gst.Object.ObjectUnrefMethodInfo
ResolveDeviceProviderFactoryMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDeviceProviderFactoryMethod "getControlBinding" o = Gst.Object.ObjectGetControlBindingMethodInfo
ResolveDeviceProviderFactoryMethod "getControlRate" o = Gst.Object.ObjectGetControlRateMethodInfo
ResolveDeviceProviderFactoryMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveDeviceProviderFactoryMethod "getDeviceProviderType" o = DeviceProviderFactoryGetDeviceProviderTypeMethodInfo
ResolveDeviceProviderFactoryMethod "getGValueArray" o = Gst.Object.ObjectGetGValueArrayMethodInfo
ResolveDeviceProviderFactoryMethod "getMetadata" o = DeviceProviderFactoryGetMetadataMethodInfo
ResolveDeviceProviderFactoryMethod "getMetadataKeys" o = DeviceProviderFactoryGetMetadataKeysMethodInfo
ResolveDeviceProviderFactoryMethod "getName" o = Gst.Object.ObjectGetNameMethodInfo
ResolveDeviceProviderFactoryMethod "getParent" o = Gst.Object.ObjectGetParentMethodInfo
ResolveDeviceProviderFactoryMethod "getPathString" o = Gst.Object.ObjectGetPathStringMethodInfo
ResolveDeviceProviderFactoryMethod "getPlugin" o = Gst.PluginFeature.PluginFeatureGetPluginMethodInfo
ResolveDeviceProviderFactoryMethod "getPluginName" o = Gst.PluginFeature.PluginFeatureGetPluginNameMethodInfo
ResolveDeviceProviderFactoryMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDeviceProviderFactoryMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDeviceProviderFactoryMethod "getRank" o = Gst.PluginFeature.PluginFeatureGetRankMethodInfo
ResolveDeviceProviderFactoryMethod "getValue" o = Gst.Object.ObjectGetValueMethodInfo
ResolveDeviceProviderFactoryMethod "getValueArray" o = Gst.Object.ObjectGetValueArrayMethodInfo
ResolveDeviceProviderFactoryMethod "setControlBindingDisabled" o = Gst.Object.ObjectSetControlBindingDisabledMethodInfo
ResolveDeviceProviderFactoryMethod "setControlBindingsDisabled" o = Gst.Object.ObjectSetControlBindingsDisabledMethodInfo
ResolveDeviceProviderFactoryMethod "setControlRate" o = Gst.Object.ObjectSetControlRateMethodInfo
ResolveDeviceProviderFactoryMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveDeviceProviderFactoryMethod "setName" o = Gst.Object.ObjectSetNameMethodInfo
ResolveDeviceProviderFactoryMethod "setParent" o = Gst.Object.ObjectSetParentMethodInfo
ResolveDeviceProviderFactoryMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDeviceProviderFactoryMethod "setRank" o = Gst.PluginFeature.PluginFeatureSetRankMethodInfo
ResolveDeviceProviderFactoryMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDeviceProviderFactoryMethod t DeviceProviderFactory, O.MethodInfo info DeviceProviderFactory p) => O.IsLabelProxy t (DeviceProviderFactory -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDeviceProviderFactoryMethod t DeviceProviderFactory, O.MethodInfo info DeviceProviderFactory p) => O.IsLabel t (DeviceProviderFactory -> p) where
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
instance O.HasAttributeList DeviceProviderFactory
type instance O.AttributeList DeviceProviderFactory = DeviceProviderFactoryAttributeList
type DeviceProviderFactoryAttributeList = ('[ '("name", Gst.Object.ObjectNamePropertyInfo), '("parent", Gst.Object.ObjectParentPropertyInfo)] :: [(Symbol, *)])
type instance O.SignalList DeviceProviderFactory = DeviceProviderFactorySignalList
type DeviceProviderFactorySignalList = ('[ '("deepNotify", Gst.Object.ObjectDeepNotifySignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "gst_device_provider_factory_get" gst_device_provider_factory_get ::
Ptr DeviceProviderFactory ->
IO (Ptr Gst.DeviceProvider.DeviceProvider)
deviceProviderFactoryGet ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> m (Maybe Gst.DeviceProvider.DeviceProvider)
deviceProviderFactoryGet factory = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
result <- gst_device_provider_factory_get factory'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapObject Gst.DeviceProvider.DeviceProvider) result'
return result''
touchManagedPtr factory
return maybeResult
data DeviceProviderFactoryGetMethodInfo
instance (signature ~ (m (Maybe Gst.DeviceProvider.DeviceProvider)), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryGetMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryGet
foreign import ccall "gst_device_provider_factory_get_device_provider_type" gst_device_provider_factory_get_device_provider_type ::
Ptr DeviceProviderFactory ->
IO CGType
deviceProviderFactoryGetDeviceProviderType ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> m GType
deviceProviderFactoryGetDeviceProviderType factory = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
result <- gst_device_provider_factory_get_device_provider_type factory'
let result' = GType result
touchManagedPtr factory
return result'
data DeviceProviderFactoryGetDeviceProviderTypeMethodInfo
instance (signature ~ (m GType), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryGetDeviceProviderTypeMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryGetDeviceProviderType
foreign import ccall "gst_device_provider_factory_get_metadata" gst_device_provider_factory_get_metadata ::
Ptr DeviceProviderFactory ->
CString ->
IO CString
deviceProviderFactoryGetMetadata ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> T.Text
-> m (Maybe T.Text)
deviceProviderFactoryGetMetadata factory key = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
key' <- textToCString key
result <- gst_device_provider_factory_get_metadata factory' key'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- cstringToText result'
return result''
touchManagedPtr factory
freeMem key'
return maybeResult
data DeviceProviderFactoryGetMetadataMethodInfo
instance (signature ~ (T.Text -> m (Maybe T.Text)), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryGetMetadataMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryGetMetadata
foreign import ccall "gst_device_provider_factory_get_metadata_keys" gst_device_provider_factory_get_metadata_keys ::
Ptr DeviceProviderFactory ->
IO (Ptr CString)
deviceProviderFactoryGetMetadataKeys ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> m (Maybe [T.Text])
deviceProviderFactoryGetMetadataKeys factory = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
result <- gst_device_provider_factory_get_metadata_keys factory'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- unpackZeroTerminatedUTF8CArray result'
mapZeroTerminatedCArray freeMem result'
freeMem result'
return result''
touchManagedPtr factory
return maybeResult
data DeviceProviderFactoryGetMetadataKeysMethodInfo
instance (signature ~ (m (Maybe [T.Text])), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryGetMetadataKeysMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryGetMetadataKeys
foreign import ccall "gst_device_provider_factory_has_classes" gst_device_provider_factory_has_classes ::
Ptr DeviceProviderFactory ->
CString ->
IO CInt
deviceProviderFactoryHasClasses ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> Maybe (T.Text)
-> m Bool
deviceProviderFactoryHasClasses factory classes = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
maybeClasses <- case classes of
Nothing -> return nullPtr
Just jClasses -> do
jClasses' <- textToCString jClasses
return jClasses'
result <- gst_device_provider_factory_has_classes factory' maybeClasses
let result' = (/= 0) result
touchManagedPtr factory
freeMem maybeClasses
return result'
data DeviceProviderFactoryHasClassesMethodInfo
instance (signature ~ (Maybe (T.Text) -> m Bool), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryHasClassesMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryHasClasses
foreign import ccall "gst_device_provider_factory_has_classesv" gst_device_provider_factory_has_classesv ::
Ptr DeviceProviderFactory ->
Ptr CString ->
IO CInt
deviceProviderFactoryHasClassesv ::
(B.CallStack.HasCallStack, MonadIO m, IsDeviceProviderFactory a) =>
a
-> Maybe ([T.Text])
-> m Bool
deviceProviderFactoryHasClassesv factory classes = liftIO $ do
factory' <- unsafeManagedPtrCastPtr factory
maybeClasses <- case classes of
Nothing -> return nullPtr
Just jClasses -> do
jClasses' <- packZeroTerminatedUTF8CArray jClasses
return jClasses'
result <- gst_device_provider_factory_has_classesv factory' maybeClasses
let result' = (/= 0) result
touchManagedPtr factory
mapZeroTerminatedCArray freeMem maybeClasses
freeMem maybeClasses
return result'
data DeviceProviderFactoryHasClassesvMethodInfo
instance (signature ~ (Maybe ([T.Text]) -> m Bool), MonadIO m, IsDeviceProviderFactory a) => O.MethodInfo DeviceProviderFactoryHasClassesvMethodInfo a signature where
overloadedMethod _ = deviceProviderFactoryHasClassesv
foreign import ccall "gst_device_provider_factory_find" gst_device_provider_factory_find ::
CString ->
IO (Ptr DeviceProviderFactory)
deviceProviderFactoryFind ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m (Maybe DeviceProviderFactory)
deviceProviderFactoryFind name = liftIO $ do
name' <- textToCString name
result <- gst_device_provider_factory_find name'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapObject DeviceProviderFactory) result'
return result''
freeMem name'
return maybeResult
foreign import ccall "gst_device_provider_factory_get_by_name" gst_device_provider_factory_get_by_name ::
CString ->
IO (Ptr Gst.DeviceProvider.DeviceProvider)
deviceProviderFactoryGetByName ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m (Maybe Gst.DeviceProvider.DeviceProvider)
deviceProviderFactoryGetByName factoryname = liftIO $ do
factoryname' <- textToCString factoryname
result <- gst_device_provider_factory_get_by_name factoryname'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapObject Gst.DeviceProvider.DeviceProvider) result'
return result''
freeMem factoryname'
return maybeResult
foreign import ccall "gst_device_provider_factory_list_get_device_providers" gst_device_provider_factory_list_get_device_providers ::
CUInt ->
IO (Ptr (GList (Ptr DeviceProviderFactory)))
deviceProviderFactoryListGetDeviceProviders ::
(B.CallStack.HasCallStack, MonadIO m) =>
Gst.Enums.Rank
-> m [DeviceProviderFactory]
deviceProviderFactoryListGetDeviceProviders minrank = liftIO $ do
let minrank' = (fromIntegral . fromEnum) minrank
result <- gst_device_provider_factory_list_get_device_providers minrank'
result' <- unpackGList result
result'' <- mapM (wrapObject DeviceProviderFactory) result'
g_list_free result
return result''