Trait gstreamer_video::prelude::DeviceExt [−][src]
pub trait DeviceExt {
fn create_element<'a, P>(&self, name: P) -> Option<Element>
where
P: Into<Option<&'a str>>;
fn get_caps(&self) -> Option<GstRc<CapsRef>>;
fn get_device_class(&self) -> String;
fn get_display_name(&self) -> String;
fn get_properties(&self) -> Option<Structure>;
fn has_classes(&self, classes: &str) -> bool;
fn has_classesv(&self, classes: &[&str]) -> bool;
fn reconfigure_element<P>(&self, element: &P) -> bool
where
P: IsA<Element>;
fn connect_removed<F>(&self, f: F) -> SignalHandlerId
where
F: 'static + Send + Sync + Fn(&Self);
fn connect_property_caps_notify<F>(&self, f: F) -> SignalHandlerId
where
F: 'static + Send + Sync + Fn(&Self);
fn connect_property_device_class_notify<F>(&self, f: F) -> SignalHandlerId
where
F: 'static + Send + Sync + Fn(&Self);
fn connect_property_display_name_notify<F>(&self, f: F) -> SignalHandlerId
where
F: 'static + Send + Sync + Fn(&Self);
fn connect_property_properties_notify<F>(&self, f: F) -> SignalHandlerId
where
F: 'static + Send + Sync + Fn(&Self);
}Required Methods
fn create_element<'a, P>(&self, name: P) -> Option<Element> where
P: Into<Option<&'a str>>,
P: Into<Option<&'a str>>,
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<GstRc<CapsRef>>
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) -> String
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) -> String
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>(&self, element: &P) -> bool where
P: IsA<Element>,
P: IsA<Element>,
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>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),
fn connect_property_caps_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),
fn connect_property_device_class_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),
fn connect_property_display_name_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),
fn connect_property_properties_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),