[][src]Trait gstreamer::DeviceExt

pub trait DeviceExt: 'static {
    fn create_element(&self, name: Option<&str>) -> Result<Element, BoolError>;
fn get_caps(&self) -> Option<Caps>;
fn get_device_class(&self) -> GString;
fn get_display_name(&self) -> GString;
fn get_properties(&self) -> Option<Structure>;
fn has_classes(&self, classes: &str) -> bool;
fn has_classesv(&self, classes: &[&str]) -> bool;
fn reconfigure_element<P: IsA<Element>>(
        &self,
        element: &P
    ) -> Result<(), BoolError>;
fn connect_removed<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }

Trait containing all Device methods.

Implementors

Device

Required methods

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

fn get_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.

fn get_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.

fn get_display_name(&self) -> GString

Gets the user-friendly name of the device.

Returns

The device name. Free with g_free after use.

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

Gets the extra properties of a device.

Returns

The extra properties or None when there are none. Free with Structure::free after use.

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.

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.

fn reconfigure_element<P: IsA<Element>>(
    &self,
    element: &P
) -> 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 DeviceExt::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.

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

Loading content...

Implementors

impl<O: IsA<Device>> DeviceExt for O[src]

Loading content...