mod atomic_committer;
mod wayland_committer;
use anyhow::Result;
pub use atomic_committer::AtomicCommitter;
pub use wayland_committer::WaylandCommitter;
#[allow(unused)]
pub trait Committer<H, T> {
fn init(d: H) -> Result<Self>
where
Self: Sized;
fn awake(&self) -> Result<()>; // Open output with current display setting (e.g. CRTC Mode Setting)
fn commit(&self) -> Result<()>;
fn set_state(&mut self, state: T) -> Result<()>;
fn sync(&self) -> Result<()>;
}