Struct evdev_rs::UInputDevice[][src]

pub struct UInputDevice { /* fields omitted */ }

Opaque struct representing an evdev uinput device

Implementations

impl UInputDevice[src]

pub fn create_from_device<T: DeviceWrapper>(device: &T) -> Result<UInputDevice>[src]

Create a uinput device based on the given libevdev device.

The uinput device will be an exact copy of the libevdev device, minus the bits that uinput doesn’t allow to be set.

pub fn devnode(&self) -> Option<&str>[src]

Return the device node representing this uinput device.

This relies on libevdev_uinput_get_syspath() to provide a valid syspath.

pub fn syspath(&self) -> Option<&str>[src]

Return the syspath representing this uinput device.

If the UI_GET_SYSNAME ioctl not available, libevdev makes an educated guess. The UI_GET_SYSNAME ioctl is available since Linux 3.15.

The syspath returned is the one of the input node itself (e.g. /sys/devices/virtual/input/input123), not the syspath of the device node returned with libevdev_uinput_get_devnode().

pub fn as_fd(&self) -> Option<RawFd>[src]

Return the file descriptor used to create this uinput device.

This is the fd pointing to /dev/uinput. This file descriptor may be used to write events that are emitted by the uinput device. Closing this file descriptor will destroy the uinput device.

pub fn fd(&self) -> Option<RawFd>[src]

👎 Deprecated since 0.5.0:

Prefer as_fd. Some function names were changed so they more closely match their type signature. See issue 42 for discussion https://github.com/ndesh26/evdev-rs/issues/42

pub fn write_event(&self, event: &InputEvent) -> Result<()>[src]

Post an event through the uinput device.

It is the caller’s responsibility that any event sequence is terminated with an EV_SYN/SYN_REPORT/0 event. Otherwise, listeners on the device node will not see the events until the next EV_SYN event is posted.

Trait Implementations

impl Drop for UInputDevice[src]

impl Send for UInputDevice[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.