- const USB_ClassInfo_MS_Device_Config_t Config; /**< Config data for the USB class interface within\r
- * the device. All elements in this section\r
- * <b>must</b> be set or the interface will fail\r
- * to enumerate and operate correctly.\r
- */\r
- \r
- USB_ClassInfo_MS_Device_State_t State; /**< State data for the USB class interface within\r
- * the device. All elements in this section\r
- * <b>may</b> be set to initial values, but may\r
- * also be ignored to default to sane values when\r
- * the interface is enumerated.\r
- */\r
+ const struct\r
+ {\r
+ uint8_t InterfaceNumber; /**< Interface number of the Mass Storage interface within the device */\r
+\r
+ uint8_t DataINEndpointNumber; /**< Endpoint number of the Mass Storage interface's IN data endpoint */\r
+ uint16_t DataINEndpointSize; /**< Size in bytes of the Mass Storage interface's IN data endpoint */\r
+ bool DataINEndpointDoubleBank; /** Indicates if the Mass Storage interface's IN data endpoint should use double banking */\r
+\r
+ uint8_t DataOUTEndpointNumber; /**< Endpoint number of the Mass Storage interface's OUT data endpoint */\r
+ uint16_t DataOUTEndpointSize; /**< Size in bytes of the Mass Storage interface's OUT data endpoint */\r
+ bool DataOUTEndpointDoubleBank; /** Indicates if the Mass Storage interface's OUT data endpoint should use double banking */\r
+\r
+ uint8_t TotalLUNs; /**< Total number of logical drives in the Mass Storage interface */\r
+ } Config; /**< Config data for the USB class interface within the device. All elements in this section\r
+ * <b>must</b> be set or the interface will fail to enumerate and operate correctly.\r
+ */\r
+ struct\r
+ {\r
+ MS_CommandBlockWrapper_t CommandBlock; /**< Mass Storage class command block structure, stores the received SCSI\r
+ * command from the host which is to be processed\r
+ */\r
+ MS_CommandStatusWrapper_t CommandStatus; /**< Mass Storage class command status structure, set elements to indicate\r
+ * the issued command's success or failure to the host\r
+ */\r
+ volatile bool IsMassStoreReset; /**< Flag indicating that the host has requested that the Mass Storage interface be reset\r
+ * and that all current Mass Storage operations should immediately abort\r
+ */\r
+ } State; /**< State data for the USB class interface within the device. All elements in this section\r
+ * are reset to their defaults when the interface is enumerated.\r
+ */\r