SampleICC Main srcforge
Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

icProfileHeader.h File Reference

Go to the source code of this file.

Classes

struct  icInt8Array
struct  icUInt8Array
struct  icUInt16Array
struct  icInt16Array
struct  icUInt32Array
struct  icInt32Array
struct  icUInt64Array
struct  icInt64Array
struct  icU16Fixed16Array
struct  icS15Fixed16Array
struct  icDateTimeNumber
struct  icXYZNumber
struct  icXYZArray
struct  icChromaticityNumber
struct  icResponse16Number
struct  icPositionNumber
struct  icCurve
struct  icParametricCurve
struct  icParametricCurveFull
struct  icData
struct  icLut16
struct  icLut8
struct  icCLutStruct
struct  icLutAtoB
struct  icLutBtoA
struct  icMeasurement
struct  icNamedColor2Entry
struct  icNamedColor2
struct  icDescStruct
struct  icProfileSequenceDesc
struct  icTextDescription
struct  icScreeningData
struct  icScreening
struct  icText
struct  icUcrBgCurve
struct  icUcrBg
struct  icViewingCondition
struct  icCrdInfo
struct  icColorantOrder
struct  icColorantTableEntry
struct  icColorantTable
struct  icTagBase
struct  icCurveType
struct  icParametricCurveType
struct  icParametricCurveFullType
struct  icDataType
struct  icDateTimeType
struct  icLut16Type
struct  icLut8Type
struct  icLutAtoBType
struct  icLutBtoAType
struct  icMeasurementType
struct  icNamedColor2Type
struct  icProfileSequenceDescType
struct  icTextDescriptionType
struct  icS15Fixed16ArrayType
struct  icScreeningType
struct  icSignatureType
struct  icTextType
struct  icU16Fixed16ArrayType
struct  icUcrBgType
struct  icUInt16ArrayType
struct  icUInt32ArrayType
struct  icUInt64ArrayType
struct  icUInt8ArrayType
struct  icViewingConditionType
struct  icXYZType
struct  icCrdInfoType
struct  icColorantOrderType
struct  icColorantTableType
struct  icChromaticAdaptationType
struct  icMultiLocalizedUnicodeEntry
struct  icMultiLocalizedUnicodeType
struct  icTag
struct  icTagList
union  icProfileID
struct  icHeader
struct  icProfile

Defines

#define icMagicNumber   0x61637370
#define icVersionNumber   0x02000000
#define icVersionNumberV2_1   0x02100000
#define icVersionNumberV4   0x04000000
#define icVersionNumberV4_2   0x04200000
#define icPrtrDefaultScreensFalse   0x00000000
#define icPrtrDefaultScreensTrue   0x00000001
#define icLinesPerInch   0x00000002
#define icLinesPerCm   0x00000000
#define icReflective   0x00000000
#define icTransparency   0x00000001
#define icGlossy   0x00000000
#define icMatte   0x00000002
#define icMediaPositive   0x00000000
#define icMediaNegative   0x00000004
#define icMediaColour   0x00000000
#define icMediaBlackAndWhite   0x00000008
#define icEmbeddedProfileFalse   0x00000000
#define icEmbeddedProfileTrue   0x00000001
#define icUseAnywhere   0x00000000
#define icUseWithEmbeddedDataOnly   0x00000002
#define icAsciiData   0x00000000
#define icBinaryData   0x00000001
#define icAny   1
#define icMaxFloat32Number   3.402823466e+38F
#define icMinFloat32Number   -3.402823466e+38F
#define icSigUnknownTag   ((icTagSignature) 0x3f3f3f3f)
#define icMaxEnumTag   ((icTagSignature) 0xFFFFFFFF)
#define icMaxEnumTechnology   ((icTechnologySignature) 0xFFFFFFFF)
#define icSigUnknownType   ((icTagTypeSignature) 0x3f3f3f3f)
#define icMaxEnumType   ((icTagTypeSignature) 0xFFFFFFFF)
#define icSigUnknownElemType   ((icElemTypeSignature) 0x3f3f3f3f)
#define icMaxEnumElemType   ((icElemTypeSignature) 0xFFFFFFFF)
#define icSigMCH1Data   ((icColorSpaceSignature) 0x31434C52)
#define icSigMCHGData   ((icColorSpaceSignature) 0x47434C52)
#define icSig1colorData   ((icColorSpaceSignature) 0x31434C52)
#define icSig16colorData   ((icColorSpaceSignature) 0x47434C52)
#define icSigGamutData   ((icColorSpaceSignature) 0x67616D74)
#define icSigUnknownData   ((icColorSpaceSignature) 0x3f3f3f3f)
#define icMaxEnumData   ((icColorSpaceSignature) 0xFFFFFFFF)
#define icMaxEnumClass   ((icProfileClassSignature) 0xFFFFFFFF)
#define icMaxEnumPlatform   ((icPlatformSignature) 0xFFFFFFFF)
#define icMaxEnumReferenceMediumGamut   ((icReferenceMediumGamutSignature 0xFFFFFFFF)
#define icMaxEnumColorimetricIntentImageState   ((icColorimetricIntentImageStateSignature 0xFFFFFFFF)
#define icMaxCurveSegSignature   ((icCurveSegSignature 0xFFFFFFFF)
#define icMaxCurveElemSignature   ((icCurveElemSignature 0xFFFFFFFF)
#define icSigAcsZero   ((icAcsSignature) 0x00000000)
#define icMaxEnumFlare   ((icMeasurementFlare) 0xFFFFFFFF)
#define icMaxFlare   ((icMeasurementFlare) 0xFFFFFFFF)
#define icMaxEnumGeometry   ((icMeasurementGeometry) 0xFFFFFFFF)
#define icMaxGeometry   ((icMeasurementGeometry) 0xFFFFFFFF)
#define icUnknownIntent   ((icRenderingIntent) 0x3f3f3f3f)
#define icMaxEnumIntent   ((icRenderingIntent) 0xFFFFFFFF)
#define icMaxEnumSpot   ((icSpotShape) 0xFFFFFFFF)
#define icMaxEnumStdObs   ((icStandardObserver) 0xFFFFFFFF)
#define icMaxStdObs   ((icStandardObserver) 0xFFFFFFFF)
#define icMaxEnumIlluminant   ((icIlluminant) 0xFFFFFFFF)
#define icMaxEnumIluminant   ((icIlluminant) 0xFFFFFFFF)
#define icMaxEnumLanguageCode   ((icEnumLanguageCode) 0xFFFF)
#define icMaxEnumCountryCode   ((icEnumCountryCode) 0xFFFF)
#define icMaxEnumMeasurmentUnitSig   ((icMeasurementUnitSig) 0xffffffff)
#define icMaxEnumColorant   ((icColorantEncoding) 0xFFFF)

