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