pub trait HidbusProxyInterface: Send + Sync {
    type QueryResponseFut: Future<Output = Result<HidbusQueryResult, Error>> + Send;
    type StartResponseFut: Future<Output = Result<HidbusStartResult, Error>> + Send;
    type StopResponseFut: Future<Output = Result<(), Error>> + Send;
    type GetDescriptorResponseFut: Future<Output = Result<HidbusGetDescriptorResult, Error>> + Send;
    type SetDescriptorResponseFut: Future<Output = Result<HidbusSetDescriptorResult, Error>> + Send;
    type GetReportResponseFut: Future<Output = Result<HidbusGetReportResult, Error>> + Send;
    type SetReportResponseFut: Future<Output = Result<HidbusSetReportResult, Error>> + Send;
    type GetIdleResponseFut: Future<Output = Result<HidbusGetIdleResult, Error>> + Send;
    type SetIdleResponseFut: Future<Output = Result<HidbusSetIdleResult, Error>> + Send;
    type GetProtocolResponseFut: Future<Output = Result<HidbusGetProtocolResult, Error>> + Send;
    type SetProtocolResponseFut: Future<Output = Result<HidbusSetProtocolResult, Error>> + Send;

    // Required methods
    fn query(&self) -> Self::QueryResponseFut;
    fn start(&self) -> Self::StartResponseFut;
    fn stop(&self) -> Self::StopResponseFut;
    fn get_descriptor(
        &self,
        desc_type: HidDescriptorType,
    ) -> Self::GetDescriptorResponseFut;
    fn set_descriptor(
        &self,
        desc_type: HidDescriptorType,
        data: &[u8],
    ) -> Self::SetDescriptorResponseFut;
    fn get_report(
        &self,
        rpt_type: ReportType,
        rpt_id: u8,
        len: u64,
    ) -> Self::GetReportResponseFut;
    fn set_report(
        &self,
        rpt_type: ReportType,
        rpt_id: u8,
        data: &[u8],
    ) -> Self::SetReportResponseFut;
    fn get_idle(&self, rpt_id: u8) -> Self::GetIdleResponseFut;
    fn set_idle(&self, rpt_id: u8, duration: i64) -> Self::SetIdleResponseFut;
    fn get_protocol(&self) -> Self::GetProtocolResponseFut;
    fn set_protocol(
        &self,
        protocol: HidProtocol,
    ) -> Self::SetProtocolResponseFut;
}

Required Associated Types§

Required Methods§

source

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

source

fn start(&self) -> Self::StartResponseFut

source

fn stop(&self) -> Self::StopResponseFut

source

fn get_descriptor( &self, desc_type: HidDescriptorType, ) -> Self::GetDescriptorResponseFut

source

fn set_descriptor( &self, desc_type: HidDescriptorType, data: &[u8], ) -> Self::SetDescriptorResponseFut

source

fn get_report( &self, rpt_type: ReportType, rpt_id: u8, len: u64, ) -> Self::GetReportResponseFut

source

fn set_report( &self, rpt_type: ReportType, rpt_id: u8, data: &[u8], ) -> Self::SetReportResponseFut

source

fn get_idle(&self, rpt_id: u8) -> Self::GetIdleResponseFut

source

fn set_idle(&self, rpt_id: u8, duration: i64) -> Self::SetIdleResponseFut

source

fn get_protocol(&self) -> Self::GetProtocolResponseFut

source

fn set_protocol(&self, protocol: HidProtocol) -> Self::SetProtocolResponseFut

Implementors§

source§

impl HidbusProxyInterface for HidbusProxy

§

type QueryResponseFut = QueryResponseFut<Result<HidInfo, i32>>

§

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

§

type StopResponseFut = QueryResponseFut<()>

§

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

§

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

§

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

§

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

§

type GetIdleResponseFut = QueryResponseFut<Result<i64, i32>>

§

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

§

type GetProtocolResponseFut = QueryResponseFut<Result<HidProtocol, i32>>

§

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