mod board;
mod pca9685;
use crate::io::{IoProtocol, IO};
pub use board::Board;
pub use board::BoardEvent;
pub use pca9685::PCA9685;
pub trait Hardware: IO {
fn get_protocol_name(&self) -> &str {
self.get_protocol().get_name()
}
fn get_protocol(&self) -> Box<dyn IoProtocol>;
fn set_protocol(&mut self, protocol: Box<dyn IoProtocol>);
}
pub trait Expander: Hardware + IoProtocol {}