19 lines
373 B
Rust
19 lines
373 B
Rust
mod gpio;
|
|
mod null;
|
|
mod piface;
|
|
|
|
pub use gpio::GpioDriver;
|
|
pub use null::NullDriver;
|
|
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;
|
|
}
|