---
title: Color devices
framework: colorsync
role: collectionGroup
role_heading: API Collection
path: colorsync/color-devices
---

# Color devices

Manage the color profiles assigned to displays, printers, scanners, and cameras.

## Overview

Overview ColorSync tracks the color devices attached to the system and the profiles assigned to each. Register a device, enumerate its profiles, and read or set the factory and custom profiles that describe how it reproduces color. Displays are a color device too: you can find a display’s profile from its display ID and read its gamma and transfer tables. Device profiles are themselves ColorSyncProfile objects. See Color profiles.

## Topics

### Registering and enumerating devices

- [ColorSyncDeviceCopyDeviceInfo(_:_:)](colorsync/colorsyncdevicecopydeviceinfo(_:_:).md)
- [ColorSyncDeviceProfileIterateCallback](colorsync/colorsyncdeviceprofileiteratecallback.md)
- [ColorSyncDeviceSetCustomProfiles(_:_:_:)](colorsync/colorsyncdevicesetcustomprofiles(_:_:_:).md)
- [ColorSyncIterateDeviceProfiles(_:_:)](colorsync/colorsynciteratedeviceprofiles(_:_:).md)
- [ColorSyncProfileCreateDeviceProfile(_:_:_:)](colorsync/colorsyncprofilecreatedeviceprofile(_:_:_:).md)
- [ColorSyncRegisterDevice(_:_:_:)](colorsync/colorsyncregisterdevice(_:_:_:).md)
- [ColorSyncUnregisterDevice(_:_:)](colorsync/colorsyncunregisterdevice(_:_:).md)

### Identifying device classes

- [kColorSyncCameraDeviceClass](colorsync/kcolorsynccameradeviceclass.md)
- [kColorSyncDeviceClass](colorsync/kcolorsyncdeviceclass.md)
- [kColorSyncDisplayDeviceClass](colorsync/kcolorsyncdisplaydeviceclass.md)
- [kColorSyncPrinterDeviceClass](colorsync/kcolorsyncprinterdeviceclass.md)
- [kColorSyncScannerDeviceClass](colorsync/kcolorsyncscannerdeviceclass.md)

### Describing devices

- [kColorSyncDeviceID](colorsync/kcolorsyncdeviceid.md)
- [kColorSyncDeviceDescription](colorsync/kcolorsyncdevicedescription.md)
- [kColorSyncDeviceDescriptions](colorsync/kcolorsyncdevicedescriptions.md)
- [kColorSyncDeviceModeDescription](colorsync/kcolorsyncdevicemodedescription.md)
- [kColorSyncDeviceModeDescriptions](colorsync/kcolorsyncdevicemodedescriptions.md)
- [kColorSyncDeviceHostScope](colorsync/kcolorsyncdevicehostscope.md)
- [kColorSyncDeviceUserScope](colorsync/kcolorsyncdeviceuserscope.md)

### Describing device profiles

- [kColorSyncDeviceDefaultProfileID](colorsync/kcolorsyncdevicedefaultprofileid.md)
- [kColorSyncDeviceProfileID](colorsync/kcolorsyncdeviceprofileid.md)
- [kColorSyncDeviceProfileURL](colorsync/kcolorsyncdeviceprofileurl.md)
- [kColorSyncDeviceProfileIsCurrent](colorsync/kcolorsyncdeviceprofileiscurrent.md)
- [kColorSyncDeviceProfileIsDefault](colorsync/kcolorsyncdeviceprofileisdefault.md)
- [kColorSyncDeviceProfileIsFactory](colorsync/kcolorsyncdeviceprofileisfactory.md)
- [kColorSyncProfileHostScope](colorsync/kcolorsyncprofilehostscope.md)
- [kColorSyncProfileUserScope](colorsync/kcolorsyncprofileuserscope.md)

### Accessing custom and factory profiles

- [kColorSyncCustomProfiles](colorsync/kcolorsynccustomprofiles.md)
- [kColorSyncFactoryProfiles](colorsync/kcolorsyncfactoryprofiles.md)
- [kColorSyncDoNotSubstituteProfiles](colorsync/kcolorsyncdonotsubstituteprofiles.md)

### Observing device notifications

- [kColorSyncDeviceProfilesNotification](colorsync/kcolorsyncdeviceprofilesnotification.md)
- [kColorSyncDeviceRegisteredNotification](colorsync/kcolorsyncdeviceregisterednotification.md)
- [kColorSyncDeviceUnregisteredNotification](colorsync/kcolorsyncdeviceunregisterednotification.md)
- [kColorSyncDisplayDeviceProfilesNotification](colorsync/kcolorsyncdisplaydeviceprofilesnotification.md)
- [kColorSyncRegistrationUpdateWindowServer](colorsync/kcolorsyncregistrationupdatewindowserver.md)

### Reading display gamma and profiles

- [ColorSyncProfileCreateWithDisplayID(_:)](colorsync/colorsyncprofilecreatewithdisplayid(_:).md)
- [ColorSyncProfileEstimateGammaWithDisplayID(_:_:)](colorsync/colorsyncprofileestimategammawithdisplayid(_:_:).md)
- [ColorSyncProfileGetDisplayTransferFormulaFromVCGT(_:_:_:_:_:_:_:_:_:_:)](colorsync/colorsyncprofilegetdisplaytransferformulafromvcgt(_:_:_:_:_:_:_:_:_:_:).md)
- [ColorSyncProfileCreateDisplayTransferTablesFromVCGT(_:_:)](colorsync/colorsyncprofilecreatedisplaytransfertablesfromvcgt(_:_:).md)

### Converting display identifiers

- [CGDisplayCreateUUIDFromDisplayID(_:)](colorsync/cgdisplaycreateuuidfromdisplayid(_:).md)
- [CGDisplayGetDisplayIDFromUUID(_:)](colorsync/cgdisplaygetdisplayidfromuuid(_:).md)

## See Also

### System color management

- [Color management modules](colorsync/color-management-modules.md)
