sdlHidGetFeatureReport function

int sdlHidGetFeatureReport(
  1. Pointer<SdlHidDevice> dev,
  2. Pointer<Uint8> data,
  3. int length
)

Get a feature report from a HID device.

Set the first byte of data to the Report ID of the report to be read. Make sure to allow space for this extra byte in data. Upon return, the first byte will still contain the Report ID, and the report data will start in data1.

\param dev a device handle returned from SDL_hid_open(). \param data a buffer to put the read data into, including the Report ID. Set the first byte of data to the Report ID of the report to be read, or set it to zero if your device does not use numbered reports. \param length the number of bytes to read, including an extra byte for the report ID. The buffer can be longer than the actual report. \returns the number of bytes read plus one for the report ID (which is still in the first byte), or -1 on on failure; call SDL_GetError() for more information.

\since This function is available since SDL 3.1.3.

extern SDL_DECLSPEC int SDLCALL SDL_hid_get_feature_report(SDL_hid_device *dev, unsigned char *data, size_t length)

Implementation

int sdlHidGetFeatureReport(
    Pointer<SdlHidDevice> dev, Pointer<Uint8> data, int length) {
  final sdlHidGetFeatureReportLookupFunction = libSdl3.lookupFunction<
      Int32 Function(
          Pointer<SdlHidDevice> dev, Pointer<Uint8> data, Uint32 length),
      int Function(Pointer<SdlHidDevice> dev, Pointer<Uint8> data,
          int length)>('SDL_hid_get_feature_report');
  return sdlHidGetFeatureReportLookupFunction(dev, data, length);
}