Skip to main content

DeviceLocalServerHandler

Trait DeviceLocalServerHandler 

Source
pub trait DeviceLocalServerHandler<___T = DriverChannel>
where ___T: Transport,
{ // Required methods fn get_max_transfer_size( &mut self, responder: Responder<GetMaxTransferSize, ___T>, ) -> impl Future<Output = ()>; fn set_bitrate( &mut self, request: Request<SetBitrate, ___T>, responder: Responder<SetBitrate, ___T>, ) -> impl Future<Output = ()>; fn transact( &mut self, request: Request<Transact, ___T>, responder: Responder<Transact, ___T>, ) -> impl Future<Output = ()>; // Provided method fn on_unknown_interaction( &mut self, ordinal: u64, ) -> impl Future<Output = ()> { ... } }
Expand description

A server handler for the Device protocol.

See Device for more details.

Required Methods§

Source

fn get_max_transfer_size( &mut self, responder: Responder<GetMaxTransferSize, ___T>, ) -> impl Future<Output = ()>

Source

fn set_bitrate( &mut self, request: Request<SetBitrate, ___T>, responder: Responder<SetBitrate, ___T>, ) -> impl Future<Output = ()>

Sets the bitrate for the i2c bus in KHz units.

Source

fn transact( &mut self, request: Request<Transact, ___T>, responder: Responder<Transact, ___T>, ) -> impl Future<Output = ()>

|Transact| assumes that write ops write_data length are not zero. |Transact| assumes that at least the last op has stop set to true.

For each read-transaction, there will be a corresponding ReadData returned. Write-transactions produce no data result.

Provided Methods§

Source

fn on_unknown_interaction(&mut self, ordinal: u64) -> impl Future<Output = ()>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<___H, ___T> DeviceLocalServerHandler<___T> for Local<___H>
where ___H: DeviceServerHandler<___T>, ___T: Transport,

Source§

async fn get_max_transfer_size( &mut self, responder: Responder<GetMaxTransferSize, ___T>, )

Source§

async fn set_bitrate( &mut self, request: Request<SetBitrate, ___T>, responder: Responder<SetBitrate, ___T>, )

Source§

async fn transact( &mut self, request: Request<Transact, ___T>, responder: Responder<Transact, ___T>, )

Source§

async fn on_unknown_interaction(&mut self, ordinal: u64)

Implementors§