use zb_hw::Ncp;
pub use zb_hw::{FoundNetwork, ScannedChannel};
use crate::{Coordinator, Error};
pub trait Scanning {
fn scan_networks(
&self,
channel_mask: u32,
duration: u8,
) -> impl Future<Output = Result<Vec<FoundNetwork>, Error>> + Send;
fn scan_channels(
&self,
channel_mask: u32,
duration: u8,
) -> impl Future<Output = Result<Vec<ScannedChannel>, Error>> + Send;
}
impl Scanning for Coordinator {
async fn scan_networks(
&self,
channel_mask: u32,
duration: u8,
) -> Result<Vec<FoundNetwork>, Error> {
Ok(Ncp::scan_networks(&self.ncp, channel_mask, duration).await?)
}
async fn scan_channels(
&self,
channel_mask: u32,
duration: u8,
) -> Result<Vec<ScannedChannel>, Error> {
Ok(Ncp::scan_channels(&self.ncp, channel_mask, duration).await?)
}
}