KCMS CMM Developer's Guide

Example

ICC has both universal and private places for transformation data. The InterColorProfileFormat asks for the load order and gives a list of universal plus private. The Universal Color Processor (UCP) derivative responds with universalAsPrivate. Since the derivative knows that UCPs can do this, it asks any KcsXform derivative that does not save in the universal format to convert itself into a UCP. This follows the second way to break an obligation, since the InterColorProfileFormat actually converts the transformation to another kind and saves the converted one. It never saves the original.

The typdefs are as follows:

typedef

long KcsLoadSaveSet; #define KcsNoParts           

((KcsLoadSaveSet)0x00000000) #define KcsPrivatePart       

((KcsLoadSaveSet)0x00000001) #define KcsUniversalPart     

((KcsLoadSaveSet)0x00000002)
 #define KcsUniversalisPrivate 

	((KcsLoadSaveSet)((0x80000000)|KcsUniversalPart|KcsPrivatePart))