Typedefs

typedef unsigned char icUInt8Number
typedef unsigned short icUInt16Number
typedef unsigned long icUInt32Number
typedef icUInt32Number icUInt64Number [2]
typedef icUInt32Number icSignature
typedef char icInt8Number
typedef short icInt16Number
typedef long icInt32Number
typedef icInt32Number icInt64Number [2]
typedef icInt32Number icS15Fixed16Number
typedef icUInt32Number icU16Fixed16Number
typedef float icFloat32Number
typedef double icFloat64Number
typedef icSignature icAcsSignature
typedef icUInt16Number icLanguageCode
typedef icUInt16Number icCountryCode

Enumerations

enum  icTagSignature {
  icSigAToB0Tag = 0x41324230, icSigAToB1Tag = 0x41324231, icSigAToB2Tag = 0x41324232, icSigBlueColorantTag = 0x6258595A,
  icSigBlueMatrixColumnTag = 0x6258595A, icSigBlueTRCTag = 0x62545243, icSigBToA0Tag = 0x42324130, icSigBToA1Tag = 0x42324131,
  icSigBToA2Tag = 0x42324132, icSigCalibrationDateTimeTag = 0x63616C74, icSigCharTargetTag = 0x74617267, icSigChromaticAdaptationTag = 0x63686164,
  icSigChromaticityTag = 0x6368726D, icSigColorantOrderTag = 0x636C726F, icSigColorantTableTag = 0x636C7274, icSigColorantTableOutTag = 0x636C6F74,
  icSigColorimetricIntentImageStateTag = 0x63696973, icSigCopyrightTag = 0x63707274, icSigCrdInfoTag = 0x63726469, icSigDataTag = 0x64617461,
  icSigDateTimeTag = 0x6474696D, icSigDeviceMfgDescTag = 0x646D6E64, icSigDeviceModelDescTag = 0x646D6464, icSigDeviceSettingsTag = 0x64657673,
  icSigDToB0Tag = 0x44324230, icSigDToB1Tag = 0x44324231, icSigDToB2Tag = 0x44324232, icSigDToB3Tag = 0x44324233,
  icSigBToD0Tag = 0x42324430, icSigBToD1Tag = 0x42324431, icSigBToD2Tag = 0x42324432, icSigBToD3Tag = 0x42324433,
  icSigGamutTag = 0x67616D74, icSigGrayTRCTag = 0x6b545243, icSigGreenColorantTag = 0x6758595A, icSigGreenMatrixColumnTag = 0x6758595A,
  icSigGreenTRCTag = 0x67545243, icSigLuminanceTag = 0x6C756d69, icSigMeasurementTag = 0x6D656173, icSigMediaBlackPointTag = 0x626B7074,
  icSigMediaWhitePointTag = 0x77747074, icSigNamedColor2Tag = 0x6E636C32, icSigOutputResponseTag = 0x72657370, icSigPerceptualRenderingIntentGamutTag = 0x72696730,
  icSigPreview0Tag = 0x70726530, icSigPreview1Tag = 0x70726531, icSigPreview2Tag = 0x70726532, icSigProfileDescriptionTag = 0x64657363,
  icSigProfileSequenceDescTag = 0x70736571, icSigProfileSequceIdTag = 0x70736964, icSigPs2CRD0Tag = 0x70736430, icSigPs2CRD1Tag = 0x70736431,
  icSigPs2CRD2Tag = 0x70736432, icSigPs2CRD3Tag = 0x70736433, icSigPs2CSATag = 0x70733273, icSigPs2RenderingIntentTag = 0x70733269,
  icSigRedColorantTag = 0x7258595A, icSigRedMatrixColumnTag = 0x7258595A, icSigRedTRCTag = 0x72545243, icSigSaturationRenderingIntentGamutTag = 0x72696732,
  icSigScreeningDescTag = 0x73637264, icSigScreeningTag = 0x7363726E, icSigTechnologyTag = 0x74656368, icSigUcrBgTag = 0x62666420,
  icSigViewingCondDescTag = 0x76756564, icSigViewingConditionsTag = 0x76696577
}
enum  icTechnologySignature {
  icSigDigitalCamera = 0x6463616D, icSigFilmScanner = 0x6673636E, icSigReflectiveScanner = 0x7273636E, icSigInkJetPrinter = 0x696A6574,
  icSigThermalWaxPrinter = 0x74776178, icSigElectrophotographicPrinter = 0x6570686F, icSigElectrostaticPrinter = 0x65737461, icSigDyeSublimationPrinter = 0x64737562,
  icSigPhotographicPaperPrinter = 0x7270686F, icSigFilmWriter = 0x6670726E, icSigVideoMonitor = 0x7669646D, icSigVideoCamera = 0x76696463,
  icSigProjectionTelevision = 0x706A7476, icSigCRTDisplay = 0x43525420, icSigPMDisplay = 0x504D4420, icSigAMDisplay = 0x414D4420,
  icSigPhotoCD = 0x4B504344, icSigPhotoImageSetter = 0x696D6773, icSigGravure = 0x67726176, icSigOffsetLithography = 0x6F666673,
  icSigSilkscreen = 0x73696C6B, icSigFlexography = 0x666C6578, icSigMotionPictureFilmScanner = 0x6D706673, icSigMotionPictureFilmRecorder = 0x6D706672,
  icSigDigitalMotionPictureCamera = 0x646D7063, icSigDigitalCinemaProjector = 0x64636A70
}
enum  icTagTypeSignature {
  icSigChromaticityType = 0x6368726D, icSigColorantOrderType = 0x636C726F, icSigColorantTableType = 0x636C7274, icSigCrdInfoType = 0x63726469,
  icSigCurveType = 0x63757276, icSigDataType = 0x64617461, icSigDateTimeType = 0x6474696D, icSigDeviceSettingsType = 0x64657673,
  icSigLut16Type = 0x6d667432, icSigLut8Type = 0x6d667431, icSigLutAtoBType = 0x6d414220, icSigLutBtoAType = 0x6d424120,
  icSigMeasurementType = 0x6D656173, icSigMultiLocalizedUnicodeType = 0x6D6C7563, icSigMultiProcessElementType = 0x6D706574, icSigNamedColor2Type = 0x6E636C32,
  icSigParametricCurveType = 0x70617261, icSigProfileSequenceDescType = 0x70736571, icSigProfileSequceIdType = 0x70736964, icSigResponseCurveSet16Type = 0x72637332,
  icSigS15Fixed16ArrayType = 0x73663332, icSigScreeningType = 0x7363726E, icSigSignatureType = 0x73696720, icSigTextType = 0x74657874,
  icSigTextDescriptionType = 0x64657363, icSigU16Fixed16ArrayType = 0x75663332, icSigUcrBgType = 0x62666420, icSigUInt16ArrayType = 0x75693136,
  icSigUInt32ArrayType = 0x75693332, icSigUInt64ArrayType = 0x75693634, icSigUInt8ArrayType = 0x75693038, icSigViewingConditionsType = 0x76696577,
  icSigXYZType = 0x58595A20, icSigXYZArrayType = 0x58595A20
}
enum  icElemTypeSignature {
  icSigCurveSetElemType = 0x63767374, icSigMatrixElemType = 0x6D617466, icSigCLutElemType = 0x636C7574, icSigBAcsElemType = 0x62414353,
  icSigEAcsElemType = 0x65414353
}
enum  icColorSpaceSignature {
  icSigXYZData = 0x58595A20, icSigLabData = 0x4C616220, icSigLuvData = 0x4C757620, icSigYCbCrData = 0x59436272,
  icSigYxyData = 0x59787920, icSigRgbData = 0x52474220, icSigGrayData = 0x47524159, icSigHsvData = 0x48535620,
  icSigHlsData = 0x484C5320, icSigCmykData = 0x434D594B, icSigCmyData = 0x434D5920, icSigMCH2Data = 0x32434C52,
  icSigMCH3Data = 0x33434C52, icSigMCH4Data = 0x34434C52, icSigMCH5Data = 0x35434C52, icSigMCH6Data = 0x36434C52,
  icSigMCH7Data = 0x37434C52, icSigMCH8Data = 0x38434C52, icSigMCH9Data = 0x39434C52, icSigMCHAData = 0x41434C52,
  icSigMCHBData = 0x42434C52, icSigMCHCData = 0x43434C52, icSigMCHDData = 0x44434C52, icSigMCHEData = 0x45434C52,
  icSigMCHFData = 0x46434C52, icSigNamedData = 0x6e6d636c, icSig2colorData = 0x32434C52, icSig3colorData = 0x33434C52,
  icSig4colorData = 0x34434C52, icSig5colorData = 0x35434C52, icSig6colorData = 0x36434C52, icSig7colorData = 0x37434C52,
  icSig8colorData = 0x38434C52, icSig9colorData = 0x39434C52, icSig10colorData = 0x41434C52, icSig11colorData = 0x42434C52,
  icSig12colorData = 0x43434C52, icSig13colorData = 0x44434C52, icSig14colorData = 0x45434C52, icSig15colorData = 0x46434C52
}
enum  icProfileClassSignature {
  icSigInputClass = 0x73636E72, icSigDisplayClass = 0x6D6E7472, icSigOutputClass = 0x70727472, icSigLinkClass = 0x6C696E6B,
  icSigAbstractClass = 0x61627374, icSigColorSpaceClass = 0x73706163, icSigNamedColorClass = 0x6e6d636c
}
enum  icPlatformSignature {
  icSigMacintosh = 0x4150504C, icSigMicrosoft = 0x4D534654, icSigSolaris = 0x53554E57, icSigSGI = 0x53474920,
  icSigTaligent = 0x54474E54
}
enum  icReferenceMediumGamutSignature { icSigPerceptualReferenceMediumGamut = 0x70726d67 }
enum  icColorimetricIntentImageStateSignature {
  icSigSceneColorimetryEstimates = 0x73636F65, icSigSceneAppearanceEstimates = 0x73617065, icSigFocalPlaneColorimetryEstimates = 0x66706365, icSigReflectionHardcopyOriginalColorimetry = 0x72686F63,
  icSigReflectionPrintOutputColorimetry = 0x72706F63
}
enum  icCurveSegSignature { icSigFormulaCurveSeg = 0x70617266, icSigSampledCurveSeg = 0x73616D66 }
enum  icCurveElemSignature { icSigSementedCurve = 0x63757266 }
enum  icMeasurementFlare { icFlare0 = 0x00000000, icFlare100 = 0x00000001 }
enum  icMeasurementGeometry { icGeometryUnknown = 0x00000000, icGeometry045or450 = 0x00000001, icGeometry0dord0 = 0x00000002 }
enum  icRenderingIntent { icPerceptual = 0, icRelativeColorimetric = 1, icSaturation = 2, icAbsoluteColorimetric = 3 }
enum  icSpotShape {
  icSpotShapeUnknown = 0, icSpotShapePrinterDefault = 1, icSpotShapeRound = 2, icSpotShapeDiamond = 3,
  icSpotShapeEllipse = 4, icSpotShapeLine = 5, icSpotShapeSquare = 6, icSpotShapeCross = 7
}
enum  icStandardObserver { icStdObsUnknown = 0x00000000, icStdObs1931TwoDegrees = 0x00000001, icStdObs1964TenDegrees = 0x00000002 }
enum  icIlluminant {
  icIlluminantUnknown = 0x00000000, icIlluminantD50 = 0x00000001, icIlluminantD65 = 0x00000002, icIlluminantD93 = 0x00000003,
  icIlluminantF2 = 0x00000004, icIlluminantD55 = 0x00000005, icIlluminantA = 0x00000006, icIlluminantEquiPowerE = 0x00000007,
  icIlluminantF8 = 0x00000008
}
enum  icEnumLanguageCode {
  icLanguageCodeEnglish = 0x656E, icLanguageCodeGerman = 0x6465, icLanguageCodeItalian = 0x6974, icLanguageCodeDutch = 0x6E6C,
  icLanguageCodeSweden = 0x7376, icLanguageCodeSpanish = 0x6573, icLanguageCodeDanish = 0x6461, icLanguageCodeNorwegian = 0x6E6F,
  icLanguageCodeJapanese = 0x6A61, icLanguageCodeFinnish = 0x6669, icLanguageCodeTurkish = 0x7472, icLanguageCodeKorean = 0x6B6F,
  icLanguageCodeChinese = 0x7A68, icLanguageCodeFrench = 0x6672
}
enum  icEnumCountryCode {
  icCountryCodeUSA = 0x5553, icCountryCodeUnitedKingdom = 0x554B, icCountryCodeGermany = 0x4445, icCountryCodeItaly = 0x4954,
  icCountryCodeNetherlands = 0x4E4C, icCountryCodeSpain = 0x4543, icCountryCodeDenmark = 0x444B, icCountryCodeNorway = 0x4E4F,
  icCountryCodeJapan = 0x4A50, icCountryCodeFinland = 0x4649, icCountryCodeTurkey = 0x5452, icCountryCodeKorea = 0x4B52,
  icCountryCodeChina = 0x434E, icCountryCodeTaiwan = 0x5457, icCountryCodeFrance = 0x4652
}
enum  icMeasurementUnitSig {
  icSigStatusA = 0x53746141, icSigStatusE = 0x53746145, icSigStatusI = 0x53746149, icSigStatusT = 0x53746154,
  icSigStatusM = 0x5374614D, icSigDN = 0x444E2020, icSigDNP = 0x444E2050, icSigDNN = 0x444E4E20,
  icSigDNNP = 0x444E4E50
}
enum  icColorantEncoding {
  icColorantUnknown = 0x0000, icColorantITU = 0x0001, icColorantSMPTE = 0x0002, icColorantEBU = 0x0003,
  icColorantP22 = 0x0004
}
enum  icMSFTDevSetSig { icMSFTDevSetResolution = 0x72736C6E, icMSFTDevSetMediaType = 0x6D747970, icMSFTDevSetMediaHalftone = 0x6866746E }
enum  icDMMediaType { icDMMediaStandard = 0x0001, icDMMediaTransparancy = 0x0002, icDMMediaGlossy = 0x0003, icDMMediaUser = 0x0100 }
enum  icDMHalftoneType {
  icDMDitherNone = 0x0001, icDMDitherCoarse = 0x0002, icDMDitherFine = 0x0003, icDMDitherLineArt = 0x0004,
  icDMDitherErrorDiffusion = 0x0005, icDMDitherReserved6 = 0x0006, icDMDitherReserved7 = 0x0007, icDMDitherReserved8 = 0x0008,
  icDMDitherReserved9 = 0x0009, icDMDitherGrayscale = 0x000A, icDMDitherUser = 0x0100
}


