---
title: GetReport
framework: hiddriverkit
role: symbol
role_heading: Instance Method
path: hiddriverkit/iohidinterface/getreport
---

# GetReport

Retrieves a new input report from the HID device.

## Declaration

```occ
virtual kern_return_t GetReport(IOMemoryDescriptor *report, IOHIDReportType reportType, uint32_t reportID, IOOptionBits options);
```

## Parameters

- `report`: The memory descriptor in which to store the report data. On output, this descriptor contains the bytes of the report.
- `reportType`: The type of report you want.
- `reportID`: The unique identifier for the report.
- `options`: Options to specify when requesting the report.

## Return Value

Return Value kIOReturnSuccess on success, or another value if an error occurs. See Error Codes.

## Discussion

Discussion This method requests the report by calling the getReport method of its associated IOHIDDevice object. When getting the report from the device, this method combines the reportID and options together, with the reportID occupying the lower 8 bits of a 32-bit integer, and the options occupying the upper 24 bits.

## See Also

### Getting and Setting Input Reports

- [ReportAvailable](hiddriverkit/iohidinterface/reportavailable.md)
- [AddReportToPool](hiddriverkit/iohidinterface/addreporttopool.md)
- [processReport](hiddriverkit/iohidinterface/processreport.md)
- [SetReport](hiddriverkit/iohidinterface/setreport.md)
