Skip to main content

DeviceLocalServerHandler

Trait DeviceLocalServerHandler 

Source
pub trait DeviceLocalServerHandler<___T: Transport = Channel> {
    // Required methods
    fn set_nodes_bandwidth(
        &mut self,
        request: Request<SetNodesBandwidth, ___T>,
        responder: Responder<SetNodesBandwidth, ___T>,
    ) -> impl Future<Output = ()>;
    fn get_node_graph(
        &mut self,
        responder: Responder<GetNodeGraph, ___T>,
    ) -> impl Future<Output = ()>;
    fn get_path_endpoints(
        &mut self,
        responder: Responder<GetPathEndpoints, ___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 set_nodes_bandwidth( &mut self, request: Request<SetNodesBandwidth, ___T>, responder: Responder<SetNodesBandwidth, ___T>, ) -> impl Future<Output = ()>

Source

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

Returns a list of all nodes and edges between those nodes. Edges are directional, so if an interconnect allows bidirectional traffic, it should be listed twice, once for each direction of traffic flow. Edges must only be specified for directly adjacent nodes.

Source

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

The paths within the interconnect node graph which see bus traffic and need to have constraints applied to by drivers. Each path will have a device node instantiated for it.

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 set_nodes_bandwidth( &mut self, request: Request<SetNodesBandwidth, ___T>, responder: Responder<SetNodesBandwidth, ___T>, )

Source§

async fn get_node_graph(&mut self, responder: Responder<GetNodeGraph, ___T>)

Source§

async fn get_path_endpoints( &mut self, responder: Responder<GetPathEndpoints, ___T>, )

Source§

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

Implementors§