main_loop 0.3.3

main loop for real time applications
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use lib_glutin::{Event, EventsLoop};

use super::super::{run as platform_run, ControlFlow, Events};

#[inline]
pub fn run<F>(event_loop: &mut EventsLoop, mut callback: F)
where
    F: FnMut(&mut Events<Event>, f64) -> ControlFlow,
{
    let mut events = Events::new();

    platform_run(move |ms| {
        event_loop.poll_events(|event| events.push(event));
        callback(&mut events, ms)
    });
}