Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
IccCmm.h File Reference

File: IccCmm.h. More...

#include "IccProfile.h"
#include "IccTag.h"
#include "IccUtil.h"
#include "IccMatrixMath.h"
#include <list>
#include <cstring>
#include <cstdlib>
+ Include dependency graph for IccCmm.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define icPerceptualRefBlackX   0.00336
 
#define icPerceptualRefBlackY   0.0034731
 
#define icPerceptualRefBlackZ   0.00287
 
#define icPerceptualRefWhiteX   0.9642
 
#define icPerceptualRefWhiteY   1.0000
 
#define icPerceptualRefWhiteZ   0.8249
 

Enumerations

enum  icMCSConnectionType { icNoMCS = 0 , icToMCS = 1 , icFromMCS = 2 }
 
enum  icStatusCMM {
  icCmmStatBad = -1 , icCmmStatOk = 0 , icCmmStatCantOpenProfile = 1 , icCmmStatBadSpaceLink = 2 ,
  icCmmStatInvalidProfile = 3 , icCmmStatBadXform = 4 , icCmmStatInvalidLut = 5 , icCmmStatProfileMissingTag = 6 ,
  icCmmStatColorNotFound = 7 , icCmmStatIncorrectApply = 8 , icCmmStatBadColorEncoding = 9 , icCmmStatAllocErr = 10 ,
  icCmmStatBadLutType = 11 , icCmmStatIdentityXform = 12 , icCmmStatUnsupportedPcsLink = 13 , icCmmStatBadConnection = 14 ,
  icCmmStatBadTintXform = 15 , icCmmStatTooManySamples = 16 , icCmmStatBadMCSLink = 17
}
 CMM return status values. More...
 
enum  icXformInterp { icInterpLinear = 0 , icInterpTetrahedral = 1 }
 CMM Interpolation types. More...
 
enum  icXformLutType {
  icXformLutColor = 0x0 , icXformLutNamedColor = 0x1 , icXformLutPreview = 0x2 , icXformLutGamut = 0x3 ,
  icXformLutBPC = 0x4 , icXformLutBRDFParam = 0x5 , icXformLutBRDFDirect = 0x6 , icXformLutBRDFMcsParam = 0x7 ,
  icXformLutMCS = 0x8 , icXformLutColorimetric = 0x9 , icXformLutSpectral = 0xA
}
 CMM Xform LUT types. More...
 
enum  icXformType {
  icXformTypeMatrixTRC = 0 , icXformType3DLut = 1 , icXformType4DLut = 2 , icXformTypeNDLut = 3 ,
  icXformTypeNamedColor = 4 , icXformTypeMpe = 5 , icXformTypeMonochrome = 6 , icXformTypePCS = 0x7fffffe ,
  icXformTypeUnknown = 0x7ffffff
}
 

Detailed Description

File: IccCmm.h.

Contains: Header file for implementation of the CIccCmm class.

Version: V1

Copyright: (c) see ICC Software License

Definition in file IccCmm.h.

Macro Definition Documentation

◆ icPerceptualRefBlackX

#define icPerceptualRefBlackX   0.00336

Definition at line 139 of file IccCmm.h.

◆ icPerceptualRefBlackY

#define icPerceptualRefBlackY   0.0034731

Definition at line 140 of file IccCmm.h.

Referenced by CIccApplyBPC::CalcFactors().

◆ icPerceptualRefBlackZ

#define icPerceptualRefBlackZ   0.00287

Definition at line 141 of file IccCmm.h.

◆ icPerceptualRefWhiteX

#define icPerceptualRefWhiteX   0.9642

Definition at line 143 of file IccCmm.h.

Referenced by CIccApplyBPC::CalcFactors().

◆ icPerceptualRefWhiteY

#define icPerceptualRefWhiteY   1.0000

Definition at line 144 of file IccCmm.h.

Referenced by CIccApplyBPC::CalcFactors().

◆ icPerceptualRefWhiteZ

#define icPerceptualRefWhiteZ   0.8249

Definition at line 145 of file IccCmm.h.

Referenced by CIccApplyBPC::CalcFactors().

Enumeration Type Documentation

◆ icMCSConnectionType

Enumerator
icNoMCS 
icToMCS 
icFromMCS 

Definition at line 118 of file IccCmm.h.

