Struct Joystick

Source
pub struct Joystick { /* private fields */ }
Expand description

§Joystick

the Joystick struct is a controller for the Joystick on the Device. It has 4 private fields to store the interface pins. These fields are used internally and do not offer direct access.

Implementations§

Source§

impl Joystick

Source

pub fn new() -> Result<Self>

Source

pub fn read(&self) -> Option<State>

Returns Option<State>. When no reportable state is detected, it returns None.

Examples found in repository?
examples/joystick_control.rs (line 10)
5fn main() -> Result<()> {
6    let mut device = Device::new()?;
7    device.initialize_components()?;
8
9    loop {
10        if let Some(joystick_state) = device.joystick.read() {
11            match joystick_state {
12                joystick::State::Up => {
13                    println!("You Pressed Up");
14                }
15                joystick::State::Down => {
16                    println!("You Pressed Down");
17                }
18                joystick::State::Left => {
19                    println!("You Pressed Left");
20                }
21                joystick::State::Right => {
22                    println!("You Pressed Right");
23                }
24                joystick::State::Click => {
25                    println!("You Clicked!");
26                }
27            }
28        }
29    }
30}

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.