Carbon will support the majority of the ColorSync Manager programming interface. However, ColorSync 1.0 compatibility calls such as CWNewColorWorld, GetProfile, and SetProfile will not be supported.
Some applications use the Component Manager to determine what color management modules (CMMs) are available. You will not be able to use the Component Manager for this purpose in Mac OS X, but Apple will provide a new API to query for available CMMs. We are investigating the runtime model for CMMs; it is possible that CMM developers will have to rewrite their code to replace the Component Manager interface layer.
BeginMatching is defined only if OLDROUTINENAMES is defined during compile time. Additionally, it uses 1.0 profiles, which are no longer supported. Use NCMBeginMatching (along with 2.0 profiles) instead.This function was used only by CMMs wishing to support hardware acceleration. With the advent of PowerPC chips, it no longer provides performance benefits over software implementations.This function was used only by CMMs wishing to support hardware acceleration. With the advent of PowerPC chips, it no longer provides performance benefits over software implementations.CMBeginMatching uses 1.0 profiles to establish onscreen matching. These profiles will not be supported. Use NCMBeginMatching instead.CMCheckBitmap is an API to CMMs. Use CWCheckBitmap instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMCheckColors is an API to CMMs. Use CWCheckColors instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMCheckPixMap is an API to CMMs. Use CWCheckPixMap instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMConcatenateProfiles is an API for CMMs, and it uses 1.0 profiles. It will no longer be supported.CMConcatInit is an API to CMMs. Application developers should avoid calling CMMs directly, since they may or may not support a given API. To establish a color world using a set of profiles, use CWConcatColorWorld.ColorSync 1.0 profiles will no longer be supported, so CMConvertProfile2to1 has no utility.CMDeleteDeviceProfile is an API to the 1.0 Profile Responder component, which is no longer supported.CMDrawMatchedPicture uses 1.0 profiles to match the PICT data, and these profiles will no longer be supported. Use NCMDrawMatchedPicture, which uses 2.0 profiles.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertFixedXYZToXYZ.CMGetIndexedProfile is an API to the 1.0 Profile Responder component, which is no longer supported. Services for searching and indexing 2.0 profiles are supported via CMNewProfileSearch, CMSearchGetIndProfile, and other search routines.CMGetProfile is an API (for 1.0 profiles) to the Profile Responder component, which is no longer supported. Access to 2.0 profiles is supported via CMGetSystemProfile, CMOpenProfile, and the search routines.
CMGetProfileAdditionalDataOffset
CMGetProfileAdditionalDataOffset provides access to data within 1.0 profiles, and these profiles will no longer be supported.CMGetProfileName gets the name of 1.0 profiles, which will no longer be supported.
CMGetUnicodeProfileDescription
This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertHLSToRGB.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertHSVToRGB.This was the initialization routine for old style color worlds. Use NCMInit to create color worlds.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertLabToXYZ.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertLuvToXYZ.CMMatchBitmap is an API to CMMs. Use CWMatchBitMap instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMatchColors is an API to CMMs. Use CWMatchColors instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMatchPixMap is an API to CMMs. Use CWMatchPixMap instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMFlattenProfile is an API to CMMs. Use CMFlattenProfile instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetIndNamedColorValue is an API to CMMs. Use CMGetIndNamedColorValue instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetNamedColorIndex is an API to CMMs. Use CMGetNamedColorIndex instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetNamedColorInfo is an API to CMMs. Use CMGetNamedColorInfo instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetNamedColorName is an API to CMMs. Use CMGetNamedColorName instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetNamedColorValue is an API to CMMs. Use CMGetNamedColorValue instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetPS2ColorRendering is an API to CMMs; use CMGetPS2ColorRendering instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetPS2ColorRenderingIntent is an API to CMMs. Use CMGetPS2ColorRenderingIntent instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetPS2ColorRenderingVMSize is an API to CMMs; use CMGetPS2ColorRenderingVMSize instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMGetPS2ColorSpace is an API to CMMs. Use CMGetPS2ColorSpace instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMUnflattenProfile is an API to CMMs. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMMValidateProfile is an API to CMMs. Use CMValidateProfile instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.CMNewLinkProfile is an API to CMMs. Use CWNewLinkProfile instead. Application developers should avoid calling CMMs directly, since they may or may not support a given API.
CMProfileIdentifierFolderSearch
This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertRGBToGray.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertRGBToHLS.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertRGBToHSV.CMSetProfile is an API (for 1.0 profiles) to the Profile Responder component, which is no longer supported. Access to 2.0 profiles is supported via CMSetSystemProfile, CMNewProfile, and other routines.CMSetProfileDescription is an API to the Profile Responder component, which is no longer supported. It also operated on 1.0 profiles, which are no longer supported. Access to internal profile data for 2.0 profiles is supported via CMSetProfileElement.CMUseProfileComment embeds 1.0 profiles in the PICT data. These profiles will no longer be supported. Use NCMUseProfileComment instead.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertXYZToFixedXYZ.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertXYZToLab.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertXYZToLuv.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertXYZToYxy.This function is simply glue to the old CMConversion Component. The preferred access method to this function is CMConvertYxyToXYZ.ConcatenateProfiles operates on 1.0 profiles, which are no longer supported. Concatenation is supported for 2.0 profiles via CWNewLinkProfile and other APIs.CWNewColorWorld takes as parameters 1.0 profiles, which will no longer be supported. Use NCWNewColorWorld instead.DeleteDeviceProfile deletes 1.0 profiles, which will no longer be supported.DrawMatchedPicture uses 1.0 profiles, which are obsolete. Use NCMDrawMatchedPicture (which supports 2.0 profiles) instead.EnableMatching is a valid API only if OLDROUTINENAMES is defined for a given compile. Use CMEnableMatchingComment for full compatibility.EndMatching is defined if OLDROUTINENAMES is used during compilation. Use CMEndMatching for full compatibility.This function will continue to be supported on the MacOS. Future APIs will support universal access to the ³ColorSync Folder² across platforms.GetIndexedProfile provides access to 1.0 profiles, which will no longer be supported. CMNewProfileSearch and CMSearchGetIndProfile provide enhanced access to 2.0 profiles.GetProfile provides access to 1.0 profiles, which will no longer be supported.
GetProfileAdditionalDataOffset
GetProfileAdditionalDataOffset is a data accessor for 1.0 profiles, which will no longer be supported.GetProfileName is an accessor for 1.0 profiles, which will no longer be supported. Access to 2.0 profile data is supported by CMGetScriptProfileDescription and CMGetProfileElement.SetProfile uses 1.0 profiles, which will no longer be supported. To set the System profile, use NCMSetSystemProfile.SetProfileDescription provides access to 1.0 profiles, which will no longer be supported. To set the description of a 2.0 profile, use CMSetProfileElement.UseProfile allows 1.0 profiles to be used within PICT data streams. These profiles will no longer be supported.