Fix to HID device mode Class driver, so that new reports are compared against the...
[pub/lufa.git] / LUFA / Drivers / USB / Class / Device / HID.h
index 87f96c6..61f43a1 100644 (file)
                #endif\r
 \r
        /* Public Interface - May be used in end-application: */\r
+               /* Macros: */\r
+                       #if !defined(HID_MAX_REPORT_SIZE)\r
+                               /** Maximum size of an IN report which can be generated by the device and sent to the host, in bytes.\r
+                                *\r
+                                *  \note If larger reports than the default specified here are to be generated by the device, this\r
+                                *        value can be overridden by defining this token to the required value in the project makefile\r
+                                *        and passing it to the compiler via the -D switch.\r
+                                */\r
+                               #define HID_MAX_REPORT_SIZE     16\r
+                       #endif\r
+       \r
                /* Type Defines: */\r
                        /** Class state structure. An instance of this structure should be made for each HID interface\r
                         *  within the user application, and passed to each of the HID class driver functions as the\r
                                        uint8_t  InterfaceNumber; /**< Interface number of the HID interface within the device */\r
 \r
                                        uint8_t  ReportINEndpointNumber; /**< Endpoint number of the HID interface's IN report endpoint */\r
-                                       uint16_t ReportINEndpointSize; /**< Size in bytes of the HID interface's IN report endpoint */\r
-                                       \r
-                                       uint8_t  ReportINBufferSize; /**< Size of the largest possible report to send to the host, for\r
-                                                                                                 *   buffer allocation purposes\r
-                                                                                                 */\r
+                                       uint16_t ReportINEndpointSize; /**< Size in bytes of the HID interface's IN report endpoint */                                  \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
                                        bool     UsingReportProtocol; /**< Indicates if the HID interface is set to Boot or Report protocol mode */\r
-                                       uint16_t IdleCount; /**< Report idle period, in ms, set by the host */\r
-                                       uint16_t IdleMSRemaining; /**< Total number of ms remaining before the idle period elapsed - this should be\r
+                                       uint16_t IdleCount; /**< Report idle period, in mS, set by the host */\r
+                                       uint16_t IdleMSRemaining; /**< Total number of mS remaining before the idle period elapsed - this should be\r
                                                                                           *   decremented by the user application if non-zero each millisecond */                      \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