Skip to main content

DeviceMonitorExt

Trait DeviceMonitorExt 

Source
pub trait DeviceMonitorExt: IsA<DeviceMonitor> + 'static {
    // Provided methods
    fn bus(&self) -> Bus { ... }
    fn providers(&self) -> Vec<GString> { ... }
    fn shows_all_devices(&self) -> bool { ... }
    fn set_show_all_devices(&self, show_all: bool) { ... }
    fn start(&self) -> Result<(), BoolError> { ... }
    fn stop(&self) { ... }
    fn shows_all(&self) -> bool { ... }
    fn set_show_all(&self, show_all: bool) { ... }
    fn connect_show_all_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F,
    ) -> SignalHandlerId { ... }
}
Expand description

Trait containing all DeviceMonitor methods.

§Implementors

DeviceMonitor

Provided Methods§

Source

fn bus(&self) -> Bus

Gets the Bus of this DeviceMonitor

§Returns

a Bus

Source

fn providers(&self) -> Vec<GString>

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.

Source

fn shows_all_devices(&self) -> bool

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

§Returns

true when all devices will be shown.

Source

fn set_show_all_devices(&self, show_all: bool)

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

Source

fn start(&self) -> Result<(), BoolError>

Starts monitoring the devices, once this has succeeded, the GST_MESSAGE_DEVICE_ADDED and GST_MESSAGE_DEVICE_REMOVED messages will be emitted on the bus when the list of devices changes.

Since 1.28, device providers are started asynchronously and GST_MESSAGE_DEVICE_MONITOR_STARTED will be emitted once the initial list of devices has been populated, signalling that monitor startup has completed.

The monitor will hold a strong reference to itself while it is populating devices asynchronously, so you must call stop() before unreffing if you want monitoring to stop immediately.

§Returns

true if the device monitoring could be started, i.e. at least a single device provider was started successfully.

Source

fn stop(&self)

Stops monitoring the devices.

Source

fn shows_all(&self) -> bool

Source

fn set_show_all(&self, show_all: bool)

Source

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

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§