---
title: IOHIDManagerSetDeviceMatching
framework: IOKit
role: symbol
role_heading: Function
platforms: [Mac Catalyst 13.1+, macOS 10.5+]
path: iokit/1438371-iohidmanagersetdevicematching
---

# IOHIDManagerSetDeviceMatching

Sets matching criteria for device enumeration.

## Declaration

```occ
void IOHIDManagerSetDeviceMatching(IOHIDManagerRef manager, CFDictionaryRef matching);
```

## Parameters

- `manager`: Reference to an IOHIDManager.
- `matching`: CFDictionaryRef containg device matching criteria.

## Discussion

Discussion Matching keys are prefixed by kIOHIDDevice and declared in <IOKit/hid/IOHIDKeys.h>. Passing a NULL dictionary will result in all devices being enumerated. Any subsequent calls will cause the hid manager to release previously enumerated devices and restart the enuerate process using the revised criteria. If interested in multiple, specific device classes, please defer to using IOHIDManagerSetDeviceMatchingMultiple.

## See Also

### Miscellaneous

- [IOHIDManagerClose](iokit/1438405-iohidmanagerclose.md)
- [IOHIDManagerCopyDevices](iokit/1438391-iohidmanagercopydevices.md)
- [IOHIDManagerCreate](iokit/1438383-iohidmanagercreate.md)
- [IOHIDManagerGetProperty](iokit/1438403-iohidmanagergetproperty.md)
- [IOHIDManagerGetTypeID](iokit/1438375-iohidmanagergettypeid.md)
- [IOHIDManagerOpen](iokit/1438369-iohidmanageropen.md)
- [IOHIDManagerRegisterDeviceMatchingCallback](iokit/1438399-iohidmanagerregisterdevicematchi.md)
- [IOHIDManagerRegisterDeviceRemovalCallback](iokit/1438376-iohidmanagerregisterdeviceremova.md)
- [IOHIDManagerRegisterInputReportCallback](iokit/1438397-iohidmanagerregisterinputreportc.md)
- [IOHIDManagerRegisterInputValueCallback](iokit/1438367-iohidmanagerregisterinputvalueca.md)
- [IOHIDManagerSaveToPropertyDomain](iokit/1438395-iohidmanagersavetopropertydomain.md)
- [IOHIDManagerScheduleWithRunLoop](iokit/1438409-iohidmanagerschedulewithrunloop.md)
- [IOHIDManagerSetDeviceMatchingMultiple](iokit/1438387-iohidmanagersetdevicematchingmul.md)
- [IOHIDManagerSetInputValueMatching](iokit/1438389-iohidmanagersetinputvaluematchin.md)
- [IOHIDManagerSetInputValueMatchingMultiple](iokit/1438379-iohidmanagersetinputvaluematchin.md)
- [IOHIDManagerSetProperty](iokit/1438401-iohidmanagersetproperty.md)
- [IOHIDManagerUnscheduleFromRunLoop](iokit/1438378-iohidmanagerunschedulefromrunloo.md)
