pub trait HciEmulatorProxyInterface: Send + Sync {
type PublishResponseFut: Future<Output = Result<HciEmulatorPublishResult, Error>> + Send;
type AddLowEnergyPeerResponseFut: Future<Output = Result<HciEmulatorAddLowEnergyPeerResult, Error>> + Send;
type AddBredrPeerResponseFut: Future<Output = Result<HciEmulatorAddBredrPeerResult, Error>> + Send;
type WatchControllerParametersResponseFut: Future<Output = Result<ControllerParameters, Error>> + Send;
type WatchLeScanStatesResponseFut: Future<Output = Result<Vec<LeScanState>, Error>> + Send;
type WatchLegacyAdvertisingStatesResponseFut: Future<Output = Result<Vec<LegacyAdvertisingState>, Error>> + Send;
// Required methods
fn publish(&self, settings: &EmulatorSettings) -> Self::PublishResponseFut;
fn add_low_energy_peer(
&self,
parameters: &LowEnergyPeerParameters,
peer: ServerEnd<PeerMarker>
) -> Self::AddLowEnergyPeerResponseFut;
fn add_bredr_peer(
&self,
parameters: &BredrPeerParameters,
peer: ServerEnd<PeerMarker>
) -> Self::AddBredrPeerResponseFut;
fn watch_controller_parameters(
&self
) -> Self::WatchControllerParametersResponseFut;
fn watch_le_scan_states(&self) -> Self::WatchLeScanStatesResponseFut;
fn watch_legacy_advertising_states(
&self
) -> Self::WatchLegacyAdvertisingStatesResponseFut;
}