Trait gstreamer::prelude::DeviceExt

source ·
pub trait DeviceExt: IsA<Device> + Sealed + 'static {
    // Provided methods
    fn create_element(&self, name: Option<&str>) -> Result<Element, BoolError> { ... }
    fn caps(&self) -> Option<Caps> { ... }
    fn device_class(&self) -> GString { ... }
    fn display_name(&self) -> GString { ... }
    fn properties(&self) -> Option<Structure> { ... }
    fn has_classes(&self, classes: &str) -> bool { ... }
    fn has_classesv(&self, classes: &[&str]) -> bool { ... }
    fn reconfigure_element(
        &self,
        element: &impl IsA<Element>,
    ) -> Result<(), BoolError> { ... }
    fn connect_removed<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F,
    ) -> SignalHandlerId { ... }
}
Expand description

Trait containing all Device methods.

§Implementors

Device

Provided Methods§

source

fn create_element(&self, name: Option<&str>) -> Result<Element, BoolError>

Creates the element with all of the required parameters set to use this device.

§name

name of new element, or None to automatically create a unique name.

§Returns

a new Element configured to use this device

source

fn caps(&self) -> Option<Caps>

Getter for the Caps that this device supports.

§Returns

The Caps supported by this device. Unref with gst_caps_unref() when done.

source

fn device_class(&self) -> GString

Gets the “class” of a device. This is a “/” separated list of classes that represent this device. They are a subset of the classes of the DeviceProvider that produced this device.

§Returns

The device class. Free with g_free() after use.

source

fn display_name(&self) -> GString

Gets the user-friendly name of the device.

§Returns

The device name. Free with g_free() after use.

source

fn properties(&self) -> Option<Structure>

Gets the extra properties of a device.

§Returns

The extra properties or None when there are none. Free with gst_structure_free() after use.

source

fn has_classes(&self, classes: &str) -> bool

Check if self matches all of the given classes

§classes

a “/”-separated list of device classes to match, only match if all classes are matched

§Returns

true if self matches.

source

fn has_classesv(&self, classes: &[&str]) -> bool

Check if factory matches all of the given classes

§classes

a None terminated array of classes to match, only match if all classes are matched

§Returns

true if self matches.

source

fn reconfigure_element( &self, element: &impl IsA<Element>, ) -> Result<(), BoolError>

Tries to reconfigure an existing element to use the device. If this function fails, then one must destroy the element and create a new one using create_element().

Note: This should only be implemented for elements can change their device in the PLAYING state.

§element

a Element

§Returns

true if the element could be reconfigured to use this device, false otherwise.

source

fn connect_removed<F: Fn(&Self) + Send + Sync + 'static>( &self, f: F, ) -> SignalHandlerId

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<O: IsA<Device>> DeviceExt for O