[−][src]Struct joycon_rs::joycon::input_report_mode::simple_hid_mode::SimpleHIDMode
Simple HID mode pushes updates with every button press.
Example
use joycon_rs::prelude::*; let (sender, receiver) = std::sync::mpsc::channel(); // Receive all Joy-Con's simple HID reports while let Ok(simple_hid_report) = receiver.recv() { // Output reports dbg!(simple_hid_report); } let manager = JoyConManager::get_instance(); let devices = { let lock = manager.lock(); match lock { Ok(manager) => manager.new_devices(), Err(_) => return, } }; devices.iter() .flat_map(|d| SimpleJoyConDriver::new(&d)) .try_for_each::<_, JoyConResult<()>>(|driver| { let sender = sender.clone(); // Set Joy-Con's mode let simple_hid_mode_joycon = SimpleHIDMode::new(driver)?; std::thread::spawn( move || { loop { sender.send(simple_hid_mode_joycon.read_input_report()) .unwrap(); } }); Ok(()) }) .unwrap();
Trait Implementations
impl<D> InputReportMode<D> for SimpleHIDMode<D> where
D: JoyConDriver,
[src]
D: JoyConDriver,
type Report = SimpleHIDReport
type ArgsType = [u8; 1]
const SUB_COMMAND: SubCommand
[src]
const ARGS: Self::ArgsType
[src]
fn new(driver: D) -> JoyConResult<Self>
[src]
fn driver(&self) -> &D
[src]
fn driver_mut(&mut self) -> &mut D
[src]
fn into_driver(self) -> D
[src]
fn read_input_report(&self) -> JoyConResult<Self::Report>
[src]
Auto Trait Implementations
impl<D> RefUnwindSafe for SimpleHIDMode<D> where
D: RefUnwindSafe,
D: RefUnwindSafe,
impl<D> Send for SimpleHIDMode<D> where
D: Send,
D: Send,
impl<D> Sync for SimpleHIDMode<D> where
D: Sync,
D: Sync,
impl<D> Unpin for SimpleHIDMode<D> where
D: Unpin,
D: Unpin,
impl<D> UnwindSafe for SimpleHIDMode<D> where
D: UnwindSafe,
D: 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>,