pub struct Input { /* private fields */ }Implementations§
Source§impl Input
impl Input
pub fn new() -> Self
Sourcepub fn gamepads(&self) -> impl Iterator<Item = &Gamepad>
pub fn gamepads(&self) -> impl Iterator<Item = &Gamepad>
Iterator over currently connected gamepads.
Sourcepub fn first_gamepad(&self) -> Option<&Gamepad>
pub fn first_gamepad(&self) -> Option<&Gamepad>
The first connected gamepad, if any. Convenient for single-player input.
Sourcepub fn poll_gamepads(&mut self)
pub fn poll_gamepads(&mut self)
Drain pending gamepad events into per-pad state, tracking hot-plug. Call once per
frame before update.
Sourcepub fn set_rumble(&mut self, id: GamepadId, magnitude: f32, duration_ms: u32)
pub fn set_rumble(&mut self, id: GamepadId, magnitude: f32, duration_ms: u32)
Rumble id at magnitude (0..=1) for duration_ms. No-op when the pad has no
force feedback or no backend is available.
pub fn key_held(&self, k: Key) -> bool
pub fn key_pressed(&self, k: Key) -> bool
pub fn key_released(&self, k: Key) -> bool
pub fn mouse_held(&self, b: MouseButton) -> bool
pub fn mouse_pressed(&self, b: MouseButton) -> bool
pub fn mouse_released(&self, b: MouseButton) -> bool
pub fn mouse_pos(&self) -> (f32, f32)
pub fn mouse_delta(&self) -> (f32, f32)
pub fn scroll(&self) -> (f32, f32)
pub fn handle_window_event(&mut self, event: &WindowEvent)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Input
impl RefUnwindSafe for Input
impl Send for Input
impl !Sync for Input
impl Unpin for Input
impl UnsafeUnpin for Input
impl UnwindSafe for Input
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.