hid_read_timeout method

int hid_read_timeout(
  1. Pointer<hid_device> dev,
  2. Pointer<UnsignedChar> data,
  3. int length,
  4. int milliseconds,
)

@brief Read an Input report from a HID device with timeout.

Input reports are returned to the host through the INTERRUPT IN endpoint. The first byte will contain the Report number if the device uses numbered reports.

@ingroup API @param dev A device handle returned from hid_open(). @param data A buffer to put the read data into. @param length The number of bytes to read. For devices with multiple reports, make sure to read an extra byte for the report number. @param milliseconds timeout in milliseconds or -1 for blocking wait.

@returns This function returns the actual number of bytes read and -1 on error. Call hid_error(dev) to get the failure reason. If no packet was available to be read within the timeout period, this function returns 0.

Implementation

int hid_read_timeout(
  ffi.Pointer<hid_device> dev,
  ffi.Pointer<ffi.UnsignedChar> data,
  int length,
  int milliseconds,
) {
  return _hid_read_timeout(
    dev,
    data,
    length,
    milliseconds,
  );
}