gi-gst-1.0.25: GStreamer bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gst.Objects.StreamCollection

Description

A collection of Stream that are available.

A StreamCollection will be provided by elements that can make those streams available. Applications can use the collection to show the user what streams are available by using gst_stream_collection_get_stream()

Once posted, a StreamCollection is immutable. Updates are made by sending a new StreamCollection message, which may or may not share some of the Stream objects from the collection it replaces. The receiver can check the sender of a stream collection message to know which collection is obsoleted.

Several elements in a pipeline can provide StreamCollection.

Applications can activate streams from a collection by using the GST_EVENT_SELECT_STREAMS event on a pipeline, bin or element.

Since: 1.10

Synopsis

Exported types

class (GObject o, IsDescendantOf StreamCollection o) => IsStreamCollection o Source #

Type class for types which can be safely cast to StreamCollection, for instance with toStreamCollection.

Instances

Instances details
(GObject o, IsDescendantOf StreamCollection o) => IsStreamCollection o Source # 
Instance details

Defined in GI.Gst.Objects.StreamCollection

toStreamCollection :: (MonadIO m, IsStreamCollection o) => o -> m StreamCollection Source #

Cast to StreamCollection, for types for which this is known to be safe. For general casts, use castTo.

Methods

addStream

streamCollectionAddStream Source #

Arguments

:: (HasCallStack, MonadIO m, IsStreamCollection a, IsStream b) 
=> a

collection: a StreamCollection

-> b

stream: the Stream to add

-> m Bool

Returns: True if the stream was properly added, else False

Add the given stream to the collection.

Since: 1.10

getSize

streamCollectionGetSize Source #

Arguments

:: (HasCallStack, MonadIO m, IsStreamCollection a) 
=> a

collection: a StreamCollection

-> m Word32

Returns: The number of streams that collection contains

Get the number of streams this collection contains

Since: 1.10

getStream

streamCollectionGetStream Source #

Arguments

:: (HasCallStack, MonadIO m, IsStreamCollection a) 
=> a

collection: a StreamCollection

-> Word32

index: Index of the stream to retrieve

-> m (Maybe Stream)

Returns: A Stream

Retrieve the Stream with index index from the collection.

The caller should not modify the returned Stream

Since: 1.10

getUpstreamId

streamCollectionGetUpstreamId Source #

Arguments

:: (HasCallStack, MonadIO m, IsStreamCollection a) 
=> a

collection: a StreamCollection

-> m (Maybe Text)

Returns: The upstream id

Returns the upstream id of the collection.

Since: 1.10

new

streamCollectionNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Maybe Text

upstreamId: The stream id of the parent stream

-> m StreamCollection

Returns: The new StreamCollection.

Create a new StreamCollection.

Since: 1.10

Properties

upstreamId

No description available in the introspection data.

clearStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m () Source #

Set the value of the “upstream-id” property to Nothing. When overloading is enabled, this is equivalent to

clear #upstreamId

constructStreamCollectionUpstreamId :: (IsStreamCollection o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “upstream-id” property. This is rarely needed directly, but it is used by new.

getStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> m (Maybe Text) Source #

Get the value of the “upstream-id” property. When overloading is enabled, this is equivalent to

get streamCollection #upstreamId

setStreamCollectionUpstreamId :: (MonadIO m, IsStreamCollection o) => o -> Text -> m () Source #

Set the value of the “upstream-id” property. When overloading is enabled, this is equivalent to

set streamCollection [ #upstreamId := value ]

Signals

streamNotify

type StreamCollectionStreamNotifyCallback = Stream -> GParamSpec -> IO () Source #

No description available in the introspection data.

afterStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> Maybe Text -> ((?self :: a) => StreamCollectionStreamNotifyCallback) -> m SignalHandlerId Source #

Connect a signal handler for the streamNotify signal, to be run after the default handler. When overloading is enabled, this is equivalent to

after streamCollection #streamNotify callback

This signal admits a optional parameter detail. If it's not Nothing, we will connect to “stream-notify::detail” instead.

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit ?self parameter. Note that this requires activating the ImplicitParams GHC extension.

onStreamCollectionStreamNotify :: (IsStreamCollection a, MonadIO m) => a -> Maybe Text -> ((?self :: a) => StreamCollectionStreamNotifyCallback) -> m SignalHandlerId Source #

Connect a signal handler for the streamNotify signal, to be run before the default handler. When overloading is enabled, this is equivalent to

on streamCollection #streamNotify callback

This signal admits a optional parameter detail. If it's not Nothing, we will connect to “stream-notify::detail” instead.