Detailed Description

File: icProfileHeader.h

Contains: ICC profile definitions and structures including Version 4 extensions

Copyright: see ICC Software License

This version of the header file corresponds to the profile specification version 4.2 as defined in ICC Specificion ICC.1:2004-04.

Some definitions only provided by version 2.x profiles are also included.

This header file should not be considered as a replacement for the ICC profile specification. The ICC profile specification should always be considered the ULTIMATE authority related to the specifiation for contents in ICC profile file. Conflicts between this header file and the ICC profile specification (if they exist) should be deferred to the ICC profile specification.

All header file entries are pre-fixed with "ic" to help avoid name space collisions. Signatures are pre-fixed with icSig.

Note: This header assumes that int is at least a 32 bit quantity

The structures defined in this header file were created to represent a description of an ICC profile on disk. Rather than use pointers a technique is used where a single byte array was placed at the end of each structure. This allows us in "C" to extend the structure by allocating more data than is needed to account for variable length structures.

This also ensures that data following is allocated contiguously and makes it easier to write and read data from the file.

For example to allocate space for a 256 count length UCR and BG array, and fill the allocated data. Note strlen + 1 to remember NULL terminator.

icUcrBgCurve *ucrCurve, *bgCurve; int ucr_nbytes, bg_nbytes, string_bytes; icUcrBg *ucrBgWrite; char ucr_string[100], *ucr_char;

