---
name: "SDL_hid_get_input_report"
section: "3"
platform: "linux"
package: "libsdl3-doc"
version: "3.2.10+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL_hid_get_input_report"
---

# SDL\_hid\_get\_input\_report(3)

Get an input report from a HID device.

## NAME

SDL\_hid\_get\_input\_report - Get an input report from a HID device.

## HEADER FILE

Defined in SDL3/SDL\_hidapi.h

## SYNOPSIS

```
#include "SDL3/SDL.h"
```

**int SDL\_hid\_get\_input\_report(SDL\_hid\_device \*dev, unsigned char \*data, size\_t length);**

## DESCRIPTION

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 data\[1\].

## FUNCTION PARAMETERS

- *dev*

  a device handle returned from  **SDL\_hid\_open** ().

- *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.

- *length*

  the number of bytes to read, including an extra byte for the report ID. The buffer can be longer than the actual report.

## RETURN VALUE

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.

## AVAILABILITY

This function is available since SDL 3.2.0.
