pub trait DeviceProxyInterface: Send + Sync {
    type CloseResponseFut: Future<Output = Result<CloseableCloseResult, Error>> + Send;
    type QueryResponseFut: Future<Output = Result<Vec<u8>, Error>> + Send;
    type ReadResponseFut: Future<Output = Result<ReadableReadResult, Error>> + Send;
    type WriteResponseFut: Future<Output = Result<WritableWriteResult, Error>> + Send;
    type DescribeResponseFut: Future<Output = Result<DeviceDescribeResponse, Error>> + Send;
    type OpenClientResponseFut: Future<Output = Result<i32, Error>> + Send;
    type ClrSetFeatureResponseFut: Future<Output = Result<(i32, u32), Error>> + Send;
    type GetWindowSizeResponseFut: Future<Output = Result<(i32, WindowSize), Error>> + Send;
    type MakeActiveResponseFut: Future<Output = Result<i32, Error>> + Send;
    type ReadEventsResponseFut: Future<Output = Result<(i32, u32), Error>> + Send;
    type SetWindowSizeResponseFut: Future<Output = Result<i32, Error>> + Send;

    // Required methods
    fn clone2(&self, request: ServerEnd<CloneableMarker>) -> Result<(), Error>;
    fn close(&self) -> Self::CloseResponseFut;
    fn query(&self) -> Self::QueryResponseFut;
    fn read(&self, count: u64) -> Self::ReadResponseFut;
    fn write(&self, data: &[u8]) -> Self::WriteResponseFut;
    fn describe(&self) -> Self::DescribeResponseFut;
    fn open_client(
        &self,
        id: u32,
        client: ServerEnd<DeviceMarker>
    ) -> Self::OpenClientResponseFut;
    fn clr_set_feature(
        &self,
        clr: u32,
        set: u32
    ) -> Self::ClrSetFeatureResponseFut;
    fn get_window_size(&self) -> Self::GetWindowSizeResponseFut;
    fn make_active(&self, client_pty_id: u32) -> Self::MakeActiveResponseFut;
    fn read_events(&self) -> Self::ReadEventsResponseFut;
    fn set_window_size(
        &self,
        size: &WindowSize
    ) -> Self::SetWindowSizeResponseFut;
}

Required Associated Types§

source

type CloseResponseFut: Future<Output = Result<CloseableCloseResult, Error>> + Send

source

type QueryResponseFut: Future<Output = Result<Vec<u8>, Error>> + Send

source

type ReadResponseFut: Future<Output = Result<ReadableReadResult, Error>> + Send

source

type WriteResponseFut: Future<Output = Result<WritableWriteResult, Error>> + Send

source

type DescribeResponseFut: Future<Output = Result<DeviceDescribeResponse, Error>> + Send

source

type OpenClientResponseFut: Future<Output = Result<i32, Error>> + Send

source

type ClrSetFeatureResponseFut: Future<Output = Result<(i32, u32), Error>> + Send

source

type GetWindowSizeResponseFut: Future<Output = Result<(i32, WindowSize), Error>> + Send

source

type MakeActiveResponseFut: Future<Output = Result<i32, Error>> + Send

source

type ReadEventsResponseFut: Future<Output = Result<(i32, u32), Error>> + Send

source

type SetWindowSizeResponseFut: Future<Output = Result<i32, Error>> + Send

Required Methods§

source

fn clone2(&self, request: ServerEnd<CloneableMarker>) -> Result<(), Error>

source

fn close(&self) -> Self::CloseResponseFut

source

fn query(&self) -> Self::QueryResponseFut

source

fn read(&self, count: u64) -> Self::ReadResponseFut

source

fn write(&self, data: &[u8]) -> Self::WriteResponseFut

source

fn describe(&self) -> Self::DescribeResponseFut

source

fn open_client( &self, id: u32, client: ServerEnd<DeviceMarker> ) -> Self::OpenClientResponseFut

source

fn clr_set_feature(&self, clr: u32, set: u32) -> Self::ClrSetFeatureResponseFut

source

fn get_window_size(&self) -> Self::GetWindowSizeResponseFut

source

fn make_active(&self, client_pty_id: u32) -> Self::MakeActiveResponseFut

source

fn read_events(&self) -> Self::ReadEventsResponseFut

source

fn set_window_size(&self, size: &WindowSize) -> Self::SetWindowSizeResponseFut

Implementors§

source§

impl DeviceProxyInterface for DeviceProxy

§

type CloseResponseFut = QueryResponseFut<Result<(), i32>>

§

type QueryResponseFut = QueryResponseFut<Vec<u8>>

§

type ReadResponseFut = QueryResponseFut<Result<Vec<u8>, i32>>

§

type WriteResponseFut = QueryResponseFut<Result<u64, i32>>

§

type DescribeResponseFut = QueryResponseFut<DeviceDescribeResponse>

§

type OpenClientResponseFut = QueryResponseFut<i32>

§

type ClrSetFeatureResponseFut = QueryResponseFut<(i32, u32)>

§

type GetWindowSizeResponseFut = QueryResponseFut<(i32, WindowSize)>

§

type MakeActiveResponseFut = QueryResponseFut<i32>

§

type ReadEventsResponseFut = QueryResponseFut<(i32, u32)>

§

type SetWindowSizeResponseFut = QueryResponseFut<i32>