diff options
Diffstat (limited to 'icc/iccV42.h')
-rw-r--r-- | icc/iccV42.h | 555 |
1 files changed, 555 insertions, 0 deletions
diff --git a/icc/iccV42.h b/icc/iccV42.h new file mode 100644 index 0000000..ee3fefb --- /dev/null +++ b/icc/iccV42.h @@ -0,0 +1,555 @@ + +/* + * This file started out as the standard ICC header provided by + * the ICC. Since this file no longer seems to be maintained, + * I've added new entries from the ICC spec., but dropped + * things that are not needed for icclib. + * + * This version of the header file corresponds to the profile + * Specification ICC.1:2003-09 (Version 4.2.0) + * + * All header file entries are pre-fixed with "ic" to help + * avoid name space collisions. Signatures are pre-fixed with + * icSig. + * + * Version numbers used within file are file format version numers, + * not spec. version numbers. + * + * Portions of this file are Copyright 2004 - 2005 Graeme W. Gill, + * This material is licensed with an "MIT" free use license:- + * see the License.txt file in this directory for licensing details. + * + * Graeme Gill. + */ + +/* Header file guard bands */ +#ifndef ICCV42_H +#define ICCV42_H + +#ifdef __cplusplus + extern "C" { +#endif + +/***************************************************************** + Copyright (c) 1994-1998 SunSoft, Inc. + + Rights Reserved + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without restrict- +ion, including without limitation the rights to use, copy, modify, +merge, publish distribute, sublicense, and/or sell copies of the +Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON- +INFRINGEMENT. IN NO EVENT SHALL SUNSOFT, INC. OR ITS PARENT +COMPANY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of SunSoft, Inc. +shall not be used in advertising or otherwise to promote the +sale, use or other dealings in this Software without written +authorization from SunSoft Inc. +******************************************************************/ + +/* + Spec name/version/file version relationship. + + Spec. Name Spec. Version ICC File Version + ---------- ------------- ---------------- + ICC.1:2004-10 4.2 4.2.0 + ICC.1:2003-09 4.1 4.1.0 + ICC.1:2001-12 4.0 4.0.0 + ICC.1:2001-04 (3.7?) 2.4.0 + ICC.1A:1999-04 (3.6?) 2.3.0 + ICC.1:1998-09 (3.5?) 2.2.0 + (Version 3.4) 3.4 2.1.0 (a) + (Version 3.3) 3.3 2.1.0 + (Version 3.2) 3.2 2.0.0 (b) + (Version 3.01) 3.01 2.0.0 (a) + (Version 3.0) 3.0 2.0.0 +*/ + + +#define icMaxTagVal -1 + +/*------------------------------------------------------------------------*/ + +/* + * Defines used in the specification + */ + +#define icMagicNumber 0x61637370L /* 'acsp' */ +#define icVersionNumber 0x02200000L /* 2.2.0, BCD */ +#define icVersionNumberV41 0x04100000L /* 4.1.0, BCD */ + +/* Screening Encodings */ +#define icPrtrDefaultScreensFalse 0x00000000L /* Bit pos 0 */ +#define icPrtrDefaultScreensTrue 0x00000001L /* Bit pos 0 */ +#define icLinesPerInch 0x00000002L /* Bit pos 1 */ +#define icLinesPerCm 0x00000000L /* Bit pos 1 */ + +/* + * Device attributes, currently defined values correspond + * to the least-significant 4 bytes of the 8 byte attribute + * quantity, see the header for their location. + */ + +#define icReflective 0x00000000L /* Bit pos 0 */ +#define icTransparency 0x00000001L /* Bit pos 0 */ +#define icGlossy 0x00000000L /* Bit pos 1 */ +#define icMatte 0x00000002L /* Bit pos 1 */ +#define icPositive 0x00000000L /* Bit pos 2 */ +#define icNegative 0x00000004L /* Bit pos 2 */ +#define icColor 0x00000000L /* Bit pos 3 */ +#define icBlackAndWhite 0x00000008L /* Bit pos 3 */ + +/* + * Profile header flags, the least-significant 16 bits are reserved + * for consortium use. + */ + +#define icEmbeddedProfileFalse 0x00000000L /* Bit pos 0 */ +#define icEmbeddedProfileTrue 0x00000001L /* Bit pos 0 */ +#define icUseAnywhere 0x00000000L /* Bit pos 1 */ +#define icUseWithEmbeddedDataOnly 0x00000002L /* Bit pos 1 */ + +/* Ascii or Binary data */ +#define icAsciiData 0x00000000L +#define icBinaryData 0x00000001L + +/* Phosphor or Colorant sets */ +#define icPhColUnknown 0x0000 /* Specified */ +#define icPhColITU_R_BT_709 0x0001 /* ITU-R BT.709 */ +#define icPhColSMPTE_RP145_1994 0x0002 /* SMPTE RP145-1994 */ +#define icPhColEBU_Tech_3213_E 0x0003 /* EBU Tech.3213-E */ +#define icPhColP22 0x0004 /* P22 */ + +/* Video card gamma formats (ColorSync 2.5 specific) */ +#define icVideoCardGammaTable 0x00000000 +#define icVideoCardGammaFormula 0x00000001 + + +/*------------------------------------------------------------------------*/ +/* + * Use this area to translate platform definitions of long + * etc into icXXX form. The rest of the header uses the icXXX + * typedefs. Signatures are 4 byte quantities. + */ +#ifdef ORD32 /* Formal sizes defined elsewhere */ + +typedef INR32 icSignature; + +/* Unsigned integer numbers */ +typedef ORD8 icUInt8Number; +typedef ORD16 icUInt16Number; +typedef ORD32 icUInt32Number; +typedef ORD32 icUInt64Number[2]; + +/* Signed numbers */ +typedef INR8 icInt8Number; +typedef INR16 icInt16Number; +typedef INR32 icInt32Number; +typedef INR32 icInt64Number[2]; + +/* Fixed numbers */ +typedef INR32 icS15Fixed16Number; +typedef ORD32 icU16Fixed16Number; + +#else /* default definitions for typical 32 bit architecture */ + +typedef long icSignature; + +/* Unsigned integer numbers */ +typedef unsigned char icUInt8Number; +typedef unsigned short icUInt16Number; +typedef unsigned long icUInt32Number; +typedef unsigned long icUInt64Number[2]; + +/* Signed numbers */ +typedef char icInt8Number; +typedef short icInt16Number; +typedef long icInt32Number; +typedef long icInt64Number[2]; + +/* Fixed numbers */ +typedef long icS15Fixed16Number; +typedef unsigned long icU16Fixed16Number; + +#endif /* Not formal */ + +/*------------------------------------------------------------------------*/ +/* public tags and sizes */ +typedef enum { + icSigAToB0Tag = 0x41324230L, /* 'A2B0' */ + icSigAToB1Tag = 0x41324231L, /* 'A2B1' */ + icSigAToB2Tag = 0x41324232L, /* 'A2B2' */ + icSigBlueMatrixColumnTag = 0x6258595AL, /* 'bXYZ' */ + icSigBlueTRCTag = 0x62545243L, /* 'bTRC' */ + icSigBToA0Tag = 0x42324130L, /* 'B2A0' */ + icSigBToA1Tag = 0x42324131L, /* 'B2A1' */ + icSigBToA2Tag = 0x42324132L, /* 'B2A2' */ + icSigCalibrationDateTimeTag = 0x63616C74L, /* 'calt' */ + icSigCharTargetTag = 0x74617267L, /* 'targ' */ + icSigChromaticAdaptationTag = 0x63686164L, /* 'chad' V2.4+ */ + icSigChromaticityTag = 0x6368726DL, /* 'chrm' V2.3+ */ + icSigColorantOrderTag = 0x636C726FL, /* 'clro' V4.0+ */ + icSigColorantTableTag = 0x636C7274L, /* 'clrt' V4.0+ */ + icSigColorantTableOutTag = 0x636C6F74L, /* 'clot' V4.0+ */ + icSigCopyrightTag = 0x63707274L, /* 'cprt' */ + icSigCrdInfoTag = 0x63726469L, /* 'crdi' V2.1 - V4.0 */ + icSigDataTag = 0x64617461L, /* 'data' ??? */ + icSigDateTimeTag = 0x6474696DL, /* 'dtim' ??? */ + icSigDeviceMfgDescTag = 0x646D6E64L, /* 'dmnd' */ + icSigDeviceModelDescTag = 0x646D6464L, /* 'dmdd' */ + icSigDeviceSettingsTag = 0x64657673L, /* 'devs' V2.2 - V4.0 */ + icSigGamutTag = 0x67616D74L, /* 'gamt' */ + icSigGrayTRCTag = 0x6b545243L, /* 'kTRC' */ + icSigGreenMatrixColumnTag = 0x6758595AL, /* 'gXYZ' */ + icSigGreenTRCTag = 0x67545243L, /* 'gTRC' */ + icSigLuminanceTag = 0x6C756d69L, /* 'lumi' */ + icSigMeasurementTag = 0x6D656173L, /* 'meas' */ + icSigMediaBlackPointTag = 0x626B7074L, /* 'bkpt' */ + icSigMediaWhitePointTag = 0x77747074L, /* 'wtpt' */ + icSigNamedColorTag = 0x6E636f6CL, /* 'ncol' V2.0 */ + icSigNamedColor2Tag = 0x6E636C32L, /* 'ncl2' V2.1+ */ + icSigOutputResponseTag = 0x72657370L, /* 'resp' V2.2+ */ + icSigPerceptualRenderingIntentGamutTag = 0x72696730L, /* 'rig0' ??? */ + icSigPreview0Tag = 0x70726530L, /* 'pre0' */ + icSigPreview1Tag = 0x70726531L, /* 'pre1' */ + icSigPreview2Tag = 0x70726532L, /* 'pre2' */ + icSigProfileDescriptionTag = 0x64657363L, /* 'desc' */ + icSigProfileSequenceDescTag = 0x70736571L, /* 'pseq' */ + icSigPs2CRD0Tag = 0x70736430L, /* 'psd0' V2.0 - V4.0 */ + icSigPs2CRD1Tag = 0x70736431L, /* 'psd1' V2.0 - V4.0 */ + icSigPs2CRD2Tag = 0x70736432L, /* 'psd2' V2.0 - V4.0 */ + icSigPs2CRD3Tag = 0x70736433L, /* 'psd3' V2.0 - V4.0 */ + icSigPs2CSATag = 0x70733273L, /* 'ps2s' V2.0 - V4.0 */ + icSigPs2RenderingIntentTag = 0x70733269L, /* 'ps2i' V2.0 - V4.0 */ + icSigRedMatrixColumnTag = 0x7258595AL, /* 'rXYZ' */ + icSigRedTRCTag = 0x72545243L, /* 'rTRC' */ + icSigSaturationRenderingIntentGamutTag = 0x72696732L, /* 'rig2' ??? */ + icSigScreeningDescTag = 0x73637264L, /* 'scrd' V2.0 - V4.0 */ + icSigScreeningTag = 0x7363726EL, /* 'scrn' V2.0 - V4.0 */ + icSigTechnologyTag = 0x74656368L, /* 'tech' */ + icSigUcrBgTag = 0x62666420L, /* 'bfd ' V2.0 - V4.0 */ + icSigVideoCardGammaTag = 0x76636774L, /* 'vcgt' ColorSync 2.5+ */ + icSigViewingCondDescTag = 0x76756564L, /* 'vued' */ + icSigViewingConditionsTag = 0x76696577L, /* 'view' */ + icMaxEnumTag = icMaxTagVal +} icTagSignature; + +/* Aliases for backwards compatibility */ +#define icSigBlueColorantTag icSigBlueMatrixColumnTag /* Prior to V4.0 */ +#define icSigGreenColorantTag icSigGreenMatrixColumnTag /* Prior to V4.0 */ +#define icSigRedColorantTag icSigRedMatrixColumnTag /* Prior to V4.0 */ + +/* technology signature descriptions */ +typedef enum { + icSigDigitalCamera = 0x6463616DL, /* 'dcam' */ + icSigFilmScanner = 0x6673636EL, /* 'fscn' */ + icSigReflectiveScanner = 0x7273636EL, /* 'rscn' */ + icSigInkJetPrinter = 0x696A6574L, /* 'ijet' */ + icSigThermalWaxPrinter = 0x74776178L, /* 'twax' */ + icSigElectrophotographicPrinter = 0x6570686FL, /* 'epho' */ + icSigElectrostaticPrinter = 0x65737461L, /* 'esta' */ + icSigDyeSublimationPrinter = 0x64737562L, /* 'dsub' */ + icSigPhotographicPaperPrinter = 0x7270686FL, /* 'rpho' */ + icSigFilmWriter = 0x6670726EL, /* 'fprn' */ + icSigVideoMonitor = 0x7669646DL, /* 'vidm' */ + icSigVideoCamera = 0x76696463L, /* 'vidc' */ + icSigProjectionTelevision = 0x706A7476L, /* 'pjtv' */ + icSigCRTDisplay = 0x43525420L, /* 'CRT ' */ + icSigPMDisplay = 0x504D4420L, /* 'PMD ' */ + icSigAMDisplay = 0x414D4420L, /* 'AMD ' */ + icSigPhotoCD = 0x4B504344L, /* 'KPCD' */ + icSigPhotoImageSetter = 0x696D6773L, /* 'imgs' */ + icSigGravure = 0x67726176L, /* 'grav' */ + icSigOffsetLithography = 0x6F666673L, /* 'offs' */ + icSigSilkscreen = 0x73696C6BL, /* 'silk' */ + icSigFlexography = 0x666C6578L, /* 'flex' */ + icMaxEnumTechnology = icMaxTagVal +} icTechnologySignature; + +/* type signatures */ +typedef enum { + icSigChromaticityType = 0x6368726DL, /* 'chrm' */ + icSigColorantOrderType = 0x636C726FL, /* 'clro' V4.0+ */ + icSigColorantTableType = 0x636C7274L, /* 'clrt' V4.0+ */ + icSigCrdInfoType = 0x63726469L, /* 'crdi' V2.1 - V4.0 */ + icSigCurveType = 0x63757276L, /* 'curv' */ + icSigDataType = 0x64617461L, /* 'data' */ + icSigDateTimeType = 0x6474696DL, /* 'dtim' */ + icSigDeviceSettingsType = 0x64657673L, /* 'devs' V2.2 - V4.0 */ + icSigLut16Type = 0x6d667432L, /* 'mft2' */ + icSigLut8Type = 0x6d667431L, /* 'mft1' */ + icSigLutAtoBType = 0x6d414220L, /* 'mAB ' V4.0+ */ + icSigLutBtoAType = 0x6d424120L, /* 'mBA ' V4.0+ */ + icSigMeasurementType = 0x6D656173L, /* 'meas' */ + icSigMultiLocalizedUnicodeType = 0x6D6C7563L, /* 'mluc' V4.0+ */ + icSigNamedColorType = 0x6E636f6CL, /* 'ncol' V2.0 */ + icSigNamedColor2Type = 0x6E636C32L, /* 'ncl2' V2.0+ */ + icSigParametricCurveType = 0x70617261L, /* 'para' V4.0+ */ + icSigProfileSequenceDescType = 0x70736571L, /* 'pseq' */ + icSigResponseCurveSet16Type = 0x72637332L, /* 'rcs2' V2.2 - V4.0 */ + icSigS15Fixed16ArrayType = 0x73663332L, /* 'sf32' */ + icSigScreeningType = 0x7363726EL, /* 'scrn' V2.0 - V4.0 */ + icSigSignatureType = 0x73696720L, /* 'sig ' */ + icSigTextType = 0x74657874L, /* 'text' */ + icSigTextDescriptionType = 0x64657363L, /* 'desc' V2.0 - V2.4 */ + icSigU16Fixed16ArrayType = 0x75663332L, /* 'uf32' */ + icSigUcrBgType = 0x62666420L, /* 'bfd ' V2.0 - V4.0 */ + icSigUInt16ArrayType = 0x75693136L, /* 'ui16' */ + icSigUInt32ArrayType = 0x75693332L, /* 'ui32' */ + icSigUInt64ArrayType = 0x75693634L, /* 'ui64' */ + icSigUInt8ArrayType = 0x75693038L, /* 'ui08' */ + icSigVideoCardGammaType = 0x76636774L, /* 'vcgt' ColorSync 2.5+ */ + icSigViewingConditionsType = 0x76696577L, /* 'view' */ + icSigXYZType = 0x58595A20L, /* 'XYZ ' */ + icSigXYZArrayType = 0x58595A20L, /* 'XYZ ' */ + icMaxEnumType = icMaxTagVal +} icTagTypeSignature; + +/* + * Color Space Signatures + * Note that only icSigXYZData and icSigLabData are valid + * Profile Connection Spaces (PCSs) + */ +typedef enum { + icSigXYZData = 0x58595A20L, /* 'XYZ ' */ + icSigLabData = 0x4C616220L, /* 'Lab ' */ + icSigLuvData = 0x4C757620L, /* 'Luv ' */ + icSigYCbCrData = 0x59436272L, /* 'YCbr' */ + icSigYxyData = 0x59787920L, /* 'Yxy ' */ + icSigRgbData = 0x52474220L, /* 'RGB ' */ + icSigGrayData = 0x47524159L, /* 'GRAY' */ + icSigHsvData = 0x48535620L, /* 'HSV ' */ + icSigHlsData = 0x484C5320L, /* 'HLS ' */ + icSigCmykData = 0x434D594BL, /* 'CMYK' */ + icSigCmyData = 0x434D5920L, /* 'CMY ' */ + + icSig2colorData = 0x32434C52L, /* '2CLR' */ + icSig3colorData = 0x33434C52L, /* '3CLR' */ + icSig4colorData = 0x34434C52L, /* '4CLR' */ + icSig5colorData = 0x35434C52L, /* '5CLR' */ + icSig6colorData = 0x36434C52L, /* '6CLR' */ + icSig7colorData = 0x37434C52L, /* '7CLR' */ + icSig8colorData = 0x38434C52L, /* '8CLR' */ + icSig9colorData = 0x39434C52L, /* '9CLR' */ + icSig10colorData = 0x41434C52L, /* 'ACLR' */ + icSig11colorData = 0x42434C52L, /* 'BCLR' */ + icSig12colorData = 0x43434C52L, /* 'CCLR' */ + icSig13colorData = 0x44434C52L, /* 'DCLR' */ + icSig14colorData = 0x45434C52L, /* 'ECLR' */ + icSig15colorData = 0x46434C52L, /* 'FCLR' */ + + icSigMch5Data = 0x4D434835L, /* 'MCH5' Colorsync ? */ + icSigMch6Data = 0x4D434836L, /* 'MCH6' Hexachrome: CMYKOG */ + icSigMch7Data = 0x4D434837L, /* 'MCH7' Colorsync ? */ + icSigMch8Data = 0x4D434838L, /* 'MCH8' Colorsync ? */ + icSigNamedData = 0x6e6d636cL, /* 'nmcl' ??? */ + + icMaxEnumData = icMaxTagVal +} icColorSpaceSignature; + +/* profileClass enumerations */ +typedef enum { + icSigInputClass = 0x73636E72L, /* 'scnr' */ + icSigDisplayClass = 0x6D6E7472L, /* 'mntr' */ + icSigOutputClass = 0x70727472L, /* 'prtr' */ + icSigLinkClass = 0x6C696E6BL, /* 'link' */ + icSigAbstractClass = 0x61627374L, /* 'abst' */ + icSigColorSpaceClass = 0x73706163L, /* 'spac' */ + icSigNamedColorClass = 0x6e6d636cL, /* 'nmcl' */ + icMaxEnumClass = icMaxTagVal +} icProfileClassSignature; + +/* Platform Signatures */ +typedef enum { + icSigMacintosh = 0x4150504CL, /* 'APPL' */ + icSigMicrosoft = 0x4D534654L, /* 'MSFT' */ + icSigSolaris = 0x53554E57L, /* 'SUNW' */ + icSigSGI = 0x53474920L, /* 'SGI ' */ + icSigTaligent = 0x54474E54L, /* 'TGNT' */ + icMaxEnumPlatform = icMaxTagVal +} icPlatformSignature; + +/* Rendering Intent Gamut Signatures */ +typedef enum { + icSigPerceptualReferenceMediumGamut = 0x70726d67L, /* 'prmg' */ + icMaxEnumReferenceMediumGamut = icMaxTagVal +} icReferenceMediumGamutSignature; + +/*------------------------------------------------------------------------*/ +/* + * Other enums + */ + +/* Measurement Flare, used in the measurmentType tag */ +typedef enum { + icFlare0 = 0x00000000L, /* 0% flare */ + icFlare100 = 0x00000001L, /* 100% flare */ + icMaxFlare = icMaxTagVal +} icMeasurementFlare; + +/* Measurement Geometry, used in the measurmentType tag */ +typedef enum { + icGeometryUnknown = 0x00000000L, /* Unknown */ + icGeometry045or450 = 0x00000001L, /* 0/45, 45/0 */ + icGeometry0dord0 = 0x00000002L, /* 0/d or d/0 */ + icMaxGeometry = icMaxTagVal +} icMeasurementGeometry; + +/* Rendering Intents, used in the profile header */ +typedef enum { + icPerceptual = 0, + icRelativeColorimetric = 1, + icSaturation = 2, + icAbsoluteColorimetric = 3, + icMaxEnumIntent = icMaxTagVal +} icRenderingIntent; + +/* Different Spot Shapes currently defined, used for screeningType */ +typedef enum { + icSpotShapeUnknown = 0, + icSpotShapePrinterDefault = 1, + icSpotShapeRound = 2, + icSpotShapeDiamond = 3, + icSpotShapeEllipse = 4, + icSpotShapeLine = 5, + icSpotShapeSquare = 6, + icSpotShapeCross = 7, + icMaxEnumSpot = icMaxTagVal +} icSpotShape; + +/* Standard Observer, used in the measurmentType tag */ +typedef enum { + icStdObsUnknown = 0x00000000L, /* Unknown */ + icStdObs1931TwoDegrees = 0x00000001L, /* 2 deg */ + icStdObs1964TenDegrees = 0x00000002L, /* 10 deg */ + icMaxStdObs = icMaxTagVal +} icStandardObserver; + +/* Pre-defined illuminants, used in measurement and viewing conditions type */ +typedef enum { + icIlluminantUnknown = 0x00000000L, + icIlluminantD50 = 0x00000001L, + icIlluminantD65 = 0x00000002L, + icIlluminantD93 = 0x00000003L, + icIlluminantF2 = 0x00000004L, + icIlluminantD55 = 0x00000005L, + icIlluminantA = 0x00000006L, + icIlluminantEquiPowerE = 0x00000007L, + icIlluminantF8 = 0x00000008L, + icMaxEnumIlluminant = icMaxTagVal +} icIlluminant; + +/* A not so exhaustive list of language codes */ +typedef enum { + icLanguageCodeEnglish = 0x656E, /* 'en' */ + icLanguageCodeGerman = 0x6465, /* 'de' */ + icLanguageCodeItalian = 0x6974, /* 'it' */ + icLanguageCodeDutch = 0x6E6C, /* 'nl' */ + icLanguageCodeSweden = 0x7376, /* 'sv' */ + icLanguageCodeSpanish = 0x6573, /* 'es' */ + icLanguageCodeDanish = 0x6461, /* 'da' */ + icLanguageCodeNorwegian = 0x6E6F, /* 'no' */ + icLanguageCodeJapanese = 0x6A61, /* 'ja' */ + icLanguageCodeFinish = 0x6669, /* 'fi' */ + icLanguageCodeTurkish = 0x7472, /* 'tr' */ + icLanguageCodeKorean = 0x6B6F, /* 'ko' */ + icLanguageCodeChienese = 0x7A68, /* 'zh' */ + icLanguageCodeFrench = 0x6672, /* 'fr' */ + icMaxEnumLanguageCode = 0xFFFF +} icEnumLanguageCode; + +/* A not so exhaustive list of region codes. */ +typedef enum { + icRegionCodeUSA = 0x5553, /* 'US' */ + icRegionCodeUnitedKingdom = 0x554B, /* 'UK' */ + icRegionCodeGermany = 0x4445, /* 'DE' */ + icRegionCodeItaly = 0x4954, /* 'IT' */ + icRegionCodeNetherlands = 0x4E4C, /* 'NL' */ + icRegionCodeSpain = 0x4543, /* 'ES' */ + icRegionCodeDenmark = 0x444B, /* 'DK' */ + icRegionCodeNorway = 0x4E4F, /* 'ND' */ + icRegionCodeJapan = 0x4A50, /* 'JP' */ + icRegionCodeFinland = 0x4649, /* 'FI' */ + icRegionCodeTurkey = 0x5452, /* 'TR' */ + icRegionCodeKorea = 0x4B52, /* 'KR' */ + icRegionCodeChina = 0x434E, /* 'CN' */ + icRegionCodeTaiwan = 0x5457, /* 'TW' */ + icRegionCodeFrance = 0x4652, /* 'FR' */ + icMaxEnumRegionCode = 0xFFFF +} icEnumRegionCode; + +/* media type for icSigDeviceSettingsTag */ +typedef enum { + icStandard = 1, + icTrans = 2, /* transparency */ + icGloss = 3, + icUser1 = 256, + icMaxDeviceMedia = icMaxTagVal +} icDeviceMedia; + +/* halftone settings for icSigDeviceSettingTag */ +typedef enum { + icNone = 1, + icCoarse = 2, + icFine = 3, + icLineArt = 4, + icErrorDiffusion = 5, + icReserved6 = 6, + icReserved7 = 7, + icReserved8 = 8, + icReserved9 = 9, + icGrayScale = 10, + icUser2 = 256, + icMaxDither = icMaxTagVal +} icDeviceDither; + +/* signatures for icSigDeviceSettingsTag */ +typedef enum { + icSigResolution = 0x72736c6eL, /* 'rsln' */ + icSigMedia = 0x6d747970L, /* 'mtyp' */ + icSigHalftone = 0x6866746eL, /* 'hftn' */ + icMaxSettings = icMaxTagVal +} icSettingsSig; + +/* measurement units for the icResponseCurveSet16Type */ +typedef enum { + icStaA = 0x53746141L, /* 'StaA' */ + icStaE = 0x53746145L, /* 'StaE' */ + icStaI = 0x53746149L, /* 'StaI' */ + icStaT = 0x53746154L, /* 'StaT' */ + icStaM = 0x5374614dL, /* 'StaM' */ + icDN = 0x444e2020L, /* 'DN ' */ + icDNP = 0x444e2050L, /* 'DN P' */ + icDNN = 0x444e4e20L, /* 'DNN ' */ + icDNNP = 0x444e4e50L, /* 'DNNP' */ + icMaxUnits = icMaxTagVal +} icMeasUnitsSig; + +/* Parametric curve types for icSigParametricCurveType */ +typedef enum { + icCurveFunction1 = 0x0000, + icCurveFunction3 = 0x0001, + icCurveFunction4 = 0x0002, + icCurveFunction5 = 0x0003, + icCurveFunction7 = 0x0004 +} icParametricCurveFunctionType; + +#ifdef __cplusplus + } +#endif + +#endif /* ICCV42_H */ |