Important: The information in this document is obsolete and should not be used for new development.
Profile Header Structure for ColorSync 1.0
ColorSync 1.0 defines a version 1.0 profile whose structure and format are different from that of the ICC version 2.x profile. To obtain a copy of the International Color Consortium Profile Format Specification, or to get other information about the ICC, visit the ICC's Web site athttp://www.color.org/
Your application cannot use ColorSync Manager functions to update a version 1.0 profile or to search for version 1.0 profiles. However, your application can use other ColorSync Manager functions that operate on version 1.0 profiles. For example, your application can open a version 1.0 profile using the
CMOpenProfile
function (page 3-69), obtain the version 1.0 profile header using theCMGetProfileHeader
function (page 3-88), and access version 1.0 profile elements using theCMGetProfileElement
function (page 3-87).To make it possible to operate on version 1.0 profiles, the ColorSync Manager defines the CMAppleProfileHeader union (page 3-42), which supports either profile header version. The
CMHeader
data type defines the version 1.0 profile header.
struct CMHeader { unsigned long size; /* byte size of profile */ OSType CMMType; /*signature of preferred CMM */ unsigned long applProfileVersion;/* Apple profile version */ OSType dataType; /* type of color data, such as rgb */ OSType deviceType; /* device type, such as monitor */ OSType deviceManufacturer;/* device manufacturer */ unsigned long deviceModel; /* as specified by manufacturer */ unsigned long deviceAttributes[2];/* private info on ink, paper, and so on */ unsigned long profileNameOffset;/* offset to name from top of data */ unsigned long customDataOffset; /* offset to custom data from top */ CMMatchFlag flags; /* miscellaneous info for drivers */ CMMatchOption options; /* matching type, such as perceptual */ CMXYZColor white; /* white point in XYZ space */ CMXYZColor black; /* black point in XYZ space */ };For more information on ColorSync 1.0 headers, see the appendix "ColorSync Manager Backward Compatibility" in Advanced Color Imaging on the Mac OS.
Field Description
size
- The total size in bytes of the profile, including any custom data.
CMMType
- The signature of the preferred CMM for color-matching and color-checking sessions for this profile. To avoid conflicts with other CMMs, this signature must be registered with the ICC. For the signature of the Apple CMM, see "Signature of the Default Apple Color Management Module" (page 3-14).
applProfileVersion
The Apple profile version. Set this field to $0100 (defined as the constantkCMApplProfileVersion
).dataType
- The kind of color data. The types are
cmRGBData = 'RGB ', source or destination profiles
cmCMYKData = 'CMYK', destination profiles
cmGrayData = 'GRAY', source or destination profiles
cmXYZData = 'XYZ ' source or destination profilesdeviceType
- The kind of device. The types are
cmMonitorDevice = 'mntr'
cmScannerDevice = 'scnr'
cmPrinterDevice = 'prtr'deviceManufacturer
- A name supplied by the device manufacturer.
deviceModel
- The device model specified by the manufacturer.
deviceAttributes
- Private information such as paper surface and ink temperature.
profileNameOffset
- The offset to the profile name from the top of data.
customDataOffset
- The offset to any custom data from the top of data.
flags
- A field used by drivers; it can hold one of the following flags:
CMNativeMatchingPreferred
CMTurnOffCache- The
CMNativeMatchingPreferred
flag is available for developers of intelligent peripherals that can off-load color matching into the peripheral. Most drivers will not use this flag. (Its default setting is 0, meaning that the profile creator does not care whether matching occurs on the host or the device.)- Use the
CMTurnOffCache
flag for CMMs that won't benefit from a cache, such as those that can look up data from a table with less overhead, or that don't want to take the memory hit a cache entails, or that do their own caching and don't want the CMM to do it. (The default is 0, meaning turn on cache.)options
- The
options
field specifies the preferred matching for this profile; the default isCMPerceptualMatch
; other values areCMColorimetricMatch
orCMSaturationMatch
. The options are set by the image creator.white
- The profile illuminant white reference point, expressed in the XYZ color space.
black
- The black reference point for this profile, expressed in the XYZ color space.