pub trait DeviceProxyInterface: Send + Sync {
    type GetBootProtocolResponseFut: Future<Output = Result<BootProtocol, Error>> + Send;
    type GetDeviceIdsResponseFut: Future<Output = Result<DeviceIds, Error>> + Send;
    type GetReportDescResponseFut: Future<Output = Result<Vec<u8>, Error>> + Send;
    type GetDeviceReportsReaderResponseFut: Future<Output = Result<DeviceGetDeviceReportsReaderResult, Error>> + Send;
    type ReadReportResponseFut: Future<Output = Result<(i32, Vec<u8>, i64), Error>> + Send;
    type ReadReportsResponseFut: Future<Output = Result<(i32, Vec<u8>), Error>> + Send;
    type GetReportsEventResponseFut: Future<Output = Result<(i32, Event), Error>> + Send;
    type GetReportResponseFut: Future<Output = Result<(i32, Vec<u8>), Error>> + Send;
    type SetReportResponseFut: Future<Output = Result<i32, Error>> + Send;

    // Required methods
    fn get_boot_protocol(&self) -> Self::GetBootProtocolResponseFut;
    fn get_device_ids(&self) -> Self::GetDeviceIdsResponseFut;
    fn get_report_desc(&self) -> Self::GetReportDescResponseFut;
    fn get_device_reports_reader(
        &self,
        reader: ServerEnd<DeviceReportsReaderMarker>
    ) -> Self::GetDeviceReportsReaderResponseFut;
    fn read_report(&self) -> Self::ReadReportResponseFut;
    fn read_reports(&self) -> Self::ReadReportsResponseFut;
    fn get_reports_event(&self) -> Self::GetReportsEventResponseFut;
    fn get_report(
        &self,
        type_: ReportType,
        id: u8
    ) -> Self::GetReportResponseFut;
    fn set_report(
        &self,
        type_: ReportType,
        id: u8,
        report: &[u8]
    ) -> Self::SetReportResponseFut;
    fn set_trace_id(&self, id: u32) -> Result<(), Error>;
}

Required Associated Types§

Required Methods§

Implementors§

source§

impl DeviceProxyInterface for DeviceProxy

§

type GetBootProtocolResponseFut = QueryResponseFut<BootProtocol>

§

type GetDeviceIdsResponseFut = QueryResponseFut<DeviceIds>

§

type GetReportDescResponseFut = QueryResponseFut<Vec<u8>>

§

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

§

type ReadReportResponseFut = QueryResponseFut<(i32, Vec<u8>, i64)>

§

type ReadReportsResponseFut = QueryResponseFut<(i32, Vec<u8>)>

§

type GetReportsEventResponseFut = QueryResponseFut<(i32, Event)>

§

type GetReportResponseFut = QueryResponseFut<(i32, Vec<u8>)>

§

type SetReportResponseFut = QueryResponseFut<i32>