X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/c7bc3ec391da3904f0db6398171c7fed37d4f836..ba8ffa4cb70a45f4e487a874276759d81ae8ae2e:/LUFA/Drivers/USB/Class/Device/HID.h diff --git a/LUFA/Drivers/USB/Class/Device/HID.h b/LUFA/Drivers/USB/Class/Device/HID.h index dee892d06..545b38d14 100644 --- a/LUFA/Drivers/USB/Class/Device/HID.h +++ b/LUFA/Drivers/USB/Class/Device/HID.h @@ -74,12 +74,19 @@ uint8_t ReportINEndpointNumber; /**< Endpoint number of the HID interface's IN report endpoint */ uint16_t ReportINEndpointSize; /**< Size in bytes of the HID interface's IN report endpoint */ - void* PrevReportINBuffer; /** Pointer to a buffer where the previously created HID input report can be + void* PrevReportINBuffer; /**< Pointer to a buffer where the previously created HID input report can be * stored by the driver, for comparison purposes to detect report changes that * must be sent immediately to the host. This should point to a buffer big enough - * to hold the largest HID input report sent from the HID interface. + * to hold the largest HID input report sent from the HID interface. If this is set + * to NULL, it is up to the user to force transfers when needed in the + * \ref CALLBACK_HID_Device_CreateHIDReport() callback function. + * + * \note Due to the single buffer, the internal driver can only correctly compare + * subsequent reports with identical report IDs. In multiple report devices, + * this buffer should be set to NULL and the decision to send reports made + * by the user application instead. */ - uint8_t PrevReportINBufferSize; /** Size in bytes of the given input report buffer. This is used to create a + uint8_t PrevReportINBufferSize; /**< Size in bytes of the given input report buffer. This is used to create a * second buffer of the same size within the driver so that subsequent reports * can be compared. */ @@ -89,9 +96,9 @@ struct { bool UsingReportProtocol; /**< Indicates if the HID interface is set to Boot or Report protocol mode */ - uint16_t IdleCount; /**< Report idle period, in mS, set by the host */ - uint16_t IdleMSRemaining; /**< Total number of mS remaining before the idle period elapsed - this should be - * decremented by the user application if non-zero each millisecond */ + uint16_t IdleCount; /**< Report idle period, in milliseconds, set by the host */ + uint16_t IdleMSRemaining; /**< Total number of milliseconds remaining before the idle period elapsed - this + * should be decremented by the user application if non-zero each millisecond */ } State; /**< State data for the USB class interface within the device. All elements in this section * are reset to their defaults when the interface is enumerated. */