hiddescriptor.h File Reference

USB HID report descriptor and report data parser. More...

#include <stdint.h>
#include <adt/list.h>
#include <usb/hid/hid_report_items.h>
#include <usb/hid/hidpath.h>
#include <usb/hid/hidtypes.h>

Go to the source code of this file.

Functions

void usb_hid_descriptor_print (usb_hid_report_t *report)
 Prints content of given report descriptor in human readable format.
void usb_hid_descriptor_print_list (link_t *head)
 Prints content of given list of report items.
void usb_hid_free_report (usb_hid_report_t *report)
 Frees the HID report descriptor parser structure.
void usb_hid_free_report_list (link_t *head)
 Releases whole linked list of report items.
int usb_hid_parse_report_descriptor (usb_hid_report_t *report, const uint8_t *data, size_t size)
 Parse HID report descriptor.
int usb_hid_report_append_fields (usb_hid_report_t *report, usb_hid_report_item_t *report_item)
usb_hid_report_description_tusb_hid_report_find_description (const usb_hid_report_t *report, uint8_t report_id, usb_hid_report_type_t type)
 Finds description of report with given report_id and of given type in opaque report structure.
int usb_hid_report_init (usb_hid_report_t *report)
 Initialize the report descriptor parser structure.
usb_hid_report_item_tusb_hid_report_item_clone (const usb_hid_report_item_t *item)
 Clones given state table.
int usb_hid_report_parse_global_tag (uint8_t tag, const uint8_t *data, size_t item_size, usb_hid_report_item_t *report_item, usb_hid_report_path_t *usage_path)
 Parse global tags of report descriptor.
int usb_hid_report_parse_local_tag (uint8_t tag, const uint8_t *data, size_t item_size, usb_hid_report_item_t *report_item, usb_hid_report_path_t *usage_path)
 Parse local tags of report descriptor.
int usb_hid_report_parse_main_tag (uint8_t tag, const uint8_t *data, size_t item_size, usb_hid_report_item_t *report_item, usb_hid_report_path_t *usage_path)
 Parse main tags of report descriptor.
int usb_hid_report_parse_tag (uint8_t tag, uint8_t class, const uint8_t *data, size_t item_size, usb_hid_report_item_t *report_item, usb_hid_report_path_t *usage_path)
 Parse one tag of the report descriptor.
usb_hid_report_path_tusb_hid_report_path_try_insert (usb_hid_report_t *report, usb_hid_report_path_t *cmp_path)
 Checks if given collection path is already present in report structure and inserts it if not.
void usb_hid_report_reset_local_items (usb_hid_report_item_t *report_item)
 Reset all local items in given state table.
uint32_t usb_hid_report_tag_data_uint32 (const uint8_t *data, size_t size)
 Converts raw data to uint32 (thats the maximum length of short item data).


Detailed Description

USB HID report descriptor and report data parser.

Definition in file hiddescriptor.h.


Generated on Thu Jun 2 07:45:54 2011 for HelenOS/USB by  doxygen 1.4.7