L_GetICCTagData
#include "ltkrn.h"
#include "ltclr.h"
L_LTCLR_API L_INT L_GetICCTagData(pICCProfile, pTagData, uTagSignature)
pICCPROFILEEXT pICCProfile; |
/* pointer to a structure */ |
L_UCHAR * pTagData; |
/* pointer to a buffer */ |
L_UINT32 uTagSignature; |
/* a value that indicates the tag signature */ |
Gets a tag from the ICC profile.
Parameter |
Description |
pICCProfile |
Pointer to the ICCPROFILEEXT structure that contains the tag to get. |
pTagData |
Pointer to a buffer to be updated with the tag data. |
uTagSignature |
A value that indicates the signature of the tag to get from the ICC profile. Possible values include private tags and the values listed in ICCTAGSIGNATURE. Signatures of private tags must be registered with the ICC. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
The pTagData pointer should point to a structure of the same type as the tag type to be retrieved by this function. In case of a private tag type, the pTagData must point to a structure of type ICCTAG_UNKNOWN_TYPE.
If only the tag is private, this function returns ERROR_ICC_UNKNOWN_TAG. If only the tag type is private, this function returns ERROR_ICC_UNKNOWN_TYPE. If both the tag and the type are private, this function returns ERROR_ICC_UNKNOWN_TAG_AND_TYPE. In all three of these cases however, the pTagData parameter is updated correctly with the tag in the ICC profile.
Required DLLs and Libraries
LTCLR For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Platforms
Windows 95 / 98 / Me, Windows 2000 / XP.
See Also
Example
This example will load an ICC profile, get a tag, and then free the ICCPROFILEEXT structure.
L_INT GetICCTagDataExample(pICCPROFILEEXT pIccProfile) { L_INT nRet; ICCTAG_XYZ_TYPE iccXyzType; // Get Calibration Date and Time tag nRet = L_GetICCTagData(pIccProfile, (L_UCHAR*) &iccXyzType, MediaWhitePointTag); if(nRet != SUCCESS && nRet != ERROR_ICC_UNKNOWN_TAG_AND_TYPE && nRet != ERROR_ICC_UNKNOWN_TAG && nRet != ERROR_ICC_UNKNOWN_TYPE) return nRet; L_FreeICCTagType((L_UCHAR*) &iccXyzType, XYZTypeSig); return SUCCESS; }