pub trait RemoteServiceProxyInterface: Send + Sync {
type DiscoverCharacteristicsResponseFut: Future<Output = Result<Vec<Characteristic>, Error>> + Send;
type ReadByTypeResponseFut: Future<Output = Result<RemoteServiceReadByTypeResult, Error>> + Send;
type ReadCharacteristicResponseFut: Future<Output = Result<RemoteServiceReadCharacteristicResult, Error>> + Send;
type WriteCharacteristicResponseFut: Future<Output = Result<RemoteServiceWriteCharacteristicResult, Error>> + Send;
type ReadDescriptorResponseFut: Future<Output = Result<RemoteServiceReadDescriptorResult, Error>> + Send;
type WriteDescriptorResponseFut: Future<Output = Result<RemoteServiceWriteDescriptorResult, Error>> + Send;
type RegisterCharacteristicNotifierResponseFut: Future<Output = Result<RemoteServiceRegisterCharacteristicNotifierResult, Error>> + Send;
// Required methods
fn discover_characteristics(
&self,
) -> Self::DiscoverCharacteristicsResponseFut;
fn read_by_type(&self, uuid: &Uuid) -> Self::ReadByTypeResponseFut;
fn read_characteristic(
&self,
handle: &Handle,
options: &ReadOptions,
) -> Self::ReadCharacteristicResponseFut;
fn write_characteristic(
&self,
handle: &Handle,
value: &[u8],
options: &WriteOptions,
) -> Self::WriteCharacteristicResponseFut;
fn read_descriptor(
&self,
handle: &Handle,
options: &ReadOptions,
) -> Self::ReadDescriptorResponseFut;
fn write_descriptor(
&self,
handle: &Handle,
value: &[u8],
options: &WriteOptions,
) -> Self::WriteDescriptorResponseFut;
fn register_characteristic_notifier(
&self,
handle: &Handle,
notifier: ClientEnd<CharacteristicNotifierMarker>,
) -> Self::RegisterCharacteristicNotifierResponseFut;
}Required Associated Types§
type DiscoverCharacteristicsResponseFut: Future<Output = Result<Vec<Characteristic>, Error>> + Send
type ReadByTypeResponseFut: Future<Output = Result<RemoteServiceReadByTypeResult, Error>> + Send
type ReadCharacteristicResponseFut: Future<Output = Result<RemoteServiceReadCharacteristicResult, Error>> + Send
type WriteCharacteristicResponseFut: Future<Output = Result<RemoteServiceWriteCharacteristicResult, Error>> + Send
type ReadDescriptorResponseFut: Future<Output = Result<RemoteServiceReadDescriptorResult, Error>> + Send
type WriteDescriptorResponseFut: Future<Output = Result<RemoteServiceWriteDescriptorResult, Error>> + Send
type RegisterCharacteristicNotifierResponseFut: Future<Output = Result<RemoteServiceRegisterCharacteristicNotifierResult, Error>> + Send
Required Methods§
fn discover_characteristics(&self) -> Self::DiscoverCharacteristicsResponseFut
fn read_by_type(&self, uuid: &Uuid) -> Self::ReadByTypeResponseFut
fn read_characteristic( &self, handle: &Handle, options: &ReadOptions, ) -> Self::ReadCharacteristicResponseFut
fn write_characteristic( &self, handle: &Handle, value: &[u8], options: &WriteOptions, ) -> Self::WriteCharacteristicResponseFut
fn read_descriptor( &self, handle: &Handle, options: &ReadOptions, ) -> Self::ReadDescriptorResponseFut
fn write_descriptor( &self, handle: &Handle, value: &[u8], options: &WriteOptions, ) -> Self::WriteDescriptorResponseFut
fn register_characteristic_notifier( &self, handle: &Handle, notifier: ClientEnd<CharacteristicNotifierMarker>, ) -> Self::RegisterCharacteristicNotifierResponseFut
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".