When a profile sequence is optimized for speed, a set of tables is generated that does not require the color data to be passed through the PCS. As a result, the connected profile contains a composed KcsXform object that moves data directly from input space to output space. (Composition reduces multiple transforms into a single transform.) The KCMS "C" API code excerpt shown in Example 3-6 evaluates data with optimization for speed.
status = KcsOptimizeProfile(completeProfile, KcsOptSpeed,
KcsLoadAllNow);
if (status != KCS_SUCCESS) {
fprintf(stderr, "OptimizeProfile failed\n");
KcsFreeProfile(monitorProfile);
KcsFreeProfile(scannerProfile);
return(-1);
}
/* set up the pixel layout and color correct the image */
setupPixelLayout24(&pixelLayoutIn, image_in);
status = KcsEvaluate(completeProfile, op, &pixelLayoutIn,
&pixelLayoutIn);
if (status != KCS_SUCCESS) {
fprintf(stderr, "EvaluateProfile failed\n");
KcsFreeProfile(monitorProfile);
KcsFreeProfile(scannerProfile);
KcsFreeProfile(completeProfile);
return(-1);
}