Trait Interface
Source pub trait Interface: Send + 'static {
// Required methods
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>;
}