use glium::glutin::event_loop::EventLoopBuilder; use mio_extras::channel::{channel as mio_channel, Receiver as MioReceiver, Sender as MioSender}; pub mod gl; pub mod ipc; pub mod window; fn main() -> std::io::Result<()> { let (ipc_sender, ipc_recv) = mio_channel(); let event_loop = EventLoopBuilder::::with_user_event().build(); let window_sender = event_loop.create_proxy(); let ipc = ipc::Ipc::new(ipc_recv, window_sender)?; let _ipc_thread = std::thread::spawn(|| ipc.run()); let window_store = window::WindowStore::new(ipc_sender); window_store.run(event_loop); }