cmsCreateTfm(3)
cmsCreateTfm - creates a transform from a set of profiles
As shipped in IRIX 6.5. First release of IRIX 6.5.
NAME cmsCreateTfm - creates a transform from a set of profiles SYNOPSIS #include <cms.h> int32 cmsCreateTfm (ctxt, profileCount, profs, cmm, ptfm); CMSContext ctxt; int32 profileCount; CMSProfile *profs; icSignature cmm; CMSTfm *ptfm; DESCRIPTION cmsCreateTfm uses a color manipulation module (CMM) to create a transform out of a list of profiles. The resulting transform is a sequential execution of the algorithms implied by the individual profiles, starting from the first profile and ending in the last profile. Different CMMs will produce different transforms from the same set of profiles. The transforms will yield different results when applied a given set of pixels. Application writers may wish to control which CMM is used to create and apply a transform. They may do so by specifying the CMM's name with the cmm parameter. The list of supported CMMs is returned from the command cmsGetCmmList. Application writers who have no preference as to the CMM used may do one of two things. They may specify that the system's default CMM be used by setting cmm to CMS_USE_DEFAULT_CMM. Each profile in the list profs may specify a preferred CMM in its header. If the application writer sets cmm to CMS_USE_PROFILE_CMM, then the CMS goes through the list of profiles from last to first and lets each specified CMM try to build the transform. If the CMM can build the transform, the result is used, and that CMM will be used to apply the transform. If the CMM cannot build the tranform, the next one in order will be tried. If not of the CMMs can build the tranform, cmsCreateTfm returns an error. The reason the list is traversed backward is that output devices tend to be at the end of the profile list, and it is the profiles of output devices that tend to have the most dramatic effects on a tranform. ERRORS CMS_OUT_OF_MEMORY There is not enough memory available to create a transform. CMS_WRONG_DATA The ctxt points to something that is not a context. CMS_BAD_INPLACE_CONVERT We cannot build an inplace conversion for this transform. CMS_BAD_ENCODE CMS_BAD_CONTEXT CMS_TOO_MANY_CHANNELS The CMM cannot support a tranform with the requested number of channels. CMS_CMM_NOT_AVAILABLE The requested CMM is not available. SEE ALSO cmsApplyTfm, cmsCreateGamutCheck