---
title: IOHIDInterface
framework: kernel
role: symbol
role_heading: Class
path: kernel/iohidinterface
---

# IOHIDInterface

IOService represents an device or OS service in IOKit and DriverKit.

## Declaration

```occ
class IOHIDInterface : IOService
```

## Overview

Overview IOKit provides driver lifecycle management through the IOService APIs.  Drivers and devices are represented as subclasses of IOService.

## Topics

### Miscellaneous

- [free](kernel/iohidinterface/1812725-free.md)
- [init](kernel/iohidinterface/1812739-init.md)
- [matchPropertyTable](kernel/iohidinterface/1812756-matchpropertytable.md)
- [start](kernel/iohidinterface/1812781-start.md)

### Callbacks

- [CompletionAction](kernel/iohidinterface/completionaction.md)
- [InterruptReportAction](kernel/iohidinterface/interruptreportaction.md)
- [IOHIDInterface::CompletionAction](kernel/iohidinterface/iohidinterface_completionaction.md)
- [IOHIDInterface::InterruptReportAction](kernel/iohidinterface/iohidinterface_interruptreportaction.md)

### Instance Variables

- [_reserved](kernel/iohidinterface/reserved.md)

### Instance Methods

- [AddReportToPool](kernel/iohidinterface/3294546-addreporttopool.md)
- [AddReportToPool_Impl](kernel/iohidinterface/3294547-addreporttopool_impl.md)
- [Close](kernel/iohidinterface/3294549-close.md)
- [Close_Impl](kernel/iohidinterface/3294550-close_impl.md)
- [Dispatch](kernel/iohidinterface/3294552-dispatch.md)
- [GetElementValues](kernel/iohidinterface/3294553-getelementvalues.md)
- [GetElementValues_Impl](kernel/iohidinterface/3294554-getelementvalues_impl.md)
- [GetReport](kernel/iohidinterface/3294556-getreport.md)
- [GetReport_Impl](kernel/iohidinterface/3294557-getreport_impl.md)
- [GetSupportedCookies](kernel/iohidinterface/3294559-getsupportedcookies.md)
- [GetSupportedCookies_Impl](kernel/iohidinterface/3294560-getsupportedcookies_impl.md)
- [HandleReportPrivate](kernel/iohidinterface/3294562-handlereportprivate.md)
- [Open](kernel/iohidinterface/3294563-open.md)
- [Open_Impl](kernel/iohidinterface/3294564-open_impl.md)
- [ReportAvailable](kernel/iohidinterface/3294566-reportavailable.md)
- [SendDebugBuffer](kernel/iohidinterface/3787569-senddebugbuffer.md)
- [SendDebugBuffer_Impl](kernel/iohidinterface/3787570-senddebugbuffer_impl.md)
- [SetElementValues](kernel/iohidinterface/3294568-setelementvalues.md)
- [SetElementValues_Impl](kernel/iohidinterface/3294569-setelementvalues_impl.md)
- [SetReport](kernel/iohidinterface/3294571-setreport.md)
- [SetReport_Impl](kernel/iohidinterface/3294572-setreport_impl.md)
- [addReportToPoolGated](kernel/iohidinterface/3294574-addreporttopoolgated.md)
- [close](kernel/iohidinterface/1545711-close.md)
- [createElements](kernel/iohidinterface/3294576-createelements.md)
- [createMatchingElements](kernel/iohidinterface/1545731-creatematchingelements.md)
- [free](hiddriverkit/iohidinterface/free.md)
- [getCountryCode](kernel/iohidinterface/1545717-getcountrycode.md)
- [getLocationID](kernel/iohidinterface/1545716-getlocationid.md)
- [getManufacturer](kernel/iohidinterface/1545718-getmanufacturer.md)
- [getMaxReportSize](kernel/iohidinterface/1545712-getmaxreportsize.md)
- [getMetaClass](kernel/iohidinterface/1545732-getmetaclass.md)
- [getProduct](kernel/iohidinterface/1545707-getproduct.md)
- [getProductID](kernel/iohidinterface/1545701-getproductid.md)
- [getReport](kernel/iohidinterface/1545729-getreport.md)
- [getReport](kernel/iohidinterface/3516593-getreport.md)
- [getReportInterval](kernel/iohidinterface/1545710-getreportinterval.md)
- [getSerialNumber](kernel/iohidinterface/1545720-getserialnumber.md)
- [getTransport](kernel/iohidinterface/1545700-gettransport.md)
- [getVendorID](kernel/iohidinterface/1545713-getvendorid.md)
- [getVendorIDSource](kernel/iohidinterface/1545703-getvendoridsource.md)
- [getVersion](kernel/iohidinterface/1545705-getversion.md)
- [handleReport](kernel/iohidinterface/1545706-handlereport.md)
- [handleReportGated](kernel/iohidinterface/3294577-handlereportgated.md)
- [init](kernel/iohidinterface/1545733-init.md)
- [matchPropertyTable](kernel/iohidinterface/1545727-matchpropertytable.md)
- [message](kernel/iohidinterface/1545719-message.md)
- [open](kernel/iohidinterface/1545722-open.md)
- [openGated](kernel/iohidinterface/3294578-opengated.md)
- [serializeDebugState](kernel/iohidinterface/3787572-serializedebugstate.md)
- [setProperty](kernel/iohidinterface/3516594-setproperty.md)
- [setReport](kernel/iohidinterface/1545724-setreport.md)
- [setReport](kernel/iohidinterface/3516595-setreport.md)
- [start](kernel/iohidinterface/1545702-start.md)
- [stop](kernel/iohidinterface/1545726-stop.md)

