---
title: IOCatalogue
framework: Kernel
role: symbol
role_heading: Class
platforms: [macOS 12.0+]
path: kernel/iocatalogue
---

# IOCatalogue

In-kernel database for IOKit driver personalities.

## Declaration

```occ
class IOCatalogue : OSObject
```

## Overview

Overview The IOCatalogue is a database which contains all IOKit driver personalities. IOService uses this resource when matching devices to their associated drivers.

## Topics

### Miscellaneous

- [addDrivers](kernel/iocatalogue/1811204-adddrivers.md)
- [findDrivers(IOService *, SInt32 *)](kernel/iocatalogue/1811225-finddrivers.md)
- [findDrivers(OSDictionary *, SInt32 *)](kernel/iocatalogue/1811242-finddrivers.md)
- [free](kernel/iocatalogue/1811255-free.md)
- [getGenerationCount](kernel/iocatalogue/1811265-getgenerationcount.md)
- [init](kernel/iocatalogue/1811279-init.md)
- [initialize](kernel/iocatalogue/1811287-initialize.md)
- [isModuleLoaded](kernel/iocatalogue/1811295-ismoduleloaded.md)
- [isModuleLoaded(const char *)](kernel/iocatalogue/1811303-ismoduleloaded.md)
- [isModuleLoaded(OSString *)](kernel/iocatalogue/1811312-ismoduleloaded.md)
- [moduleHasLoaded(const char *)](kernel/iocatalogue/1811319-modulehasloaded.md)
- [moduleHasLoaded(OSString *)](kernel/iocatalogue/1811324-modulehasloaded.md)
- [removeDrivers](kernel/iocatalogue/1811332-removedrivers.md)
- [reset](kernel/iocatalogue/1811342-reset.md)
- [resetAndAddDrivers](kernel/iocatalogue/1811349-resetandadddrivers.md)
- [serialize](kernel/iocatalogue/1811365-serialize.md)
- [startMatching](kernel/iocatalogue/1811371-startmatching.md)
- [terminateDrivers](kernel/iocatalogue/1811385-terminatedrivers.md)
- [terminateDriversForModule(const char *, bool)](kernel/iocatalogue/1811392-terminatedriversformodule.md)
- [terminateDriversForModule(OSString *, bool)](kernel/iocatalogue/1811401-terminatedriversformodule.md)
- [unloadModule](kernel/iocatalogue/1811417-unloadmodule.md)

### Instance Methods

- [addDrivers](kernel/iocatalogue/3753418-adddrivers.md)
- [addPersonality](kernel/iocatalogue/3753419-addpersonality.md)
- [arrayForPersonality](kernel/iocatalogue/3753420-arrayforpersonality.md)
- [exchangeDrivers](kernel/iocatalogue/3943374-exchangedrivers.md)
- [findDrivers](kernel/iocatalogue/3753421-finddrivers.md)
- [findDrivers](kernel/iocatalogue/3753422-finddrivers.md)
- [free](kernel/iocatalogue/3753423-free.md)
- [getGenerationCount](kernel/iocatalogue/3753424-getgenerationcount.md)
- [getMetaClass](kernel/iocatalogue/3753425-getmetaclass.md)
- [init](kernel/iocatalogue/3753426-init.md)
- [isModuleLoaded](kernel/iocatalogue/3753428-ismoduleloaded.md)
- [isModuleLoaded](kernel/iocatalogue/3753429-ismoduleloaded.md)
- [moduleHasLoaded](kernel/iocatalogue/3753430-modulehasloaded.md)
- [moduleHasLoaded](kernel/iocatalogue/3753431-modulehasloaded.md)
- [personalityIsBoot](kernel/iocatalogue/3857659-personalityisboot.md)
- [removeDrivers](kernel/iocatalogue/3753432-removedrivers.md)
- [reset](kernel/iocatalogue/3753433-reset.md)
- [resetAndAddDrivers](kernel/iocatalogue/3753434-resetandadddrivers.md)
- [serialize](kernel/iocatalogue/3753435-serialize.md)
- [serializeData](kernel/iocatalogue/3753436-serializedata.md)
- [startMatching](kernel/iocatalogue/3753437-startmatching.md)
- [startMatching](kernel/iocatalogue/3753438-startmatching.md)
- [terminateDrivers](kernel/iocatalogue/3753439-terminatedrivers.md)
- [terminateDriversForModule](kernel/iocatalogue/4048323-terminatedriversformodule.md)
- [terminateDriversForModule](kernel/iocatalogue/4048324-terminatedriversformodule.md)
- [unloadModule](kernel/iocatalogue/3753442-unloadmodule.md)

### Type Methods

- [initialize](kernel/iocatalogue/3753427-initialize.md)

## Relationships

### Inherits From

- [OSObject](kernel/osobject.md)