strcpy(ucr_string, "Example ucrBG curves"); ucr_nbytes = sizeof(icUInt32Number) + (UCR_CURVE_SIZE * sizeof(icUInt16Number)); bg_nbytes = sizeof(icUInt32Number) + (BG_CURVE_SIZE * sizeof(icUInt16Number)); string_bytes = strlen(ucr_string) + 1;

ucrBgWrite = (icUcrBg *)malloc( (ucr_nbytes + bg_nbytes + string_bytes));

ucrCurve = (icUcrBgCurve *)ucrBgWrite->data; ucrCurve->count = UCR_CURVE_SIZE; for (i=0; i<ucrCurve->count; i++) ucrCurve->curve[i] = (icUInt16Number)i;

bgCurve = (icUcrBgCurve *)((char *)ucrCurve + ucr_nbytes); bgCurve->count = BG_CURVE_SIZE; for (i=0; i<bgCurve->count; i++) bgCurve->curve[i] = 255 - (icUInt16Number)i;

ucr_char = (char *)((char *)bgCurve + bg_nbytes); memcpy(ucr_char, ucr_string, string_bytes);

Many of the structures contain variable length arrays. This is represented by the use of the convention.

type data[icAny];


Define Documentation

#define icAny   1
 

Define used to indicate that this is a variable length array

