---
title: IOHIDEventService
framework: hiddriverkit
role: symbol
role_heading: Class
path: hiddriverkit/iohideventservice
---

# IOHIDEventService

The base class for implementing a device or operating system service that dispatches events to the system.

## Declaration

```occ
class IOHIDEventService;
```

## Overview

Overview An IOHIDEventService object receives data from a device and generates events for the operating system to handle. Typically, you implement an event service by subclassing IOUserHIDEventService, but you may also subclass IOHIDEventService directly if you want to parse input reports yourself. In both cases, use the methods of this class to send events to the operating system, which dispatches those events to relevant apps.

## Topics

### Dispatching Events

- [dispatchKeyboardEvent](hiddriverkit/iohideventservice/dispatchkeyboardevent.md)
- [dispatchRelativePointerEvent](hiddriverkit/iohideventservice/dispatchrelativepointerevent.md)
- [dispatchAbsolutePointerEvent](hiddriverkit/iohideventservice/dispatchabsolutepointerevent.md)
- [dispatchDigitizerStylusEvent](hiddriverkit/iohideventservice/dispatchdigitizerstylusevent.md)
- [dispatchDigitizerTouchEvent](hiddriverkit/iohideventservice/dispatchdigitizertouchevent.md)
- [dispatchRelativeScrollWheelEvent](hiddriverkit/iohideventservice/dispatchrelativescrollwheelevent.md)
- [dispatchEvent](hiddriverkit/iohideventservice/dispatchevent.md)
- [IOHIDKeyboardEventOptions](hiddriverkit/iohidkeyboardeventoptions.md)
- [IOHIDPointerEventOptions](hiddriverkit/iohidpointereventoptions.md)
- [IOHIDScrollEventOptions](hiddriverkit/iohidscrolleventoptions.md)

### Configuring the LED Lights

- [SetLED](hiddriverkit/iohideventservice/setled.md)

### Instance Methods

- [SetLEDState](hiddriverkit/iohideventservice/setledstate.md)
- [SetProperties](hiddriverkit/iohideventservice/setproperties.md)
- [Start](hiddriverkit/iohideventservice/start.md)
- [Stop](hiddriverkit/iohideventservice/stop.md)
- [free](hiddriverkit/iohideventservice/free.md)
- [handleCopyMatchingEvent](hiddriverkit/iohideventservice/handlecopymatchingevent.md)
- [init](hiddriverkit/iohideventservice/init.md)

## Relationships

### Inherits From

- [IOService](driverkit/ioservice.md)

### Inherited By

- [IOUserHIDEventService](hiddriverkit/iouserhideventservice.md)

## See Also

### Driver Interfaces

- [com.apple.developer.driverkit.family.hid.eventservice](bundleresources/entitlements/com.apple.developer.driverkit.family.hid.eventservice.md)
- [IOUserHIDEventDriver](hiddriverkit/iouserhideventdriver.md)
- [IOUserHIDEventService](hiddriverkit/iouserhideventservice.md)
