gi-gst-1.0.2: GStreamer bindings

CopyrightWill Thompson, Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria (garetxe@gmail.com)
Safe HaskellNone
LanguageHaskell2010

GI.Gst.Structs.Structure

Contents

Description

A #GstStructure is a collection of key/value pairs. The keys are expressed as GQuarks and the values can be of any GType.

In addition to the key/value pairs, a #GstStructure also has a name. The name starts with a letter and can be filled by letters, numbers and any of "/-_.:".

#GstStructure is used by various GStreamer subsystems to store information in a flexible and extensible way. A #GstStructure does not have a refcount because it usually is part of a higher level object such as #GstCaps, GstEvent, #GstQuery. It provides a means to enforce mutability using the refcount of the parent with the gst_structure_set_parent_refcount() method.

A #GstStructure can be created with gst_structure_new_empty() or gst_structure_new(), which both take a name and an optional set of key/value pairs along with the types of the values.

Field values can be changed with gst_structure_set_value() or gst_structure_set().

Field values can be retrieved with gst_structure_get_value() or the more convenient gst_structure_get_*() functions.

Fields can be removed with gst_structure_remove_field() or gst_structure_remove_fields().

Strings in structures must be ASCII or UTF-8 encoded. Other encodings are not allowed. Strings may be %NULL however.

Be aware that the current GstStructure serialization into string has limited support for nested GstStructure fields. It can only support one level of nesting. Using more levels will lead to unexpected behavior when using serialization features, such as gst_caps_to_string() or gst_value_serialize() and their counterparts.

Synopsis

Exported types

newtype Structure Source

Instances