#define icAsciiData   0x00000000
 

Ascii or Binary data

#define icBinaryData   0x00000001
 

#define icEmbeddedProfileFalse   0x00000000
 

Profile header flags, the low 16 bits are reserved for consortium use.

#define icEmbeddedProfileTrue   0x00000001
 

#define icGlossy   0x00000000
 

#define icLinesPerCm   0x00000000
 

#define icLinesPerInch   0x00000002
 

#define icMagicNumber   0x61637370
 

Defines used in the specification

#define icMatte   0x00000002
 

#define icMaxCurveElemSignature   ((icCurveElemSignature 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxCurveSegSignature   ((icCurveSegSignature 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumClass   ((icProfileClassSignature) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumColorant   ((icColorantEncoding) 0xFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumColorimetricIntentImageState   ((icColorimetricIntentImageStateSignature 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumCountryCode   ((icEnumCountryCode) 0xFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumData   ((icColorSpaceSignature) 0xFFFFFFFF)
 

#define icMaxEnumElemType   ((icElemTypeSignature) 0xFFFFFFFF)
 

#define icMaxEnumFlare   ((icMeasurementFlare) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumGeometry   ((icMeasurementGeometry) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumIlluminant   ((icIlluminant) 0xFFFFFFFF)
 

Convenience Enum Definitions - Not defined in ICC specification

#define icMaxEnumIluminant   ((icIlluminant) 0xFFFFFFFF)
 

