USB interface base class. More...

Public Member Functions | |
| virtual void | init () |
| virtual UsbEndpoint * | getEndpoint (int index)=0 |
| virtual void | setup (SetupData *setupData) |
| virtual void | checkDescriptor (InterfaceDescriptor *interfaceDesriptor) |
| virtual const char * | getLabel () |
Public Attributes | |
| UsbDevice * | device |
USB interface base class.
Interface usually has one or more endpoints.
Typical subclass of UsbInterface class looks like:
|
inlinevirtual |
Called when generating interface descriptor.
Called internally from the library.
May be overloaded to modify the default descriptor.
| interfaceDesriptor |
|
pure virtual |
Gets endpoint by index.
Must be overloaded by the subclass.
Called internally from the library.
| index | zero based in scope of interface |
|
inlinevirtual |
Get string identifier of the interface.
May be overloaded by the subclass.
|
inlinevirtual |
Interface initialization.
Called internally from the library.
UsbEndpoint::init() is responsible for calling init() method of endpoints.
|
inlinevirtual |
Handler of interface control request.
May be overloaded to implement vendor request.
| setupData |
| UsbDevice* usbd::UsbInterface::device |
Owner device. This property is set internally by the library.