### Type Methods

- [AddReportToPool_Invoke](kernel/iohidinterface/3294548-addreporttopool_invoke.md)
- [Close_Invoke](kernel/iohidinterface/3294551-close_invoke.md)
- [GetElementValues_Invoke](kernel/iohidinterface/3294555-getelementvalues_invoke.md)
- [GetReport_Invoke](kernel/iohidinterface/3294558-getreport_invoke.md)
- [GetSupportedCookies_Invoke](kernel/iohidinterface/3294561-getsupportedcookies_invoke.md)
- [Open_Invoke](kernel/iohidinterface/3294565-open_invoke.md)
- [ReportAvailable_Invoke](kernel/iohidinterface/4520007-reportavailable_invoke.md)
- [ReportAvailable_Invoke](kernel/iohidinterface/4520008-reportavailable_invoke.md)
- [SendDebugBuffer_Invoke](kernel/iohidinterface/3787571-senddebugbuffer_invoke.md)
- [SetElementValues_Invoke](kernel/iohidinterface/3294570-setelementvalues_invoke.md)
- [SetReport_Invoke](kernel/iohidinterface/3294573-setreport_invoke.md)
- [withElements](kernel/iohidinterface/1545728-withelements.md)

## Relationships

### Inherits From

- [IOService](kernel/ioservice.md)

## See Also

### IOKit

- [IOUSBDevice](kernel/iousbdevice.md)
- [IOUSBInterface](kernel/iousbinterface.md)
- [IOOFPathMatching](kernel/1575304-ioofpathmatching.md)
- [IOUSBHostInterface](kernel/iousbhostinterface.md)
- [IOUSBHostDevice](kernel/iousbhostdevice.md)
- [IOUSBHostPipe](kernel/iousbhostpipe.md)
- [IOUSBHostIOSource](kernel/iousbhostiosource.md)
- [IOUSBHostStream](kernel/iousbhoststream.md)
- [IOHIDEventDriver](kernel/iohideventdriver.md)
- [IOHIDEventService](kernel/iohideventservice.md)
- [IOHIDSystem](kernel/iohidsystem.md)
- [IOHIKeyboardMapper](kernel/iohikeyboardmapper.md)
- [IOHIKeyboard](kernel/iohikeyboard.md)
- [IOHIPointing](kernel/iohipointing.md)
- [IOHIDevice](kernel/iohidevice.md)
- [IOHIDElement](kernel/iohidelement.md)
- [IOHIDWorkLoop](kernel/iohidworkloop.md)
- [IOEthernetInterface](kernel/ioethernetinterface.md)
- [IOEthernetController](kernel/ioethernetcontroller.md)
