kCMMGetIndNamedColorValuerequest by returning device and PCS color values from a named color space profile for a specific named color index.
A CMM may respond to the
kCMMGetIndNamedColorValuerequest code, but it is not required to do so. Most CMMs can rely on the default Apple CMM to handle this request code adequately. The ColorSync Manager sends this request code to your CMM on behalf of an application or device driver that called the CMGetIndNamedColorValue function. The ColorSync Manager dispatches this request to the Component Manager, which calls your CMM to service the request. A CMM that handles the
kCMMGetIndNamedColorValuerequest code typically responds by calling a CMM-defined function (for example, MyCMMGetIndNamedColorValue).
The MyCMMGetIndNamedColorValue function is a color management module-defined subroutine.
pascal CMError MyCMMGetIndNamedColorValue( ComponentInstance CMSession, CMProfileRef prof, unsigned long index, CMColor *deviceColor, CMColor *PCSColor)
- A handle to your CMM's storage for the instance of your component associated with the calling application or device driver.
- A profile reference (page 3-61) to a named color space profile.
- An index value for the named color to get color values for.
- A pointer to a device color. On output, a device color value in CMColor union format. If the profile does not contain device values,
- A pointer to a profile connection space color. On output, an interchange color value in CMColor union format.
- function result
- A result code of type CMError. See "Result Codes" (page 3-172) for a list of ColorSync-specific result codes.
DISCUSSIONBased on the passed named color index, the MyCMMGetIndNamedColorValue function does a lookup into the named color tag of the profile whose reference is passed in the
profparameter and returns device and PCS color values. If the index is greater than the number of named colors, MyCMMGetIndNamedColorValue returns an error code.