#define icMaxEnumIntent   ((icRenderingIntent) 0xFFFFFFFF)
 

#define icMaxEnumLanguageCode   ((icEnumLanguageCode) 0xFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumMeasurmentUnitSig   ((icMeasurementUnitSig) 0xffffffff)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumPlatform   ((icPlatformSignature) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumReferenceMediumGamut   ((icReferenceMediumGamutSignature 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumSpot   ((icSpotShape) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumStdObs   ((icStandardObserver) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumTag   ((icTagSignature) 0xFFFFFFFF)
 

#define icMaxEnumTechnology   ((icTechnologySignature) 0xFFFFFFFF)
 

Convenience Enum Definition - Not defined in ICC specification

#define icMaxEnumType   ((icTagTypeSignature) 0xFFFFFFFF)
 

#define icMaxFlare   ((icMeasurementFlare) 0xFFFFFFFF)
 

#define icMaxFloat32Number   3.402823466e+38F
 

Useful macros for defining Curve Segment breakpoints *

#define icMaxGeometry   ((icMeasurementGeometry) 0xFFFFFFFF)
 

#define icMaxStdObs   ((icStandardObserver) 0xFFFFFFFF)
 

#define icMediaBlackAndWhite   0x00000008
 

#define icMediaColour   0x00000000
 

#define icMediaNegative   0x00000004
 

#define icMediaPositive   0x00000000
 

#define icMinFloat32Number   -3.402823466e+38F
 

#define icPrtrDefaultScreensFalse   0x00000000
 

Screening Encodings

#define icPrtrDefaultScreensTrue   0x00000001
 

#define icReflective   0x00000000
 

Device attributes, currently defined values correspond to the low 4 bytes of the 8 byte attribute quantity, see the header for their location.

#define icSig16colorData   ((icColorSpaceSignature) 0x47434C52)
 

#define icSig1colorData   ((icColorSpaceSignature) 0x31434C52)
 

#define icSigAcsZero   ((icAcsSignature) 0x00000000)
 

Convenience Definition - Not defined in ICC specification

#define icSigGamutData   ((icColorSpaceSignature) 0x67616D74)
 

Convenience Enum Definitions - Not defined in ICC specification

#define icSigMCH1Data   ((icColorSpaceSignature) 0x31434C52)
 

Defined by previous versions of header file but not defined in ICC specification

#define icSigMCHGData   ((icColorSpaceSignature) 0x47434C52)
 

#define icSigUnknownData   ((icColorSpaceSignature) 0x3f3f3f3f)
 

#define icSigUnknownElemType   ((icElemTypeSignature) 0x3f3f3f3f)
 

Convenience Enum Definitions - Not defined in proposal

#define icSigUnknownTag   ((icTagSignature) 0x3f3f3f3f)
 

Convenience Enum Definitions - Not defined in ICC specification

#define icSigUnknownType   ((icTagTypeSignature) 0x3f3f3f3f)
 

Convenience Enum Definitions - Not defined in ICC specification

#define icTransparency   0x00000001
 

#define icUnknownIntent   ((icRenderingIntent) 0x3f3f3f3f)
 

Convenience Enum Definitions - Not defined in ICC specification

#define icUseAnywhere   0x00000000
 

#define icUseWithEmbeddedDataOnly   0x00000002
 

#define icVersionNumber   0x02000000
 

#define icVersionNumberV2_1   0x02100000
 

#define icVersionNumberV4   0x04000000
 

#define icVersionNumberV4_2   0x04200000
 


Typedef Documentation

typedef icSignature icAcsSignature
 

MPE Future Extension Acs signature

typedef icUInt16Number icCountryCode
 

typedef float icFloat32Number
 

IEEE float storage numbers

typedef double icFloat64Number
 

typedef short icInt16Number
 

typedef long icInt32Number
 

typedef icInt32Number icInt64Number[2]
 

typedef char icInt8Number
 

Signed numbers

typedef icUInt16Number icLanguageCode
 

typedef icInt32Number icS15Fixed16Number
 

Fixed numbers

typedef icUInt32Number icSignature
 

typedef icUInt32Number icU16Fixed16Number
 

typedef unsigned short icUInt16Number
 

typedef unsigned long icUInt32Number
 

typedef icUInt32Number icUInt64Number[2]
 

typedef unsigned char icUInt8Number
 

Unsigned integer numbers


Enumeration Type Documentation

enum icColorantEncoding
 

Colorant and Phosphor Encodings used in chromaticity type

Enumeration values:
icColorantUnknown 
icColorantITU 
icColorantSMPTE 
icColorantEBU 
icColorantP22 

enum icColorimetricIntentImageStateSignature
 

Colorimetric Intent Image State Gamut Signatures

Enumeration values:
icSigSceneColorimetryEstimates 
icSigSceneAppearanceEstimates 
icSigFocalPlaneColorimetryEstimates 
icSigReflectionHardcopyOriginalColorimetry 
icSigReflectionPrintOutputColorimetry 

enum icColorSpaceSignature
 

Color Space Signatures. Note that only icSigXYZData and icSigLabData are valid Profile Connection Spaces (PCSs)

