+struct sUSBEndpoint
+{
+ tUSBEndpoint *Next; // In the poll list
+ tUSBInterface *Interface;
+ int EndpointNum;
+
+ int PollingPeriod; // In 1ms intervals
+ int MaxPacketSize; // In bytes
+
+ Uint8 Type; // Same as sUSBDriver.Endpoints.Type
+};
+
+/**
+ * \brief Structure for a device's interface
+ */
+struct sUSBInterface
+{
+ tUSBInterface *Next;
+ tUSBDevice *Dev;
+
+ tUSBDriver *Driver;
+ void *Data;
+
+ int nEndpoints;
+ tUSBEndpoint Endpoints[];
+};
+