pub trait DeviceProxyInterface: Send + Sync {
type GetConfigurationResponseFut: Future<Output = Result<DeviceGetConfigurationResult, Error>> + Send;
type SetConfigurationResponseFut: Future<Output = Result<DeviceSetConfigurationResult, Error>> + Send;
type ClearFunctionsResponseFut: Future<Output = Result<(), Error>> + Send;
// Required methods
fn get_configuration(&self) -> Self::GetConfigurationResponseFut;
fn set_configuration(
&self,
device_desc: &DeviceDescriptor,
config_descriptors: &[Vec<FunctionDescriptor>],
) -> Self::SetConfigurationResponseFut;
fn clear_functions(&self) -> Self::ClearFunctionsResponseFut;
fn set_state_change_listener(
&self,
listener: ClientEnd<EventsMarker>,
) -> Result<(), Error>;
}Required Associated Types§
type GetConfigurationResponseFut: Future<Output = Result<DeviceGetConfigurationResult, Error>> + Send
type SetConfigurationResponseFut: Future<Output = Result<DeviceSetConfigurationResult, Error>> + Send
type ClearFunctionsResponseFut: Future<Output = Result<(), Error>> + Send
Required Methods§
fn get_configuration(&self) -> Self::GetConfigurationResponseFut
fn set_configuration( &self, device_desc: &DeviceDescriptor, config_descriptors: &[Vec<FunctionDescriptor>], ) -> Self::SetConfigurationResponseFut
fn clear_functions(&self) -> Self::ClearFunctionsResponseFut
fn set_state_change_listener( &self, listener: ClientEnd<EventsMarker>, ) -> Result<(), Error>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".