Trait gstreamer::prelude::DeviceMonitorExt[][src]

pub trait DeviceMonitorExt {
    fn add_filter<'a, 'b, P: Into<Option<&'a str>>, Q: Into<Option<&'b Caps>>>(
        &self,
        classes: P,
        caps: Q
    ) -> u32;
fn get_bus(&self) -> Bus;
fn get_devices(&self) -> Vec<Device>;
fn get_providers(&self) -> Vec<String>;
fn get_show_all_devices(&self) -> bool;
fn remove_filter(&self, filter_id: u32) -> bool;
fn set_show_all_devices(&self, show_all: bool);
fn start(&self) -> Result<(), BoolError>;
fn stop(&self);
fn get_property_show_all(&self) -> bool;
fn set_property_show_all(&self, show_all: bool);
fn connect_property_show_all_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }

Trait containing all DeviceMonitor methods.

Implementors

DeviceMonitor

Required Methods

Adds a filter for which Device will be monitored, any device that matches all these classes and the Caps will be returned.

If this function is called multiple times to add more filters, each will be matched independently. That is, adding more filters will not further restrict what devices are matched.

The Caps supported by the device as returned by DeviceExt::get_caps are not intersected with caps filters added using this function.

Filters must be added before the DeviceMonitor is started.

classes

device classes to use as filter or None for any class

caps

the Caps to filter or None for ANY

Returns

The id of the new filter or 0 if no provider matched the filter's classes.

Gets the Bus of this DeviceMonitor

Returns

a Bus

Important traits for Vec<u8>

Gets a list of devices from all of the relevant monitors. This may actually probe the hardware if the monitor is not currently started.

Returns

a glib::List of Device

Important traits for Vec<u8>

Get a list of the currently selected device provider factories.

This

Returns

A list of device provider factory names that are currently being monitored by self or None when nothing is being monitored.

Get if self is curretly showing all devices, even those from hidden providers.

Returns

true when all devices will be shown.

Removes a filter from the DeviceMonitor using the id that was returned by DeviceMonitorExt::add_filter.

filter_id

the id of the filter

Returns

true of the filter id was valid, false otherwise

Set if all devices should be visible, even those devices from hidden providers. Setting show_all to true might show some devices multiple times.

show_all

show all devices

Starts monitoring the devices, one this has succeeded, the MessageType::DeviceAdded and MessageType::DeviceRemoved messages will be emitted on the bus when the list of devices changes.

Returns

true if the device monitoring could be started

Stops monitoring the devices.

Implementors