Enumeration values:
icSigXYZData 
icSigLabData 
icSigLuvData 
icSigYCbCrData 
icSigYxyData 
icSigRgbData 
icSigGrayData 
icSigHsvData 
icSigHlsData 
icSigCmykData 
icSigCmyData 
icSigMCH2Data 
icSigMCH3Data 
icSigMCH4Data 
icSigMCH5Data 
icSigMCH6Data 
icSigMCH7Data 
icSigMCH8Data 
icSigMCH9Data 
icSigMCHAData 
icSigMCHBData 
icSigMCHCData 
icSigMCHDData 
icSigMCHEData 
icSigMCHFData 
icSigNamedData 
icSig2colorData 
icSig3colorData 
icSig4colorData 
icSig5colorData 
icSig6colorData 
icSig7colorData 
icSig8colorData 
icSig9colorData 
icSig10colorData 
icSig11colorData 
icSig12colorData 
icSig13colorData 
icSig14colorData 
icSig15colorData 

enum icCurveElemSignature
 

MPE Curve Set Curve signature

Enumeration values:
icSigSementedCurve 

enum icCurveSegSignature
 

MPE Curve segment Signatures

Enumeration values:
icSigFormulaCurveSeg 
icSigSampledCurveSeg 

enum icDMHalftoneType
 

DeviceSettingsType media encodings for Microsoft 'msft' platform

Enumeration values:
icDMDitherNone 
icDMDitherCoarse 
icDMDitherFine 
icDMDitherLineArt 
icDMDitherErrorDiffusion 
icDMDitherReserved6 
icDMDitherReserved7 
icDMDitherReserved8 
icDMDitherReserved9 
icDMDitherGrayscale 
icDMDitherUser 

enum icDMMediaType
 

DeviceSettingsType media encodings for Microsoft 'msft' platform

Enumeration values:
icDMMediaStandard 
icDMMediaTransparancy 
icDMMediaGlossy 
icDMMediaUser 

enum icElemTypeSignature
 

Element type signatures

Enumeration values:
icSigCurveSetElemType 
icSigMatrixElemType 
icSigCLutElemType 
icSigBAcsElemType 
icSigEAcsElemType 

enum icEnumCountryCode
 

A not so exhaustive list of country codes. Helpful website: http://dev.krook.org ld.html

Enumeration values:
icCountryCodeUSA 
icCountryCodeUnitedKingdom 
icCountryCodeGermany 
icCountryCodeItaly 
icCountryCodeNetherlands 
icCountryCodeSpain 
icCountryCodeDenmark 
icCountryCodeNorway 
icCountryCodeJapan 
icCountryCodeFinland 
icCountryCodeTurkey 
icCountryCodeKorea 
icCountryCodeChina 
icCountryCodeTaiwan 
icCountryCodeFrance 

enum icEnumLanguageCode
 

A not so exhaustive list of language codes

Enumeration values:
icLanguageCodeEnglish 
icLanguageCodeGerman 
icLanguageCodeItalian 
icLanguageCodeDutch 
icLanguageCodeSweden 
icLanguageCodeSpanish 
icLanguageCodeDanish 
icLanguageCodeNorwegian 
icLanguageCodeJapanese 
icLanguageCodeFinnish 
icLanguageCodeTurkish 
icLanguageCodeKorean 
icLanguageCodeChinese 
icLanguageCodeFrench 

enum icIlluminant
 

Pre-defined illuminants, used in measurement and viewing conditions type

Enumeration values:
icIlluminantUnknown 
icIlluminantD50 
icIlluminantD65 
icIlluminantD93 
icIlluminantF2 
icIlluminantD55 
icIlluminantA 
icIlluminantEquiPowerE 
icIlluminantF8 

enum icMeasurementFlare
 

Measurement Flare, used in the measurmentType tag

Enumeration values:
icFlare0 
icFlare100 

enum icMeasurementGeometry
 

Measurement Geometry, used in the measurmentType tag

Enumeration values:
icGeometryUnknown 
icGeometry045or450 
icGeometry0dord0 

enum icMeasurementUnitSig
 

Measurement Unit Signatures used in ResponseCurveSet16Type

Enumeration values:
icSigStatusA 
icSigStatusE 
icSigStatusI 
icSigStatusT 
icSigStatusM 
icSigDN 
icSigDNP 
icSigDNN 
icSigDNNP 

enum icMSFTDevSetSig
 

DeviceSettingsType structure ID signatures for Microsoft 'msft' platform

Enumeration values:
icMSFTDevSetResolution 
icMSFTDevSetMediaType 
icMSFTDevSetMediaHalftone 

enum icPlatformSignature
 

Platform Signatures

Enumeration values:
icSigMacintosh 
icSigMicrosoft 
icSigSolaris 
icSigSGI 
icSigTaligent 

enum icProfileClassSignature
 

profileClass enumerations

Enumeration values:
icSigInputClass 
icSigDisplayClass 
icSigOutputClass 
icSigLinkClass 
icSigAbstractClass 
icSigColorSpaceClass 
icSigNamedColorClass 

enum icReferenceMediumGamutSignature
 

Rendering Intent Gamut Signatures

Enumeration values:
icSigPerceptualReferenceMediumGamut 

enum icRenderingIntent
 

