![]() |
CM2Header |
Header: CMICCProfile.h |
struct CM2Header { UInt32 size; OSType CMMType; UInt32 profileVersion; OSType profileClass; OSType dataColorSpace; OSType profileConnectionSpace; CMDateTime dateTime; OSType CS2profileSignature; OSType platform; UInt32 flags; OSType deviceManufacturer; UInt32 deviceModel; UInt32 deviceAttributes[2]; UInt32 renderingIntent; CMFixedXYZColor white; OSType creator; char reserved[44]; };
The total size in bytes of the profile.
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 default CMM, see
The version of the profile format. The first 8 bits indicate the major version number, followed by 8 bits indicating the minor version number. The following 2 bytes are reserved.
The profile version number is not tied to the version of the ColorSync Manager. Profile formats and their versions are defined by the ICC. For example, a major version change may indicate the addition of new required tags to the profile format; a minor version change may indicate the addition of new optional tags.
One of the seven profile classes supported by the ICC: input, display, output, named color space, device link, color space conversion, or abstract. For the signatures representing profile classes, see
The color space of the profile. Color values used to express colors of images using this profile are specified in this color space. For a list of the color space signatures, see
The profile connection space, or PCS. The signatures for the two profile connection spaces supported by ColorSync, cmXYZData and cmLabData, are described in
The date and time when the profile was created. You can use this value to keep track of your own versions of this profile. For information on the date and time format, see CMDateTime.
The 'acsp' constant as required by the ICC format.
The signature of the primary platform on which this profile runs. For Apple Computer, this is 'APPL'. For other platforms, refer to the International Color Consortium Profile Format Specification.
Flags that provide hints, such as preferred quality and speed options, to the preferred CMM. The flags field consists of an unsigned long data type. The 16 bits in the low word, 0-15, are reserved for use by the ICC. The 16 bits in the high word, 16-31, are available for use by color management systems. For information on how these bits are defined and how your application can set and test them, see
The signature of the manufacturer of the device to which this profile applies. This value is registered with the ICC.
The model of this device, as registered with the ICC.
Attributes that are unique to this particular device setup, such as media, paper, and ink types. The data type for this field is an array of two unsigned longs. The low word of deviceAttributes[0] is reserved by the ICC. The high word of deviceAttributes[0] and the entire word of deviceAttributes[1] are available for vendor use. For information on how the bits in deviceAttributes are defined and how your application can set and test them, see
The preferred rendering intent for the object or file tagged with this profile. Four types of rendering intent are defined: perceptual, relative colorimetric, saturation, and absolute colorimetric. The renderingIntent field consists of an unsigned long data type. The low word is reserved by the ICC and is used to set the rendering intent. The high word is available for use. For information on how the bits in renderingIntent are defined and how your application can set and test them, see
The profile illuminant white reference point, expressed in the XYZ color space.
Signature identifying the profile creator.
This field is reserved for future use.
The ColorSync Manager defines the CM2header profile structure to support the header format specified by the ICC format specification for version 2.x profiles. For a description of CMHeader, the ColorSync 1.0 profile header, see
Your application cannot obtain a discrete profile header value using the element tag scheme available for use with elements outside the header. Instead, to set or modify values of a profile header, your application must obtain the entire profile header using the function CMGetProfileHeader
and replace the header using the function
© 2000 Apple Computer, Inc. (Last Updated 7/17/2000)