Struct gstreamer::Object []

pub struct Object(_, _);

Object provides a root for the object hierarchy tree filed in by the GStreamer library. It is currently a thin wrapper on top of gobject::InitiallyUnowned. It is an abstract class that is not very usable on its own.

Object gives us basic refcounting, parenting functionality and locking. Most of the functions are just extended for special GStreamer needs and can be found under the same name in the base class of Object which is gobject::Object (e.g. gobject::ObjectExt::ref becomes GstObjectExt::ref).

Since Object derives from gobject::InitiallyUnowned, it also inherits the floating reference. Be aware that functions such as BinExt::add and ElementExt::add_pad take ownership of the floating reference.

In contrast to gobject::Object instances, Object adds a name property. The functions GstObjectExt::set_name and GstObjectExt::get_name are used to set/get the name of the object.

controlled properties

Controlled properties offers a lightweight way to adjust gobject properties over stream-time. It works by using time-stamped value pairs that are queued for element-properties. At run-time the elements continuously pull value changes for the current stream-time.

What needs to be changed in a Element? Very little - it is just two steps to make a plugin controllable!

What needs to be done in applications? Again it's not a lot to change.

Implements

GstObjectExt, glib::object::ObjectExt

Methods

impl Object
[src]

[src]

Checks to see if there is any object named name in list. This function does not do any locking of any kind. You might want to protect the provided list with the lock of the owner of the list. This function will lock each Object in the list to compare the name, so be careful when passing a list with a locked object.

list

a list of Object to check through

name

the name to search for

Returns

true if a Object named name does not appear in list, false if it does.

MT safe. Grabs and releases the LOCK of each object in the list.

Trait Implementations

impl IsA<Object> for Bin

impl IsA<Object> for Bus

impl IsA<Object> for Clock

impl IsA<Object> for Device

impl IsA<Object> for DeviceMonitor

impl IsA<Object> for DeviceProvider

impl IsA<Object> for DeviceProviderFactory

impl IsA<Object> for Element

impl IsA<Object> for ElementFactory

impl IsA<Object> for GhostPad

impl Clone for Object

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for Object

Formats the value using the given formatter. Read more

impl Hash for Object

Feeds this value into the given [Hasher]. Read more

1.3.0
[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl StaticType for Object

Returns the type identifier of Self.

impl<T: IsA<Object>> PartialEq<T> for Object

This method tests for self and other values to be equal, and is used by ==. Read more

1.0.0
[src]

This method tests for !=.

impl Eq for Object

impl IsA<Object> for Object

impl Send for Object
[src]

impl Sync for Object
[src]

impl IsA<Object> for Pad

impl IsA<Object> for PadTemplate

impl IsA<Object> for Pipeline

impl IsA<Object> for Plugin

impl IsA<Object> for PluginFeature

impl IsA<Object> for ProxyPad

impl IsA<Object> for Registry

impl IsA<Object> for Stream

impl IsA<Object> for StreamCollection

impl IsA<Object> for SystemClock

impl IsA<Object> for TagSetter

impl IsA<Object> for TocSetter

impl IsA<Object> for TypeFindFactory