Rendering Intents, used in the profile header

Enumeration values:
icPerceptual 
icRelativeColorimetric 
icSaturation 
icAbsoluteColorimetric 

enum icSpotShape
 

Different Spot Shapes currently defined, used for screeningType

Enumeration values:
icSpotShapeUnknown 
icSpotShapePrinterDefault 
icSpotShapeRound 
icSpotShapeDiamond 
icSpotShapeEllipse 
icSpotShapeLine 
icSpotShapeSquare 
icSpotShapeCross 

enum icStandardObserver
 

Standard Observer, used in the measurmentType tag

Enumeration values:
icStdObsUnknown 
icStdObs1931TwoDegrees 
icStdObs1964TenDegrees 

enum icTagSignature
 

public tags and sizes

Enumeration values:
icSigAToB0Tag 
icSigAToB1Tag 
icSigAToB2Tag 
icSigBlueColorantTag 
icSigBlueMatrixColumnTag 
icSigBlueTRCTag 
icSigBToA0Tag 
icSigBToA1Tag 
icSigBToA2Tag 
icSigCalibrationDateTimeTag 
icSigCharTargetTag 
icSigChromaticAdaptationTag 
icSigChromaticityTag 
icSigColorantOrderTag 
icSigColorantTableTag 
icSigColorantTableOutTag 
icSigColorimetricIntentImageStateTag 
icSigCopyrightTag 
icSigCrdInfoTag 
icSigDataTag 
icSigDateTimeTag 
icSigDeviceMfgDescTag 
icSigDeviceModelDescTag 
icSigDeviceSettingsTag 
icSigDToB0Tag 
icSigDToB1Tag 
icSigDToB2Tag 
icSigDToB3Tag 
icSigBToD0Tag 
icSigBToD1Tag 
icSigBToD2Tag 
icSigBToD3Tag 
icSigGamutTag 
icSigGrayTRCTag 
icSigGreenColorantTag 
icSigGreenMatrixColumnTag 
icSigGreenTRCTag 
icSigLuminanceTag 
icSigMeasurementTag 
icSigMediaBlackPointTag 
icSigMediaWhitePointTag 
icSigNamedColor2Tag 
icSigOutputResponseTag 
icSigPerceptualRenderingIntentGamutTag 
icSigPreview0Tag 
icSigPreview1Tag 
icSigPreview2Tag 
icSigProfileDescriptionTag 
icSigProfileSequenceDescTag 
icSigProfileSequceIdTag 
icSigPs2CRD0Tag 
icSigPs2CRD1Tag 
icSigPs2CRD2Tag 
icSigPs2CRD3Tag 
icSigPs2CSATag 
icSigPs2RenderingIntentTag 
icSigRedColorantTag 
icSigRedMatrixColumnTag 
icSigRedTRCTag 
icSigSaturationRenderingIntentGamutTag 
icSigScreeningDescTag 
icSigScreeningTag 
icSigTechnologyTag 
icSigUcrBgTag 
icSigViewingCondDescTag 
icSigViewingConditionsTag 

enum icTagTypeSignature
 

type signatures

Enumeration values:
icSigChromaticityType 
icSigColorantOrderType 
icSigColorantTableType 
icSigCrdInfoType 
icSigCurveType 
icSigDataType 
icSigDateTimeType 
icSigDeviceSettingsType 
icSigLut16Type 
icSigLut8Type 
icSigLutAtoBType 
icSigLutBtoAType 
icSigMeasurementType 
icSigMultiLocalizedUnicodeType 
icSigMultiProcessElementType 
icSigNamedColor2Type 
icSigParametricCurveType 
icSigProfileSequenceDescType 
icSigProfileSequceIdType 
icSigResponseCurveSet16Type 
icSigS15Fixed16ArrayType 
icSigScreeningType 
icSigSignatureType 
icSigTextType 
icSigTextDescriptionType 
icSigU16Fixed16ArrayType 
icSigUcrBgType 
icSigUInt16ArrayType 
icSigUInt32ArrayType 
icSigUInt64ArrayType 
icSigUInt8ArrayType 
icSigViewingConditionsType 
icSigXYZType 
icSigXYZArrayType 

enum icTechnologySignature
 

technology signature descriptions

Enumeration values:
icSigDigitalCamera 
icSigFilmScanner 
icSigReflectiveScanner 
icSigInkJetPrinter 
icSigThermalWaxPrinter 
icSigElectrophotographicPrinter 
icSigElectrostaticPrinter 
icSigDyeSublimationPrinter 
icSigPhotographicPaperPrinter 
icSigFilmWriter 
icSigVideoMonitor 
icSigVideoCamera 
icSigProjectionTelevision 
icSigCRTDisplay 
icSigPMDisplay 
icSigAMDisplay 
icSigPhotoCD 
icSigPhotoImageSetter 
icSigGravure 
icSigOffsetLithography 
icSigSilkscreen 
icSigFlexography 
icSigMotionPictureFilmScanner 
icSigMotionPictureFilmRecorder 
icSigDigitalMotionPictureCamera 
icSigDigitalCinemaProjector 


Generated on Tue Jun 26 17:51:44 2007 for IccProfLib by  doxygen 1.3.9.1