#[cfg(feature="embedded-graphics")] pub mod embedded_graphics_lib; #[cfg(feature="smart-leds")] pub mod smart_leds_lib; pub mod esp32; pub type DefaultBoard = esp32::Esp32Board; use crate::render::{Output, Surfaces}; use crate::task::Scheduler; pub trait Board { type Output: Output; type Surfaces: Surfaces; type Scheduler: Scheduler; fn take() -> Self; fn output(&mut self) -> Self::Output; fn surfaces(&mut self) -> Self::Surfaces; fn system_tasks(&mut self) -> Self::Scheduler; fn chip_id() -> u64; }