* flag's meaning when applied to an IN, OUT or FEATURE item.\r
*/\r
\r
+/** \ingroup Group_HIDParser\r
+ * @defgroup Group_HIDIOFConst Input/Output/Feature Masks\r
+ *\r
+ * Masks indicating the type of Input, Output of Feature HID report item.\r
+ *\r
+ * @{\r
+ */\r
+ \r
#ifndef __HIDREPORTDATA_H__\r
#define __HIDREPORTDATA_H__\r
\r
/** HID_ReportItem_t.ItemFlags flag for buffered bytes. */\r
#define IOF_BUFFEREDBYTES (1 << 8)\r
\r
- /** HID_ReportItem_t.ItemFlags flag for bitfield data. */\r
+ /** HID_ReportItem_t.ItemFlags flag for bit field data. */\r
#define IOF_BITFIELD (0 << 8)\r
\r
/* Private Interface - For use in library only: */\r
#if !defined(__DOXYGEN__)\r
/* Macros: */\r
- #define DATA_SIZE_MASK 0b00000011\r
- #define TYPE_MASK 0b00001100\r
- #define TAG_MASK 0b11110000\r
-\r
- #define DATA_SIZE_0 0b00000000\r
- #define DATA_SIZE_1 0b00000001\r
- #define DATA_SIZE_2 0b00000010\r
- #define DATA_SIZE_4 0b00000011\r
+ #define DATA_SIZE_MASK 0x03\r
+ #define TYPE_MASK 0x0C\r
+ #define TAG_MASK 0xF0\r
+\r
+ #define DATA_SIZE_0 0x00\r
+ #define DATA_SIZE_1 0x01\r
+ #define DATA_SIZE_2 0x02\r
+ #define DATA_SIZE_4 0x03\r
\r
- #define TYPE_MAIN 0b00000000\r
- #define TYPE_GLOBAL 0b00000100\r
- #define TYPE_LOCAL 0b00001000\r
+ #define TYPE_MAIN 0x00\r
+ #define TYPE_GLOBAL 0x04\r
+ #define TYPE_LOCAL 0x08\r
\r
- #define TAG_MAIN_INPUT 0b10000000\r
- #define TAG_MAIN_OUTPUT 0b10010000\r
- #define TAG_MAIN_COLLECTION 0b10100000\r
- #define TAG_MAIN_FEATURE 0b10110000\r
- #define TAG_MAIN_ENDCOLLECTION 0b11000000\r
- #define TAG_GLOBAL_USAGEPAGE 0b00000000\r
- #define TAG_GLOBAL_LOGICALMIN 0b00010000\r
- #define TAG_GLOBAL_LOGICALMAX 0b00100000\r
- #define TAG_GLOBAL_PHYSMIN 0b00110000\r
- #define TAG_GLOBAL_PHYSMAX 0b01000000\r
- #define TAG_GLOBAL_UNITEXP 0b01010000\r
- #define TAG_GLOBAL_UNIT 0b01100000\r
- #define TAG_GLOBAL_REPORTSIZE 0b01110000\r
- #define TAG_GLOBAL_REPORTID 0b10000000\r
- #define TAG_GLOBAL_REPORTCOUNT 0b10010000\r
- #define TAG_GLOBAL_PUSH 0b10100000\r
- #define TAG_GLOBAL_POP 0b10110000\r
- #define TAG_LOCAL_USAGE 0b00000000\r
- #define TAG_LOCAL_USAGEMIN 0b00010000\r
- #define TAG_LOCAL_USAGEMAX 0b00100000\r
+ #define TAG_MAIN_INPUT 0x80\r
+ #define TAG_MAIN_OUTPUT 0x90\r
+ #define TAG_MAIN_COLLECTION 0xA0\r
+ #define TAG_MAIN_FEATURE 0xB0\r
+ #define TAG_MAIN_ENDCOLLECTION 0xC0\r
+\r
+ #define TAG_GLOBAL_USAGEPAGE 0x00\r
+ #define TAG_GLOBAL_LOGICALMIN 0x10\r
+ #define TAG_GLOBAL_LOGICALMAX 0x20\r
+ #define TAG_GLOBAL_PHYSMIN 0x30\r
+ #define TAG_GLOBAL_PHYSMAX 0x40\r
+ #define TAG_GLOBAL_UNITEXP 0x50\r
+ #define TAG_GLOBAL_UNIT 0x60\r
+ #define TAG_GLOBAL_REPORTSIZE 0x70\r
+ #define TAG_GLOBAL_REPORTID 0x80\r
+ #define TAG_GLOBAL_REPORTCOUNT 0x90\r
+ #define TAG_GLOBAL_PUSH 0xA0\r
+ #define TAG_GLOBAL_POP 0xB0\r
+ \r
+ #define TAG_LOCAL_USAGE 0x00\r
+ #define TAG_LOCAL_USAGEMIN 0x10\r
+ #define TAG_LOCAL_USAGEMAX 0x20\r
#endif\r
+\r
+/** @} */\r
\r
#endif\r