Carbon


Profile Location Type

Header: CMApplication.h

enum {
    cmNoProfileBase = 0,
    cmFileBasedProfile = 1,
    cmHandleBasedProfile = 2,
    cmPtrBasedProfile = 3,
    cmProcedureBasedProfile = 4,
    cmPathBasedProfile = 5,
    cmBufferBasedProfile = 6
};

Constant descriptions

cmNoProfileBase

The profile is temporary. It will not persist in memory after its use for a color session. You can specify this type of profile location with the CMNewProfile and the CMCopyProfile functions.

cmFileBasedProfile

The profile is stored in a disk-file and the CMProfLoc union of type CMProfLoc holds a structure of type CMFileLocation identifying the profile file. You can specify this type of profile location with the CMOpenProfile, CMNewProfile, CMCopyProfile, and CMNewLinkProfile functions.

cmHandleBasedProfile

The profile is stored in relocatable memory and the CMProfLoc union of type CMProfLoc holds a handle to the profile in a structure of type CMHandleLocation. You can specify this type of profile location with the CMOpenProfile, CMNewProfile, and CMCopyProfile functions.

cmPtrBasedProfile

The profile is stored in nonrelocatable memory and the CMProfLoc union of type CMProfLoc holds a pointer to the profile in a structure of type CMPtrLocation. You can specify this type of profile location with the CMOpenProfile function only.

cmProcedureBasedProfile

The profile is in an arbitrary location, accessed through a procedure supplied by you. The CMProfLoc union of type CMProfLoc holds a universal procedure pointer to your profile access procedure in a structure of type CMProcedureLocation. You can specify this type of profile location with the CMOpenProfile, CMNewProfile, CMCopyProfile, and CMNewLinkProfile functions. For a description of an application-supplied profile access procedure, see CMProfileAccessProcPtr.

cmPathBasedProfile
cmBufferBasedProfile

Your application specifies the location for a profile using a profile location structure of type CMProfileLocation. A ColorSync profile that you open or create is typically stored in one of the following locations:

Additionally, your application can create a new or duplicate temporary profile. For example, you can use a temporary profile for a color-matching session and the profile is not saved after the session. For this case, the ColorSync Manager allows you to specify the profile location as having no specific location.

You use a pointer to a data structure of type CMProfileLocation to identify a profile’s location when your application calls

Your application identifies the type of data the CMProfileLocation u field holds—a file specification, a handle, and so on—in the CMProfileLocation structure’s locType field. You use the constants defined by this enumeration to identify the location type.


© 2000 Apple Computer, Inc. (Last Updated 7/17/2000)