mod gpio; mod piface; pub use gpio::GpioDriver; pub use piface::PifaceDriver; use crate::errors::EmgauwaError; pub trait RelayDriver { fn get_high(&self, value: bool) -> bool { value ^ self.get_inverted() } fn set(&mut self, value: bool) -> Result<(), EmgauwaError>; fn get_pin(&self) -> u8; fn get_inverted(&self) -> bool; }