| Gtk2Hs | Contents | Index

Media.Streaming.GStreamer.Core.ElementFactory

Contents

Detail
Types
ElementFactory Operations

Synopsis

data ElementFactory
class PluginFeatureClass o => ElementFactoryClass o
castToElementFactory :: GObjectClass obj => obj -> ElementFactory
toElementFactory :: ElementFactoryClass o => o -> ElementFactory
elementFactoryFind :: String -> IO (Maybe ElementFactory)
elementFactoryGetElementType :: ElementFactoryClass elementFactory => elementFactory -> IO (Maybe GType)
elementFactoryGetLongname :: ElementFactoryClass elementFactory => elementFactory -> IO String
elementFactoryGetKlass :: ElementFactoryClass elementFactory => elementFactory -> IO String
elementFactoryGetDescription :: ElementFactoryClass elementFactory => elementFactory -> IO String
elementFactoryGetAuthor :: ElementFactoryClass elementFactory => elementFactory -> IO String
elementFactoryGetNumPadTemplates :: ElementFactoryClass elementFactory => elementFactory -> IO Word
elementFactoryGetURIType :: ElementFactoryClass elementFactory => elementFactory -> IO Int
elementFactoryGetURIProtocols :: ElementFactoryClass elementFactory => elementFactory -> IO [String]
elementFactoryHasInterface :: ElementFactoryClass elementFactory => elementFactory -> String -> IO Bool
elementFactoryCreate :: ElementFactoryClass elementFactory => elementFactory -> String -> IO (Maybe Element)
elementFactoryMake :: String -> Maybe String -> IO (Maybe Element)
elementFactoryCanSinkCaps :: ElementFactoryClass elementFactory => elementFactory -> Caps -> IO Bool
elementFactoryCanSrcCaps :: ElementFactoryClass elementFactory => elementFactory -> Caps -> IO Bool
elementFactoryGetPadTemplates :: ElementFactoryClass elementFactory => elementFactory -> IO [PadTemplate]

Detail
`ElementFactory` is used to create instances of `Element`s. Use `elementFactoryFind` and `elementFactoryCreate` to create element instances, or use `elementFactoryMake` as a convenient shortcut.
Types
data ElementFactory

Instances

GObjectClass ElementFactory
ElementFactoryClass ElementFactory
PluginFeatureClass ElementFactory
ObjectClass ElementFactory

class PluginFeatureClass o => ElementFactoryClass o

Instances

ElementFactoryClass ElementFactory

castToElementFactory :: GObjectClass obj => obj -> ElementFactory
toElementFactory :: ElementFactoryClass o => o -> ElementFactory
ElementFactory Operations
elementFactoryFind

:: String | `name` - the name of the desired factory
-> IO (Maybe ElementFactory) | the factory if found, otherwise `Nothing`
Search for an element factory with the given name.

elementFactoryGetElementType

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO (Maybe GType) | the type of elements managed by the factory, or `Nothing` if the factory is not loaded
Get the `GType` for elements managed by the given factory. The type can only be retrieved if the element factory is loaded, which can be assured with Media.Streaming.GStreamer.Core.PluginFeature.pluginFeatureLoad.

elementFactoryGetLongname

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO String | the factory's long name
Get the long name for the given factory.

elementFactoryGetKlass

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO String | the factory's class
Get the class for the given factory.

elementFactoryGetDescription

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO String | the factory's description
Get the description for the given factory.

elementFactoryGetAuthor

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO String | the factory's author
Get the author of the given factory.

elementFactoryGetNumPadTemplates

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO Word | the number of `PadTemplate`s
Get the number of `PadTemplate`s provided by the given factory.

elementFactoryGetURIType

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO Int | the type of URIs supported by the factory
Get the type of URIs supported by the given factory.

elementFactoryGetURIProtocols

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO [String] | the supported protocols
Get the list of protocols supported by the given factory.

elementFactoryHasInterface

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> String | `name` - the interface name
-> IO Bool | true if the interface is implemented
Check if the given factory implements the interface with the given name. Since 0.10.14.

elementFactoryCreate

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> String | `name` - the new element's name
-> IO (Maybe Element) | the new element if it could be created, otherwise `Nothing`
Create a new element of the type supplied by the given factory. It will be given the name supplied.

elementFactoryMake

:: String | `factoryName` - the name of an element factory
-> Maybe String | `name` - the new element's name, or `Nothing` generate a unique name
-> IO (Maybe Element) | the new element if it could be created, otherwise `Nothing`
Create a new element of the type supplied by the named factory.

elementFactoryCanSinkCaps

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> Caps | `caps` - the capabilities to check for
-> IO Bool | `True` if `factory` can sink the given capabilities
Check if the given factory can sink the given capabilities.

elementFactoryCanSrcCaps

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> Caps | `caps` - the capabilities to check for
-> IO Bool | `True` if `factory` can source the given capabilities
Check if the given factory can source the given capabilities.

elementFactoryGetPadTemplates

:: ElementFactoryClass elementFactory |
=> elementFactory | `factory` - an element factory
-> IO [PadTemplate] | the provided pad templates
Get the pad templates provided by the given factory.

Produced by Haddock version 2.4.2