BoxedObject Structure Source 
(~) AttrOpTag tag AttrSet => Constructible Structure tag Source 
((~) * signature (m Text), MonadIO m) => MethodInfo * StructureToStringMethodInfo Structure signature Source 
((~) * signature (Text -> GValue -> m ()), MonadIO m) => MethodInfo * StructureTakeValueMethodInfo Structure signature Source 
((~) * signature (Text -> GValue -> m ()), MonadIO m) => MethodInfo * StructureSetValueMethodInfo Structure signature Source 
((~) * signature (Int32 -> m Bool), MonadIO m) => MethodInfo * StructureSetParentRefcountMethodInfo Structure signature Source 
((~) * signature (Text -> m ()), MonadIO m) => MethodInfo * StructureSetNameMethodInfo Structure signature Source 
((~) * signature (Text -> m ()), MonadIO m) => MethodInfo * StructureRemoveFieldMethodInfo Structure signature Source 
((~) * signature (m ()), MonadIO m) => MethodInfo * StructureRemoveAllFieldsMethodInfo Structure signature Source 
((~) * signature (Word32 -> m Text), MonadIO m) => MethodInfo * StructureNthFieldNameMethodInfo Structure signature Source 
((~) * signature (m Int32), MonadIO m) => MethodInfo * StructureNFieldsMethodInfo Structure signature Source 
((~) * signature (StructureMapFunc -> m Bool), MonadIO m) => MethodInfo * StructureMapInPlaceMethodInfo Structure signature Source 
((~) * signature (Structure -> m Bool), MonadIO m) => MethodInfo * StructureIsSubsetMethodInfo Structure signature Source 
((~) * signature (Structure -> m Bool), MonadIO m) => MethodInfo * StructureIsEqualMethodInfo Structure signature Source 
((~) * signature (Structure -> m Structure), MonadIO m) => MethodInfo * StructureIntersectMethodInfo Structure signature Source 
((~) * signature (Word32 -> GValue -> m ()), MonadIO m) => MethodInfo * StructureIdTakeValueMethodInfo Structure signature Source 
((~) * signature (Word32 -> GValue -> m ()), MonadIO m) => MethodInfo * StructureIdSetValueMethodInfo Structure signature Source 
((~) * signature (Word32 -> GType -> m Bool), MonadIO m) => MethodInfo * StructureIdHasFieldTypedMethodInfo Structure signature Source 
((~) * signature (Word32 -> m Bool), MonadIO m) => MethodInfo * StructureIdHasFieldMethodInfo Structure signature Source 
((~) * signature (Word32 -> m GValue), MonadIO m) => MethodInfo * StructureIdGetValueMethodInfo Structure signature Source 
((~) * signature (Text -> m Bool), MonadIO m) => MethodInfo * StructureHasNameMethodInfo Structure signature Source 
((~) * signature (Text -> GType -> m Bool), MonadIO m) => MethodInfo * StructureHasFieldTypedMethodInfo Structure signature Source 
((~) * signature (Text -> m Bool), MonadIO m) => MethodInfo * StructureHasFieldMethodInfo Structure signature Source 
((~) * signature (Text -> m GValue), MonadIO m) => MethodInfo * StructureGetValueMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Word64)), MonadIO m) => MethodInfo * StructureGetUint64MethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Word32)), MonadIO m) => MethodInfo * StructureGetUintMethodInfo Structure signature Source 
((~) * signature (Text -> m (Maybe Text)), MonadIO m) => MethodInfo * StructureGetStringMethodInfo Structure signature Source 
((~) * signature (m Word32), MonadIO m) => MethodInfo * StructureGetNameIdMethodInfo Structure signature Source 
((~) * signature (m Text), MonadIO m) => MethodInfo * StructureGetNameMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Int64)), MonadIO m) => MethodInfo * StructureGetInt64MethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Int32)), MonadIO m) => MethodInfo * StructureGetIntMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Int32, Int32)), MonadIO m) => MethodInfo * StructureGetFractionMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Word32, Word32)), MonadIO m) => MethodInfo * StructureGetFlagsetMethodInfo Structure signature Source 
((~) * signature (Text -> m GType), MonadIO m) => MethodInfo * StructureGetFieldTypeMethodInfo Structure signature Source 
((~) * signature (Text -> GType -> m (Bool, Int32)), MonadIO m) => MethodInfo * StructureGetEnumMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Double)), MonadIO m) => MethodInfo * StructureGetDoubleMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, DateTime)), MonadIO m) => MethodInfo * StructureGetDateTimeMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Date)), MonadIO m) => MethodInfo * StructureGetDateMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Word64)), MonadIO m) => MethodInfo * StructureGetClockTimeMethodInfo Structure signature Source 
((~) * signature (Text -> m (Bool, Bool)), MonadIO m) => MethodInfo * StructureGetBooleanMethodInfo Structure signature Source 
((~) * signature (m ()), MonadIO m) => MethodInfo * StructureFreeMethodInfo Structure signature Source 
((~) * signature (StructureForeachFunc -> m Bool), MonadIO m) => MethodInfo * StructureForeachMethodInfo Structure signature Source 
((~) * signature (Text -> Text -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldStringMethodInfo Structure signature Source 
((~) * signature (Text -> Int32 -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldNearestIntMethodInfo Structure signature Source 
((~) * signature (Text -> Int32 -> Int32 -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldNearestFractionMethodInfo Structure signature Source 
((~) * signature (Text -> Double -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldNearestDoubleMethodInfo Structure signature Source 
((~) * signature (Text -> Bool -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldBooleanMethodInfo Structure signature Source 
((~) * signature (Text -> m Bool), MonadIO m) => MethodInfo * StructureFixateFieldMethodInfo Structure signature Source 
((~) * signature (m ()), MonadIO m) => MethodInfo * StructureFixateMethodInfo Structure signature Source 
((~) * signature (StructureFilterMapFunc -> m ()), MonadIO m) => MethodInfo * StructureFilterAndMapInPlaceMethodInfo Structure signature Source 
((~) * signature (m Structure), MonadIO m) => MethodInfo * StructureCopyMethodInfo Structure signature Source 
((~) * signature (Structure -> m Bool), MonadIO m) => MethodInfo * StructureCanIntersectMethodInfo Structure signature Source 
((~) * info (ResolveStructureMethod t Structure), MethodInfo * info Structure p) => IsLabelProxy t (Structure -> p) Source 
type AttributeList Structure Source 

newZeroStructure :: MonadIO m => m Structure Source

Construct a Structure struct initialized to zero.

Methods

structureCanIntersect

structureCopy

data StructureCopyMethodInfo Source

Instances

((~) * signature (m Structure), MonadIO m) => MethodInfo * StructureCopyMethodInfo Structure signature Source 

structureFilterAndMapInPlace

structureFixate

data StructureFixateMethodInfo Source

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * StructureFixateMethodInfo Structure signature Source 

structureFixateField

structureFixateFieldBoolean

structureFixateFieldNearestDouble

structureFixateFieldNearestFraction

structureFixateFieldNearestInt

structureFixateFieldString

structureForeach

structureFree

data StructureFreeMethodInfo Source

Instances

((~) * signature (m ()), MonadIO m) => MethodInfo * StructureFreeMethodInfo Structure signature Source 

structureFromString

structureGetBoolean

structureGetClockTime

structureGetDate

data StructureGetDateMethodInfo Source

Instances

((~) * signature (Text -> m (Bool, Date)), MonadIO m) => MethodInfo * StructureGetDateMethodInfo Structure signature Source 

structureGetDateTime

structureGetDouble

structureGetEnum

data StructureGetEnumMethodInfo Source

Instances

((~) * signature (Text -> GType -> m (Bool, Int32)), MonadIO m) => MethodInfo * StructureGetEnumMethodInfo Structure signature Source 

structureGetFieldType

structureGetFlagset

structureGetFraction

structureGetInt

data StructureGetIntMethodInfo Source

Instances

((~) * signature (Text -> m (Bool, Int32)), MonadIO m) => MethodInfo * StructureGetIntMethodInfo Structure signature Source 

structureGetInt64

data StructureGetInt64MethodInfo Source

Instances

((~) * signature (Text -> m (Bool, Int64)), MonadIO m) => MethodInfo * StructureGetInt64MethodInfo Structure signature Source 

structureGetName

structureGetNameId

structureGetString

structureGetUint

data StructureGetUintMethodInfo Source

Instances

((~) * signature (Text -> m (Bool, Word32)), MonadIO m) => MethodInfo * StructureGetUintMethodInfo Structure signature Source 

structureGetUint64

structureGetValue

structureHasField

structureHasFieldTyped

structureHasName

data StructureHasNameMethodInfo Source

Instances

((~) * signature (Text -> m Bool), MonadIO m) => MethodInfo * StructureHasNameMethodInfo Structure signature Source 

structureIdGetValue

structureIdHasField

structureIdHasFieldTyped

structureIdSetValue

data StructureIdSetValueMethodInfo Source

Instances

((~) * signature (Word32 -> GValue -> m ()), MonadIO m) => MethodInfo * StructureIdSetValueMethodInfo Structure signature Source 

structureIdTakeValue

structureIntersect

structureIsEqual

structureIsSubset

structureMapInPlace

structureNFields

structureNewEmpty

structureNewFromString

structureNewIdEmpty

structureNthFieldName

structureRemoveAllFields

structureRemoveField

data StructureRemoveFieldMethodInfo Source

Instances

((~) * signature (Text -> m ()), MonadIO m) => MethodInfo * StructureRemoveFieldMethodInfo Structure signature Source 

structureSetName

data StructureSetNameMethodInfo Source

Instances

((~) * signature (Text -> m ()), MonadIO m) => MethodInfo * StructureSetNameMethodInfo Structure signature Source 

structureSetParentRefcount

structureSetValue

data StructureSetValueMethodInfo Source

Instances

((~) * signature (Text -> GValue -> m ()), MonadIO m) => MethodInfo * StructureSetValueMethodInfo Structure signature Source 

structureTakeValue

data StructureTakeValueMethodInfo Source

Instances

((~) * signature (Text -> GValue -> m ()), MonadIO m) => MethodInfo * StructureTakeValueMethodInfo Structure signature Source 

structureToString

Properties

Type