Struct sdl2::EventPump [−][src]
pub struct EventPump { /* fields omitted */ }
Expand description
A thread-safe type that encapsulates SDL event-pumping functions.
Implementations
Query if an event type is enabled.
Enable an event type. Returns if the event type was enabled before the call.
Disable an event type. Returns if the event type was enabled before the call.
Polls for currently pending events.
If no events are pending, None
is returned.
pub fn poll_iter(&mut self) -> EventPollIterator<'_>ⓘNotable traits for EventPollIterator<'a>impl<'a> Iterator for EventPollIterator<'a> type Item = Event;
pub fn poll_iter(&mut self) -> EventPollIterator<'_>ⓘNotable traits for EventPollIterator<'a>impl<'a> Iterator for EventPollIterator<'a> type Item = Event;
impl<'a> Iterator for EventPollIterator<'a> type Item = Event;
Returns a polling iterator that calls poll_event()
.
The iterator will terminate once there are no more pending events.
Example
let sdl_context = sdl2::init().unwrap();
let mut event_pump = sdl_context.event_pump().unwrap();
for event in event_pump.poll_iter() {
use sdl2::event::Event;
match event {
Event::KeyDown {..} => { /*...*/ },
_ => ()
}
}
Pumps the event loop, gathering events from the input devices.
Waits indefinitely for the next available event.
Waits until the specified timeout (in milliseconds) for the next available event.
pub fn wait_iter(&mut self) -> EventWaitIterator<'_>ⓘNotable traits for EventWaitIterator<'a>impl<'a> Iterator for EventWaitIterator<'a> type Item = Event;
pub fn wait_iter(&mut self) -> EventWaitIterator<'_>ⓘNotable traits for EventWaitIterator<'a>impl<'a> Iterator for EventWaitIterator<'a> type Item = Event;
impl<'a> Iterator for EventWaitIterator<'a> type Item = Event;
Returns a waiting iterator that calls wait_event()
.
Note: The iterator will never terminate.
pub fn wait_timeout_iter(
&mut self,
timeout: u32
) -> EventWaitTimeoutIterator<'_>ⓘNotable traits for EventWaitTimeoutIterator<'a>impl<'a> Iterator for EventWaitTimeoutIterator<'a> type Item = Event;
pub fn wait_timeout_iter(
&mut self,
timeout: u32
) -> EventWaitTimeoutIterator<'_>ⓘNotable traits for EventWaitTimeoutIterator<'a>impl<'a> Iterator for EventWaitTimeoutIterator<'a> type Item = Event;
impl<'a> Iterator for EventWaitTimeoutIterator<'a> type Item = Event;
Returns a waiting iterator that calls wait_event_timeout()
.
Note: The iterator will never terminate, unless waiting for an event exceeds the specified timeout.