Trait Interface
Source pub trait Interface: Send + 'static {
// Required methods
fn set_alt_setting(&mut self, alt_setting: u8) -> Result<(), USBError>;
fn get_alt_setting(&self) -> Result<u8, USBError>;
fn control_in<'a>(
&mut self,
setup: ControlSetup,
data: &'a mut [u8],
) -> ResultTransfer<'a>;
fn control_out<'a>(
&mut self,
setup: ControlSetup,
data: &'a [u8],
) -> ResultTransfer<'a>;
fn endpoint_bulk_in(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpointBulkIn>, USBError>;
fn endpoint_bulk_out(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpointBulkOut>, USBError>;
fn endpoint_interrupt_in(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpointInterruptIn>, USBError>;
fn endpoint_interrupt_out(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpointInterruptOut>, USBError>;
fn endpoint_iso_in(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpintIsoIn>, USBError>;
fn endpoint_iso_out(
&mut self,
endpoint: u8,
) -> Result<Box<dyn EndpintIsoOut>, USBError>;
}