Esempio n. 1
0
static size_t
getUsbHidReportSize (const GioHidReportItemsData *items, unsigned char report) {
  size_t size;
  if (usbHidGetReportSize(items->address, items->size, report, &size)) return size;
  errno = ENOSYS;
  return 0;
}
Esempio n. 2
0
static void
getHidReportSizes (const ReportEntry *table) {
  unsigned char *items;
  ssize_t length = usbHidGetItems(usb->device, usb->definition.interface, 0,
                                  &items, HT_HID_REPORT_TIMEOUT);

  if (items) {
    const ReportEntry *report = table;

    while (report->number) {
      usbHidGetReportSize(items, length, report->number, report->size);
      report += 1;
    }

    free(items);
  }
}