CoreHID lets your macOS app act as a client of a physical or virtual HID-compatible peripheral, accessing human interface devices through the IOKit hidsystem. Use HIDDeviceManager to discover devices and HIDDeviceClient to communicate with one, working with its HIDElement and HIDElementCollection values, HIDReportID and HIDReportType, and HIDUsage to read and write reports. You can also create a software peripheral with HIDVirtualDevice and respond to host requests through HIDVirtualDeviceDelegate, while observing element changes via HIDElementUpdate and handling failures with HIDDeviceError.
Device Discovery and Communication 2
The actors that find HID peripherals and exchange reports with them.
- AcHIDDeviceManagermacOS 15+A helper for discovering human interface devices (HID) connected to the system.
- AcHIDDeviceClientmacOS 15+A client of a physical or virtual HID compatible peripheral.
Virtual Devices 2
Types for creating a software HID peripheral and responding to host requests.
- AcHIDVirtualDevicemacOS 15+A virtual service to emulate a HID device connected to the system.
- PrHIDVirtualDeviceDelegatemacOS 15+The delegate to receive notifications for a virtual HID device.
Device Elements 3
Values that describe a device's input and output elements and their organization.
- StHIDElementmacOS 15+A representation of an item from a report descriptor for a HID device.
- StHIDElementCollectionmacOS 15+A collection of items from a report descriptor for a HID device.
- PrHIDElementUpdatemacOS 15+A base protocol for element update types.
Reports 2
Identifiers and kinds that describe the reports exchanged with a device.
- StHIDReportIDmacOS 15+A type to represent the report IDs of HID reports.
- EnHIDReportTypemacOS 15+Types for HID reports.
Device Metadata 3
Enumerations describing a device's usage, transport, and localization.
- EnHIDUsagemacOS 15+A type to represent HID usage pages.
- EnHIDDeviceTransportmacOS 15+Common transport types that transmit data to or from a HID device.
- EnHIDDeviceLocalizationCodemacOS 15+The localization codes that some HID devices declare to specify conformance to a certain format or language.
Errors 1
The error type reported when a HID operation fails.
- EnHIDDeviceErrormacOS 15+Errors that the framework can throw.