pub trait DeviceProxyInterface: Send + Sync {
    type StartResponseFut: Future<Output = Result<DeviceStartResult, Error>> + Send;
    type StopResponseFut: Future<Output = Result<DeviceStopResult, Error>> + Send;
    type GetTicksLeftResponseFut: Future<Output = Result<DeviceGetTicksLeftResult, Error>> + Send;
    type SetEventResponseFut: Future<Output = Result<DeviceSetEventResult, Error>> + Send;
    type StartAndWaitResponseFut: Future<Output = Result<DeviceStartAndWaitResult, Error>> + Send;
    type StartAndWait2ResponseFut: Future<Output = Result<DeviceStartAndWait2Result, Error>> + Send;
    type GetPropertiesResponseFut: Future<Output = Result<Properties, Error>> + Send;

    // Required methods
    fn start(
        &self,
        id: u64,
        resolution: &Resolution,
        ticks: u64,
    ) -> Self::StartResponseFut;
    fn stop(&self, id: u64) -> Self::StopResponseFut;
    fn get_ticks_left(&self, id: u64) -> Self::GetTicksLeftResponseFut;
    fn set_event(&self, id: u64, event: Event) -> Self::SetEventResponseFut;
    fn start_and_wait(
        &self,
        id: u64,
        resolution: &Resolution,
        ticks: u64,
    ) -> Self::StartAndWaitResponseFut;
    fn start_and_wait2(
        &self,
        id: u64,
        resolution: &Resolution,
        ticks: u64,
        setup_keep_alive: EventPair,
    ) -> Self::StartAndWait2ResponseFut;
    fn get_properties(&self) -> Self::GetPropertiesResponseFut;
}

Required Associated Types§

Required Methods§

source

fn start( &self, id: u64, resolution: &Resolution, ticks: u64, ) -> Self::StartResponseFut

source

fn stop(&self, id: u64) -> Self::StopResponseFut

source

fn get_ticks_left(&self, id: u64) -> Self::GetTicksLeftResponseFut

source

fn set_event(&self, id: u64, event: Event) -> Self::SetEventResponseFut

source

fn start_and_wait( &self, id: u64, resolution: &Resolution, ticks: u64, ) -> Self::StartAndWaitResponseFut

source

fn start_and_wait2( &self, id: u64, resolution: &Resolution, ticks: u64, setup_keep_alive: EventPair, ) -> Self::StartAndWait2ResponseFut

source

fn get_properties(&self) -> Self::GetPropertiesResponseFut

Implementors§

source§

impl DeviceProxyInterface for DeviceProxy

§

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

§

type StopResponseFut = QueryResponseFut<Result<(), DriverError>>

§

type GetTicksLeftResponseFut = QueryResponseFut<Result<u64, DriverError>>

§

type SetEventResponseFut = QueryResponseFut<Result<(), DriverError>>

§

type StartAndWaitResponseFut = QueryResponseFut<Result<ClientEnd<LeaseControlMarker>, DriverError>>

§

type StartAndWait2ResponseFut = QueryResponseFut<Result<EventPair, DriverError>>

§

type GetPropertiesResponseFut = QueryResponseFut<Properties>