Update UC3 platform driver support to use the bitmasks defined in the header files...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Common / HIDParser.h
index cd32093..7b9dd9d 100644 (file)
@@ -38,6 +38,7 @@
 
 /** \ingroup Group_USB
  *  \defgroup Group_HIDParser HID Report Parser
 
 /** \ingroup Group_USB
  *  \defgroup Group_HIDParser HID Report Parser
+ *  \brief USB Human Interface Device (HID) Class report descriptor parser.
  *
  *  \section Sec_Dependencies Module Source Dependencies
  *  The following files must be built with any user project that uses this module:
  *
  *  \section Sec_Dependencies Module Source Dependencies
  *  The following files must be built with any user project that uses this module:
  *  of data exchanged between a HID device and a host, including both the physical encoding of each item
  *  (such as a button, key press or joystick axis) in the sent and received data packets - known as "reports" -
  *  as well as other information about each item such as the usages, data range, physical location and other
  *  of data exchanged between a HID device and a host, including both the physical encoding of each item
  *  (such as a button, key press or joystick axis) in the sent and received data packets - known as "reports" -
  *  as well as other information about each item such as the usages, data range, physical location and other
- *  characterstics. In this way a HID device can retain a high degree of flexibility in its capabilities, as it
- *  is not forced to comply with a given report layout or featureset.
+ *  characteristics. In this way a HID device can retain a high degree of flexibility in its capabilities, as it
+ *  is not forced to comply with a given report layout or feature-set.
  *
  *  This module also contains routines for the processing of data in an actual HID report, using the parsed report
  *
  *  This module also contains routines for the processing of data in an actual HID report, using the parsed report
- *  descritor data as a guide for the encoding.
+ *  descriptor data as a guide for the encoding.
  *
  *  @{
  */
  *
  *  @{
  */
 #define __HIDPARSER_H__
 
        /* Includes: */
 #define __HIDPARSER_H__
 
        /* Includes: */
-               #include <string.h>
-               #include <stdbool.h>
+               #include "../../../../Common/Common.h"
 
                #include "HIDReportData.h"
                #include "../Common/HID.h"
 
                #include "HIDReportData.h"
                #include "../Common/HID.h"
-
-               #include "../../../../Common/Common.h"
-
+               
        /* Enable C linkage for C++ Compilers: */
                #if defined(__cplusplus)
                        extern "C" {
        /* Enable C linkage for C++ Compilers: */
                #if defined(__cplusplus)
                        extern "C" {
                        /** Extracts the given report item's value out of the given HID report and places it into the Value
                         *  member of the report item's \ref HID_ReportItem_t structure.
                         *
                        /** Extracts the given report item's value out of the given HID report and places it into the Value
                         *  member of the report item's \ref HID_ReportItem_t structure.
                         *
-                        *  When called on a report with an item that exists in that report, this copies the report item's Value
-                        *  to it's PreviousValue element for easy checking to see if an item's value has changed before processing
+                        *  When called on a report with an item that exists in that report, this copies the report item's \c Value
+                        *  to its \c PreviousValue element for easy checking to see if an item's value has changed before processing
                         *  a report. If the given item does not exist in the report, the function does not modify the report item's
                         *  data.
                         *
                         *  a report. If the given item does not exist in the report, the function does not modify the report item's
                         *  data.
                         *
                        bool USB_GetHIDReportItemInfo(const uint8_t* ReportData,
                                                      HID_ReportItem_t* const ReportItem) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 
                        bool USB_GetHIDReportItemInfo(const uint8_t* ReportData,
                                                      HID_ReportItem_t* const ReportItem) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 
-                       /** Retrieves the given report item's value out of the Value member of the report item's
+                       /** Retrieves the given report item's value out of the \c Value member of the report item's
                         *  \ref HID_ReportItem_t structure and places it into the correct position in the HID report
                         *  buffer. The report buffer is assumed to have the appropriate bits cleared before calling
                         *  this function (i.e., the buffer should be explicitly cleared before report values are added).
                         *
                         *  \ref HID_ReportItem_t structure and places it into the correct position in the HID report
                         *  buffer. The report buffer is assumed to have the appropriate bits cleared before calling
                         *  this function (i.e., the buffer should be explicitly cleared before report values are added).
                         *
-                        *  When called, this copies the report item's Value element to it's PreviousValue element for easy
+                        *  When called, this copies the report item's \c Value element to its \c PreviousValue element for easy
                         *  checking to see if an item's value has changed before sending a report.
                         *
                         *  If the device has multiple HID reports, the first byte in the report is set to the report ID of the given item.
                         *  checking to see if an item's value has changed before sending a report.
                         *
                         *  If the device has multiple HID reports, the first byte in the report is set to the report ID of the given item.
                        void USB_SetHIDReportItemInfo(uint8_t* ReportData,
                                                      HID_ReportItem_t* const ReportItem) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 
                        void USB_SetHIDReportItemInfo(uint8_t* ReportData,
                                                      HID_ReportItem_t* const ReportItem) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 
-                       /** Retrieves the size of a given HID report in bytes from it's Report ID.
+                       /** Retrieves the size of a given HID report in bytes from its Report ID.
                         *
                         *  \param[in] ParserData  Pointer to a \ref HID_ReportInfo_t instance containing the parser output.
                         *
                         *  \param[in] ParserData  Pointer to a \ref HID_ReportInfo_t instance containing the parser output.
-                        *  \param[in] ReportID    Report ID of the report whose size is to be retrieved.
-                        *  \param[in] ReportType  Type of the report whose size is to be determined, a valued from the
+                        *  \param[in] ReportID    Report ID of the report whose size is to be determined.
+                        *  \param[in] ReportType  Type of the report whose size is to be determined, a value from the
                         *                         \ref HID_ReportItemTypes_t enum.
                         *
                         *                         \ref HID_ReportItemTypes_t enum.
                         *
-                        *  \return Size of the report in bytes, or 0 if the report does not exist.
+                        *  \return Size of the report in bytes, or \c 0 if the report does not exist.
                         */
                        uint16_t USB_GetHIDReportSize(HID_ReportInfo_t* const ParserData,
                                                      const uint8_t ReportID,
                         */
                        uint16_t USB_GetHIDReportSize(HID_ReportInfo_t* const ParserData,
                                                      const uint8_t ReportID,