118 {
119 icNoMCS = 0,
120 icToMCS = 1,
121 icFromMCS = 2
icMCSConnectionType
Definition IccCmm.h:118
@ icNoMCS
Definition IccCmm.h:119
@ icToMCS
Definition IccCmm.h:120
@ icFromMCS
Definition IccCmm.h:121

◆ icStatusCMM

CMM return status values.

Enumerator
icCmmStatBad 
icCmmStatOk 
icCmmStatCantOpenProfile 
icCmmStatBadSpaceLink 
icCmmStatInvalidProfile 
icCmmStatBadXform 
icCmmStatInvalidLut 
icCmmStatProfileMissingTag 
icCmmStatColorNotFound 
icCmmStatIncorrectApply 
icCmmStatBadColorEncoding 
icCmmStatAllocErr 
icCmmStatBadLutType 
icCmmStatIdentityXform 
icCmmStatUnsupportedPcsLink 
icCmmStatBadConnection 
icCmmStatBadTintXform 
icCmmStatTooManySamples 
icCmmStatBadMCSLink 

Definition at line 90 of file IccCmm.h.

90 {
91 icCmmStatBad = -1,
92 icCmmStatOk = 0,
icStatusCMM
CMM return status values.
Definition IccCmm.h:90
@ icCmmStatBadLutType
Definition IccCmm.h:103
@ icCmmStatInvalidProfile
Definition IccCmm.h:95
@ icCmmStatTooManySamples
Definition IccCmm.h:108
@ icCmmStatProfileMissingTag
Definition IccCmm.h:98
@ icCmmStatBadSpaceLink
Definition IccCmm.h:94
@ icCmmStatBadMCSLink
Definition IccCmm.h:109
@ icCmmStatIncorrectApply
Definition IccCmm.h:100
@ icCmmStatUnsupportedPcsLink
Definition IccCmm.h:105
@ icCmmStatBadColorEncoding
Definition IccCmm.h:101
@ icCmmStatCantOpenProfile
Definition IccCmm.h:93
@ icCmmStatBadConnection
Definition IccCmm.h:106
@ icCmmStatBadXform
Definition IccCmm.h:96
@ icCmmStatBad
Definition IccCmm.h:91
@ icCmmStatBadTintXform
Definition IccCmm.h:107
@ icCmmStatColorNotFound
Definition IccCmm.h:99
@ icCmmStatOk
Definition IccCmm.h:92
@ icCmmStatIdentityXform
Definition IccCmm.h:104
@ icCmmStatInvalidLut
Definition IccCmm.h:97
@ icCmmStatAllocErr
Definition IccCmm.h:102

◆ icXformInterp

CMM Interpolation types.

Enumerator
icInterpLinear 
icInterpTetrahedral 

Definition at line 113 of file IccCmm.h.

113 {
114 icInterpLinear = 0,
icXformInterp
CMM Interpolation types.
Definition IccCmm.h:113
@ icInterpTetrahedral
Definition IccCmm.h:115
@ icInterpLinear
Definition IccCmm.h:114

◆ icXformLutType

CMM Xform LUT types.

Enumerator
icXformLutColor 
icXformLutNamedColor 
icXformLutPreview 
icXformLutGamut 
icXformLutBPC 
icXformLutBRDFParam 
icXformLutBRDFDirect 
icXformLutBRDFMcsParam 
icXformLutMCS 
icXformLutColorimetric 
icXformLutSpectral 

Definition at line 125 of file IccCmm.h.

125 {
126 icXformLutColor = 0x0, //This is a combination of icXformLutColorimetric with icXformLutSpectral
128 icXformLutPreview = 0x2,
129 icXformLutGamut = 0x3,
130 icXformLutBPC = 0x4,
134 icXformLutMCS = 0x8,
136 icXformLutSpectral = 0xA,
icXformLutType
CMM Xform LUT types.
Definition IccCmm.h:125
@ icXformLutNamedColor
Definition IccCmm.h:127
@ icXformLutBRDFDirect
Definition IccCmm.h:132
@ icXformLutBRDFMcsParam
Definition IccCmm.h:133
@ icXformLutGamut
Definition IccCmm.h:129
@ icXformLutColorimetric
Definition IccCmm.h:135
@ icXformLutMCS
Definition IccCmm.h:134
@ icXformLutColor
Definition IccCmm.h:126
@ icXformLutSpectral
Definition IccCmm.h:136
@ icXformLutBPC
Definition IccCmm.h:130
@ icXformLutPreview
Definition IccCmm.h:128
@ icXformLutBRDFParam
Definition IccCmm.h:131

◆ icXformType

Enumerator
icXformTypeMatrixTRC 
icXformType3DLut 
icXformType4DLut 
icXformTypeNDLut 
icXformTypeNamedColor 
icXformTypeMpe 
icXformTypeMonochrome 
icXformTypePCS 
icXformTypeUnknown 

Definition at line 148 of file IccCmm.h.

148 {
153 icXformTypeNamedColor = 4, //Creator uses icNamedColorXformHint
154 icXformTypeMpe = 5,
156
157 icXformTypePCS = 0x7fffffe,
158 icXformTypeUnknown = 0x7ffffff,
icXformType
Definition IccCmm.h:148
@ icXformTypeMpe
Definition IccCmm.h:154
@ icXformTypeMatrixTRC
Definition IccCmm.h:149
@ icXformTypeNDLut
Definition IccCmm.h:152
@ icXformTypeMonochrome
Definition IccCmm.h:155
@ icXformType3DLut
Definition IccCmm.h:150
@ icXformType4DLut
Definition IccCmm.h:151
@ icXformTypeNamedColor
Definition IccCmm.h:153
@ icXformTypeUnknown
Definition IccCmm.h:158
@ icXformTypePCS
Definition IccCmm.h:157