[−][src]Struct input_linux::evdev::EvdevHandle
A handle to an input device allowing the use of ioctls
Implementations
impl<F> EvdevHandle<F>
[src]
pub const fn new(fd: F) -> Self
[src]
Create a new handle using an existing open file object.
pub fn into_inner(self) -> F
[src]
Extracts the contained handle.
pub const fn as_inner(&self) -> &F
[src]
A reference to the contained handle.
pub fn as_inner_mut(&mut self) -> &mut F
[src]
A mutable reference to the contained handle.
impl EvdevHandle<File>
[src]
impl<F: AsRawFd> EvdevHandle<F>
[src]
pub fn read(&self, events: &mut [input_event]) -> Result<usize>
[src]
Read events from the input device
pub fn write(&self, events: &[input_event]) -> Result<usize>
[src]
Write events to the input device
pub fn driver_version(&self) -> Result<i32>
[src]
EVIOCGVERSION
pub fn device_id(&self) -> Result<InputId>
[src]
EVIOCGID
pub fn repeat_settings(&self) -> Result<repeat_settings>
[src]
EVIOGREP
pub fn set_repeat_settings(&self, value: &repeat_settings) -> Result<()>
[src]
EVIOSREP
pub fn keycode_legacy(&self) -> Result<[u32; 2]>
[src]
EVIOCGKEYCODE
pub fn keycode(&self) -> Result<input_keymap_entry>
[src]
EVIOCGKEYCODE_V2
pub fn set_keycode_legacy(&self, value: &[u32; 2]) -> Result<()>
[src]
EVIOCSKEYCODE
pub fn set_keycode(&self, value: &input_keymap_entry) -> Result<()>
[src]
EVIOCSKEYCODE_V2
pub fn device_name_buf(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGNAME
pub fn device_name(&self) -> Result<Vec<u8>>
[src]
EVIOCGNAME
pub fn physical_location_buf(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGPHYS
pub fn physical_location(&self) -> Result<Vec<u8>>
[src]
EVIOCGPHYS
pub fn unique_id_buf(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGUNIQ
pub fn unique_id(&self) -> Result<Vec<u8>>
[src]
EVIOCGUNIQ
pub fn device_properties_raw(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGPROP
pub fn key_state(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGKEY
pub fn led_state(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGLED
pub fn sounds_state(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGSND
pub fn switch_state(&self, buffer: &mut [u8]) -> Result<usize>
[src]
EVIOCGSW
pub fn send_force_feedback(&self, value: &mut ff_effect) -> Result<()>
[src]
EVIOCSFF
pub fn erase_force_feedback(&self, value: i16) -> Result<()>
[src]
EVIOCRMFF
pub fn effects_count(&self) -> Result<i32>
[src]
EVIOCGEFFECTS
pub fn device_properties(&self) -> Result<Bitmask<InputProperty>>
[src]
EVIOCGPROP
pub fn multi_touch_slots(
&self,
code: AbsoluteAxis,
values: &mut [i32]
) -> Result<()>
[src]
&self,
code: AbsoluteAxis,
values: &mut [i32]
) -> Result<()>
EVIOCGMTSLOTS
Warning: the current implementation can leak uninitialized heap memory into values
pub fn event_mask_events(&self) -> Result<Bitmask<EventKind>>
[src]
EVIOCGMASK
pub fn set_event_mask_events(&self, bitmask: &Bitmask<EventKind>) -> Result<()>
[src]
EVIOCSMASK
pub fn event_bits(&self) -> Result<Bitmask<EventKind>>
[src]
EVIOCGBIT
pub fn key_mask(&self) -> Result<Bitmask<Key>>
[src]
EVIOCGMASK
pub fn set_key_mask(&self, bitmask: &Bitmask<Key>) -> Result<()>
[src]
EVIOCSMASK
pub fn key_bits(&self) -> Result<Bitmask<Key>>
[src]
EVIOCGBIT
pub fn relative_mask(&self) -> Result<Bitmask<RelativeAxis>>
[src]
EVIOCGMASK
pub fn set_relative_mask(&self, bitmask: &Bitmask<RelativeAxis>) -> Result<()>
[src]
EVIOCSMASK
pub fn relative_bits(&self) -> Result<Bitmask<RelativeAxis>>
[src]
EVIOCGBIT
pub fn absolute_mask(&self) -> Result<Bitmask<AbsoluteAxis>>
[src]
EVIOCGMASK
pub fn set_absolute_mask(&self, bitmask: &Bitmask<AbsoluteAxis>) -> Result<()>
[src]
EVIOCSMASK
pub fn absolute_bits(&self) -> Result<Bitmask<AbsoluteAxis>>
[src]
EVIOCGBIT
pub fn misc_mask(&self) -> Result<Bitmask<MiscKind>>
[src]
EVIOCGMASK
pub fn set_misc_mask(&self, bitmask: &Bitmask<MiscKind>) -> Result<()>
[src]
EVIOCSMASK
pub fn misc_bits(&self) -> Result<Bitmask<MiscKind>>
[src]
EVIOCGBIT
pub fn switch_mask(&self) -> Result<Bitmask<SwitchKind>>
[src]
EVIOCGMASK
pub fn set_switch_mask(&self, bitmask: &Bitmask<SwitchKind>) -> Result<()>
[src]
EVIOCSMASK
pub fn switch_bits(&self) -> Result<Bitmask<SwitchKind>>
[src]
EVIOCGBIT
pub fn led_mask(&self) -> Result<Bitmask<LedKind>>
[src]
EVIOCGMASK
pub fn set_led_mask(&self, bitmask: &Bitmask<LedKind>) -> Result<()>
[src]
EVIOCSMASK
pub fn led_bits(&self) -> Result<Bitmask<LedKind>>
[src]
EVIOCGBIT
pub fn sound_mask(&self) -> Result<Bitmask<SoundKind>>
[src]
EVIOCGMASK
pub fn set_sound_mask(&self, bitmask: &Bitmask<SoundKind>) -> Result<()>
[src]
EVIOCSMASK
pub fn sound_bits(&self) -> Result<Bitmask<SoundKind>>
[src]
EVIOCGBIT
pub fn autorepeat_mask(&self) -> Result<Bitmask<AutorepeatKind>>
[src]
EVIOCGMASK
pub fn set_autorepeat_mask(
&self,
bitmask: &Bitmask<AutorepeatKind>
) -> Result<()>
[src]
&self,
bitmask: &Bitmask<AutorepeatKind>
) -> Result<()>
EVIOCSMASK
pub fn autorepeat_bits(&self) -> Result<Bitmask<AutorepeatKind>>
[src]
EVIOCGBIT
pub fn event_mask_raw(&self, kind: EventKind, buffer: &mut [u8]) -> Result<()>
[src]
EVIOCGMASK
pub fn set_event_mask_raw(&self, kind: EventKind, buffer: &[u8]) -> Result<()>
[src]
EVIOCSMASK
pub fn event_bits_raw(
&self,
kind: EventKind,
buffer: &mut [u8]
) -> Result<usize>
[src]
&self,
kind: EventKind,
buffer: &mut [u8]
) -> Result<usize>
EVIOCGBIT
pub fn absolute_info(&self, abs: AbsoluteAxis) -> Result<AbsoluteInfo>
[src]
EVIOCGABS
pub fn set_absolute_info(
&self,
abs: AbsoluteAxis,
info: &AbsoluteInfo
) -> Result<()>
[src]
&self,
abs: AbsoluteAxis,
info: &AbsoluteInfo
) -> Result<()>
EVIOCSABS
pub fn grab(&self, grab: bool) -> Result<()>
[src]
EVIOCGRAB
pub fn revoke(&self) -> Result<()>
[src]
EVIOCREVOKE
pub fn set_clock_id(&self, value: i32) -> Result<()>
[src]
EVIOCSCLOCKID
Trait Implementations
impl<F: AsRawFd> AsRawFd for EvdevHandle<F>
[src]
impl<F: FromRawFd> FromRawFd for EvdevHandle<F>
[src]
unsafe fn from_raw_fd(fd: RawFd) -> Self
[src]
impl<F: IntoRawFd> IntoRawFd for EvdevHandle<F>
[src]
fn into_raw_fd(self) -> RawFd
[src]
Auto Trait Implementations
impl<F> RefUnwindSafe for EvdevHandle<F> where
F: RefUnwindSafe,
F: RefUnwindSafe,
impl<F> Send for EvdevHandle<F> where
F: Send,
F: Send,
impl<F> Sync for EvdevHandle<F> where
F: Sync,
F: Sync,
impl<F> Unpin for EvdevHandle<F> where
F: Unpin,
F: Unpin,
impl<F> UnwindSafe for EvdevHandle<F> where
F: UnwindSafe,
F: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,