ColorSync Manager
Overview
The ColorSync Manager is the API for ColorSync, a platform-independent color management system from Apple. ColorSync provides essential services for fast, consistent, and accurate color calibration, proofing, and reproduction using input, output, and display devices. ColorSync also provides an interface to system-wide color management settings that allows users to save color settings for specific jobs and switch between settings.
You need this reference if your software product performs color drawing, printing, or calculation, or if your peripheral device supports color. You also need this reference if you are creating a color management module (CMM)—a component that implements color-matching, color-conversion, and gamut-checking services.
The Color Picker Manager, documented separately, provides a standard user interface for soliciting color choices.
Carbon supports the majority of the ColorSync Manager programming interface. However, ColorSync 1.0 compatibility calls such as CWNewColorWorld, GetProfile, and SetProfile are not supported.
Nor does Carbon support ColorSync functions used for color management modules (CMMs). These functions aren't supported because macOS uses Bundle Services to implement CMMs.
Some applications use the Component Manager to determine what CMMs are available. You cannot use the Component Manager for this purpose in macOS. Apple has, however, provided the function CMIterateCMMInfo to query for available CMMs.
Topics
Working With Universal Procedure Pointers
NewCMBitmapCallBackUPPDisposeCMBitmapCallBackUPPInvokeCMBitmapCallBackUPPNewCMConcatCallBackUPPDisposeCMConcatCallBackUPPInvokeCMConcatCallBackUPPNewCMFlattenUPPDisposeCMFlattenUPPInvokeCMFlattenUPPNewCMMIterateUPPDisposeCMMIterateUPPInvokeCMMIterateUPPNewCMProfileIterateUPPDisposeCMProfileIterateUPPInvokeCMProfileIterateUPP
Callbacks
Data Types
CM2ProfileCMDeviceInfoCMDeviceProfileArrayCMDeviceScopeCMErrorCMFlattenUPPCMMultiFunctLutA2BTypeCMMultiFunctLutTypeCMXYZColorCMXYZComponent
Constants
Abstract Color Space ConstantsChannel Encoding FormatColor Packing for Color SpacesColor Space SignaturesColor Space MasksCurrent Device VersionsCurrent Info VersionsCurrent Major Version MaskData Transfer CommandsData Type Element ValuesDefault CMM SignatureDefault IDsDevice Attribute Values for Version 2.x ProfilesCMDeviceClassDevice and Media AttributesDevice StatesElement Tags and Signatures for Version 1.0 ProfilesEmbedded Profile FlagsFlag Mask Definitions for Version 2.x ProfilesICC Profile VersionsIlluminant Measurement EndocingsMagic Cookie NumberMaximum Path SizeMeasurement FlaresMeasurement GeometriesParametric TypesPlatform Enumeration ValuesProfile Iteration ValuesProfile Location SizesPostScript Data FormatsProfile Access ProceduresProfile ClassesProfile Concatenation ValuesProfile Iteration ConstantsProfile Location TypePublic TagsPublic Type SignaturesQuality Flag Values for Version 2.x ProfilesRendering Intent Values for Version 2.x ProfilesScreen Encoding TagsSpot Function ValuesStandard ObserverTag Type InformationTechnology Tag DescriptionsUse TypesVideo Card Gamma Storage TypesVideo Card Gamma TagsVideo Card Gamma Signatures
Result Codes
cmProfileErrorcmMethodErrorcmMethodNotFoundcmProfileNotFoundcmProfilesIdenticalcmCantConcatenateErrorcmCantXYZcmCantDeleteProfilecmUnsupportedDataTypecmNoCurrentProfilecmElementTagNotFoundcmIndexRangeErrcmCantDeleteElementcmFatalProfileErrcmInvalidProfilecmInvalidProfileLocationcmInvalidSearchcmSearchErrorcmErrIncompatibleProfilecmInvalidColorSpacecmInvalidSrcMapcmInvalidDstMapcmNoGDevicesErrorcmInvalidProfileCommentcmRangeOverFlowcmCantCopyModifiedV1ProfilecmNamedColorNotFoundcmCantGamutCheckErrorcmDeviceDBNotFoundErrcmDeviceAlreadyRegisteredcmDeviceNotRegisteredcmDeviceProfilesNotFoundcmInternalCFErr