Object Hierarchy:

Object hierarchy for Structure


[ Compact ]
public class Structure

A Structure 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 Structure also has a name. The name starts with a letter and can be filled by letters, numbers and any of "/-_.:".

Structure is used by various GStreamer subsystems to store information in a flexible and extensible way. A Structure does not have a refcount because it usually is part of a higher level object such as Caps, Message, Event, Query. It provides a means to enforce mutability using the refcount of the parent with the set_parent_refcount method.

A Structure can be created with Structure.empty or Structure, 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 set_value or @set.

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

Fields can be removed with remove_field or 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 Caps / Structure serialization into string has limited support for nested Caps / Structure fields. It can only support one level of nesting. Using more levels will lead to unexpected behavior when using serialization features, such as to_string or serialize and their counterparts.

Namespace: Gst
Package: gstreamer-1.0


Static methods:

Creation methods: