Add Doxygen documentation to the completed portions of the PDI programming protocol...
[pub/USBasp.git] / LUFA / Drivers / USB / Class / Host / HID.h
index 5cac00e..f6bd81c 100644 (file)
                                const struct\r
                                {\r
                                        uint8_t  DataINPipeNumber; /**< Pipe number of the HID interface's IN data pipe */\r
+                                       bool     DataINPipeDoubleBank; /** Indicates if the HID interface's IN data pipe should use double banking */\r
+\r
                                        uint8_t  DataOUTPipeNumber; /**< Pipe number of the HID interface's OUT data pipe */\r
+                                       bool     DataOUTPipeDoubleBank; /** Indicates if the HID interface's OUT data pipe should use double banking */\r
 \r
                                        uint8_t  HIDInterfaceProtocol; /**< HID interface protocol value to match against if a specific\r
                                                                        *   boot subclass protocol is required, either \ref HID_BOOT_MOUSE_PROTOCOL,\r
                                        bool SupportsBootProtocol; /**< Indicates if the current interface instance supports the HID Boot\r
                                                                    *   Protocol when enabled via \ref HID_Host_SetBootProtocol()\r
                                                                    */\r
-                                       bool DeviceUsesOUTPipe; /**< Indicates if the current interface instance uses a seperate OUT data pipe for\r
+                                       bool DeviceUsesOUTPipe; /**< Indicates if the current interface instance uses a separate OUT data pipe for\r
                                                                 *   OUT reports, or if OUT reports are sent via the control pipe instead.\r
                                                                 */\r
-                                       bool UsingBootProtocol; /**< Indicates that the interface is currently initialised in Boot Protocol mode */\r
+                                       bool UsingBootProtocol; /**< Indicates that the interface is currently initialized in Boot Protocol mode */\r
                                        uint16_t HIDReportSize; /**< Size in bytes of the HID report descriptor in the device */\r
                                        \r
                                        uint8_t LargestReportSize; /**< Largest report the device will send, in bytes */\r
                         *  \return A value from the \ref HIDHost_EnumerationFailure_ErrorCodes_t enum\r
                         */\r
                        uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, uint16_t ConfigDescriptorSize,\r
-                                                       uint8_t* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);\r
+                                                       void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);\r
 \r
 \r
                        /** Receives a HID IN report from the attached HID device, when a report has been received on the HID IN Data pipe.\r
+                        *  \r
+                        *  \note The destination buffer should be large enough to accommodate the largest report that the attached device\r
+                        *        can generate.\r
                         *\r
                         *  \param[in,out] HIDInterfaceInfo  Pointer to a structure containing a HID Class host configuration and state\r
                         *  \param[in] Buffer  Buffer to store the received report into\r
                         *\r
                         *  \return An error code from the \ref Pipe_Stream_RW_ErrorCodes_t enum\r
                         */\r
-                       uint8_t HID_Host_ReceiveReport(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, void* Buffer) ATTR_NON_NULL_PTR_ARG(1, 2);\r
+                       uint8_t HID_Host_ReceiveReport(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, void* Buffer)\r
+                                                      ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);\r
 \r
                        #if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)\r
-                       /** Received a HID IN report from the attached device, by the report ID.\r
+                       /** Receives a HID IN report from the attached device, by the report ID.\r
                         *\r
                         *  \note When the HID_HOST_BOOT_PROTOCOL_ONLY compile time token is defined, this method is unavailable.\r
                         *\r
                         *  \return A value from the \ref USB_Host_SendControlErrorCodes_t enum\r
                         */\r
                        uint8_t HID_Host_ReceiveReportByID(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, const uint8_t ReportID,\r
-                                                          void* Buffer) ATTR_NON_NULL_PTR_ARG(13);\r
+                                                          void* Buffer) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);\r
                        #endif\r
                        \r
                        /** Sends an OUT report to the currently attached HID device, using the device's OUT pipe if available or the device's\r
                        #if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)\r
                                                        const uint8_t ReportID,\r
                        #endif\r
-                                                       void* Buffer, const uint16_t ReportSize)\r
+                                                       void* Buffer, const uint16_t ReportSize) ATTR_NON_NULL_PTR_ARG(1)\r
                        #if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)\r
-                                                       ATTR_NON_NULL_PTR_ARG(1, 3);\r
+                                                       ATTR_NON_NULL_PTR_ARG(3);\r
                        #else\r
-                                                       ATTR_NON_NULL_PTR_ARG(1, 2);\r
+                                                       ATTR_NON_NULL_PTR_ARG(2);\r
                        #endif\r
 \r
                        /** Determines if a HID IN report has been received from the attached device on the data IN pipe.\r
 \r
                /* Function Prototypes: */\r
                        #if defined(INCLUDE_FROM_HID_CLASS_HOST_C)\r
-                               static uint8_t DComp_HID_Host_NextHIDInterface(void* CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
-                               static uint8_t DComp_NextHID(void* CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
-                               static uint8_t DComp_HID_Host_NextHIDInterfaceEndpoint(void* CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
+                               static uint8_t DComp_HID_Host_NextHIDInterface(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
+                               static uint8_t DComp_NextHID(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
+                               static uint8_t DComp_HID_Host_NextHIDInterfaceEndpoint(void* const CurrentDescriptor) ATTR_NON_NULL_PTR_ARG(1);\r
                        #endif  \r
        #endif  \r
        \r