Библиотека LUFA (раннее название MyUSB) версия 101122
|
Парсер дескриптора репорта класса USB Human Interface Device (HID). More...
#include <string.h>
#include <stdbool.h>
#include "HIDReportData.h"
#include "../Common/HID.h"
#include "../../../../Common/Common.h"
Data Structures | |
struct | HID_MinMax_t |
Структура элемента репорта парсера HID для минимума и максимума. More... | |
struct | HID_Unit_t |
Структура элемента репорта юнита для парсера HID. More... | |
struct | HID_Usage_t |
Структура элемента использования для парсера репорта HID. More... | |
struct | HID_CollectionPath_t |
Структура элемента пути коллекции парсера репорта HID. More... | |
struct | HID_ReportItem_Attributes_t |
Структура элемента атрибутов парсера репорта HID. More... | |
struct | HID_ReportItem_t |
Структура элемента подробной информации парсера репорта HID. More... | |
struct | HID_ReportSizeInfo_t |
Структура размера парсера репорта HID. More... | |
struct | HID_ReportInfo_t |
Структура состояния парсера HID. More... | |
Defines | |
#define | HID_STATETABLE_STACK_DEPTH 2 |
#define | HID_USAGE_STACK_DEPTH 8 |
#define | HID_MAX_COLLECTIONS 10 |
#define | HID_MAX_REPORTITEMS 20 |
#define | HID_MAX_REPORT_IDS 10 |
#define | HID_ALIGN_DATA(ReportItem, Type) ((Type)(ReportItem->Value << ((8 * sizeof(Type)) - ReportItem->Attributes.BitSize))) |
Enumerations | |
enum | HID_Parse_ErrorCodes_t { HID_PARSE_Successful = 0, HID_PARSE_HIDStackOverflow = 1, HID_PARSE_HIDStackUnderflow = 2, HID_PARSE_InsufficientReportItems = 3, HID_PARSE_UnexpectedEndCollection = 4, HID_PARSE_InsufficientCollectionPaths = 5, HID_PARSE_UsageListOverflow = 6, HID_PARSE_InsufficientReportIDItems = 7, HID_PARSE_NoUnfilteredReportItems = 8 } |
Functions | |
uint8_t | USB_ProcessHIDReport (const uint8_t *ReportData, uint16_t ReportSize, HID_ReportInfo_t *const ParserData) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3) |
bool | USB_GetHIDReportItemInfo (const 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) |
uint16_t | USB_GetHIDReportSize (HID_ReportInfo_t *const ParserData, const uint8_t ReportID, const uint8_t ReportType) ATTR_CONST ATTR_NON_NULL_PTR_ARG(1) |
bool | CALLBACK_HIDParser_FilterHIDReportItem (HID_ReportItem_t *const CurrentItem) |
Этот файл позволяет просто делать парсинг сложных дескрипторов репорта HID, которые описывают данные, которые устройство HID передает хосту. Это также предоставляет простое API для распаковки и обработки элементов данных внутри репорта HID, отправляемого от подключенного устройства HID.