Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
CIccInfo Class Reference

Type: Class. More...

#include <IccUtil.h>

+ Collaboration diagram for CIccInfo:

Public Member Functions

icValidateStatus CheckData (std::string &sReport, const icDateTimeNumber &dateTime, std::string sDesc="")
 
icValidateStatus CheckData (std::string &sReport, const icFloatXYZNumber &XYZ, std::string sDesc="")
 
icValidateStatus CheckData (std::string &sReport, const icSpectralRange &range, std::string sDesc="")
 
icValidateStatus CheckData (std::string &sReport, const icXYZNumber &XYZ, std::string sDesc="")
 
icValidateStatus CheckLuminance (std::string &sReport, const icFloatXYZNumber &XYZ, std::string sDesc="")
 
 CIccInfo ()
 
const icCharGetArraySigName (icArraySignature sig)
 
const icCharGetCmmSigName (icCmmSignature sig)
 
const icCharGetColorantEncoding (icColorantEncoding colorant)
 
const icCharGetColorimetricIntentImageStateName (icColorimetricIntentImageStateSignature sig)
 
const icCharGetColorSpaceSigName (icColorSpaceSignature sig)
 
const icCharGetDeviceAttrName (icUInt64Number val)
 
const icCharGetElementTypeSigName (icElemTypeSignature sig)
 
const icCharGetIlluminantName (icIlluminant val)
 
const icCharGetMeasurementFlareName (icMeasurementFlare val)
 
const icCharGetMeasurementGeometryName (icMeasurementGeometry val)
 
const icCharGetMeasurementUnit (icSignature sig)
 
const icCharGetPathEntrySigName (icUInt32Number val)
 
const icCharGetPlatformSigName (icPlatformSignature sig)
 
const icCharGetProfileClassSigName (icProfileClassSignature sig)
 
const icCharGetProfileFlagsName (icUInt32Number val, bool bCheckMCS=false)
 
const icCharGetProfileID (icProfileID *profileID)
 
const icCharGetReferenceMediumGamutSigNameName (icReferenceMediumGamutSignature sig)
 
const icCharGetRenderingIntentName (icRenderingIntent val, bool bIsV5=false)
 
const icCharGetSigName (icUInt32Number val)
 
std::string GetSigPathName (std::string sigPath)
 
const icCharGetSpectralColorSigName (icSpectralColorSignature sig)
 
const icCharGetSpotShapeName (icSpotShape val)
 
const icCharGetStandardObserverName (icStandardObserver val)
 
const icCharGetStructSigName (icStructSignature sig)
 
const icCharGetSubClassVersionName (icUInt32Number val)
 
const icCharGetTagSigName (icTagSignature sig)
 
const icCharGetTagTypeSigName (icTagTypeSignature sig)
 
const icCharGetTechnologySigName (icTechnologySignature sig)
 
const icCharGetUnknownName (icUInt32Number val)
 
const icCharGetVersionName (icUInt32Number val)
 
bool IsProfileIDCalculated (icProfileID *profileID)
 
bool IsValidSpace (icColorSpaceSignature sig)
 
bool IsValidSpectralSpace (icColorSpaceSignature sig)
 
virtual ~CIccInfo ()
 

Protected Attributes

std::string * m_str
 
icChar m_szSigStr [128]
 
icChar m_szStr [128]
 

Detailed Description

Type: Class.

Purpose: This is a utility class which can be used to get profile info for printing. The member functions are used to convert signatures and other enum values to character strings for printing.

Definition at line 303 of file IccUtil.h.

Constructor & Destructor Documentation

◆ CIccInfo()

CIccInfo::CIccInfo ( )

Definition at line 1406 of file IccUtil.cpp.

1406 : m_szStr{}, m_szSigStr{}
1407{
1408 m_str = new std::string;
1409}
icChar m_szStr[128]
Definition IccUtil.h:358
icChar m_szSigStr[128]
Definition IccUtil.h:359
std::string * m_str
Definition IccUtil.h:360

References m_str.

◆ ~CIccInfo()

CIccInfo::~CIccInfo ( )
virtual

Definition at line 1411 of file IccUtil.cpp.

1412{
1413 delete m_str;
1414}

References m_str.

Member Function Documentation

◆ CheckData() [1/4]

icValidateStatus CIccInfo::CheckData ( std::string & sReport,
const icDateTimeNumber & dateTime,
std::string sDesc = "" )

Definition at line 2414 of file IccUtil.cpp.

2415{
2417
2418 struct tm *newtime;
2419 time_t long_time;
2420
2421 time( &long_time ); /* Get time as long integer. */
2422 newtime = localtime( &long_time );
2423
2424 icChar buf[128];
2425 if (dateTime.year<1992) {
2426 sReport += icMsgValidateWarning;
2427 sReport += sDesc;
2428 sprintf(buf," - %u: Invalid year!\n",dateTime.year);
2429 sReport += buf;
2430 rv = icValidateWarning;
2431 }
2432
2433 int year = newtime->tm_year+1900;
2434 if (newtime->tm_mon==11 && newtime->tm_mday==31) {
2435 if (dateTime.year>(year+1)) {
2436 sReport += icMsgValidateWarning;
2437 sReport += sDesc;
2438 sprintf(buf," - %u: Invalid year!\n",dateTime.year);
2439 sReport += buf;
2441 }
2442 }
2443 else {
2444 if (dateTime.year>year) {
2445 sReport += icMsgValidateWarning;
2446 sReport += sDesc;
2447 sprintf(buf," - %u: Invalid year!\n",dateTime.year);
2448 sReport += buf;
2450 }
2451 }
2452
2453 if (dateTime.month<1 || dateTime.month>12) {
2454 sReport += icMsgValidateWarning;
2455 sReport += sDesc;
2456 sprintf(buf," - %u: Invalid month!\n",dateTime.month);
2457 sReport += buf;
2459 }
2460
2461 if (dateTime.day<1 || dateTime.day>31) {
2462 sReport += icMsgValidateWarning;
2463 sReport += sDesc;
2464 sprintf(buf," - %u: Invalid day!\n",dateTime.day);
2465 sReport += buf;
2467 }
2468
2469 if (dateTime.month==2) {
2470 if (dateTime.day>29) {
2471 sReport += icMsgValidateWarning;
2472 sReport += sDesc;
2473 sprintf(buf," - %u: Invalid day for February!\n",dateTime.day);
2474 sReport += buf;
2476 }
2477
2478 if (dateTime.day==29) {
2479 if ((dateTime.year%4)!=0) {
2480 sReport += icMsgValidateWarning;
2481 sReport += sDesc;
2482 sprintf(buf," - %u: Invalid day for February, year is not a leap year(%u)!\n",dateTime.day, dateTime.year);
2483 sReport += buf;
2485 }
2486 }
2487 }
2488
2489 if (dateTime.hours>23) {
2490 sReport += icMsgValidateWarning;
2491 sReport += sDesc;
2492 sprintf(buf," - %u: Invalid hour!\n",dateTime.hours);
2493 sReport += buf;
2495 }
2496
2497 if (dateTime.minutes>59) {
2498 sReport += icMsgValidateWarning;
2499 sReport += sDesc;
2500 sprintf(buf," - %u: Invalid minutes!\n",dateTime.minutes);
2501 sReport += buf;
2503 }
2504
2505 if (dateTime.seconds>59) {
2506 sReport += icMsgValidateWarning;
2507 sReport += sDesc;
2508 sprintf(buf," - %u: Invalid seconds!\n",dateTime.hours);
2509 sReport += buf;
2511 }
2512
2513 return rv;
2514}
char icChar
Definition IccDefs.h:109
icValidateStatus
Definition IccDefs.h:118
@ icValidateOK
Definition IccDefs.h:119
@ icValidateWarning
Definition IccDefs.h:120
icValidateStatus icMaxStatus(icValidateStatus s1, icValidateStatus s2)
Name: icMaxStatus.
Definition IccUtil.cpp:244
const char * icMsgValidateWarning
Definition IccUtil.cpp:90
icUInt16Number year
icUInt16Number month
icUInt16Number minutes
icUInt16Number seconds
icUInt16Number hours
icUInt16Number day

References icDateTimeNumber::day, icDateTimeNumber::hours, icMaxStatus(), icMsgValidateWarning, icValidateOK, icValidateWarning, icDateTimeNumber::minutes, icDateTimeNumber::month, icDateTimeNumber::seconds, and icDateTimeNumber::year.

Referenced by CIccResponseCurveStruct::Validate(), CIccTagDateTime::Validate(), CIccTagSpectralDataInfo::Validate(), CIccTagSpectralViewingConditions::Validate(), CIccTagViewingConditions::Validate(), and CIccTagXYZ::Validate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CheckData() [2/4]

icValidateStatus CIccInfo::CheckData ( std::string & sReport,
const icFloatXYZNumber & XYZ,
std::string sDesc = "" )

Definition at line 2365 of file IccUtil.cpp.

2366{
2368
2369 if (XYZ.X < 0) {
2370 sReport += icMsgValidateNonCompliant;
2371 sReport += sDesc;
2372 sReport += " - FloatXYZNumber: Negative X value!\n";
2374 }
2375
2376 if (XYZ.Y < 0) {
2377 sReport += icMsgValidateNonCompliant;
2378 sReport += sDesc;
2379 sReport += " - FloatXYZNumber: Negative Y value!\n";
2381 }
2382
2383 if (XYZ.Z < 0) {
2384 sReport += icMsgValidateNonCompliant;
2385 sReport += sDesc;
2386 sReport += " - FloatXYZNumber: Negative Z value!\n";
2388 }
2389
2390 return rv;
2391}
@ icValidateNonCompliant
Definition IccDefs.h:121
const char * icMsgValidateNonCompliant
Definition IccUtil.cpp:91
icFloat32Number Z
icFloat32Number Y
icFloat32Number X

References icMaxStatus(), icMsgValidateNonCompliant, icValidateNonCompliant, icValidateOK, icFloatXYZNumber::X, icFloatXYZNumber::Y, and icFloatXYZNumber::Z.

+ Here is the call graph for this function:

◆ CheckData() [3/4]

icValidateStatus CIccInfo::CheckData ( std::string & sReport,
const icSpectralRange & range,
std::string sDesc = "" )

Definition at line 2393 of file IccUtil.cpp.

2394{
2396
2397 if (icF16toF(range.end)<=icF16toF(range.start)) {
2398 sReport += icMsgValidateNonCompliant;
2399 sReport += sDesc;
2400 sReport += " - spectralRange: end wavelength must be greater than start wavelength!\n";
2402 }
2403
2404 if (range.steps<2) {
2405 sReport += icMsgValidateNonCompliant;
2406 sReport += sDesc;
2407 sReport += " - spectralRange: wavelength range must have at least two steps!\n";
2409 }
2410
2411 return rv;
2412}
icFloat32Number icF16toF(icFloat16Number num)
Definition IccUtil.cpp:629
icUInt16Number steps
icFloat16Number start
icFloat16Number end

References icSpectralRange::end, icF16toF(), icMaxStatus(), icMsgValidateNonCompliant, icValidateNonCompliant, icValidateOK, icSpectralRange::start, and icSpectralRange::steps.

+ Here is the call graph for this function:

◆ CheckData() [4/4]

icValidateStatus CIccInfo::CheckData ( std::string & sReport,
const icXYZNumber & XYZ,
std::string sDesc = "" )

Definition at line 2337 of file IccUtil.cpp.

2338{
2340
2341 if (XYZ.X < 0) {
2342 sReport += icMsgValidateNonCompliant;
2343 sReport += sDesc;
2344 sReport += " - XYZNumber: Negative X value!\n";
2346 }
2347
2348 if (XYZ.Y < 0) {
2349 sReport += icMsgValidateNonCompliant;
2350 sReport += sDesc;
2351 sReport += " - XYZNumber: Negative Y value!\n";
2353 }
2354
2355 if (XYZ.Z < 0) {
2356 sReport += icMsgValidateNonCompliant;
2357 sReport += sDesc;
2358 sReport += " - XYZNumber: Negative Z value!\n";
2360 }
2361
2362 return rv;
2363}
icS15Fixed16Number Y
icS15Fixed16Number Z
icS15Fixed16Number X

References icMaxStatus(), icMsgValidateNonCompliant, icValidateNonCompliant, icValidateOK, icXYZNumber::X, icXYZNumber::Y, and icXYZNumber::Z.

+ Here is the call graph for this function:

◆ CheckLuminance()

icValidateStatus CIccInfo::CheckLuminance ( std::string & sReport,
const icFloatXYZNumber & XYZ,
std::string sDesc = "" )

Definition at line 2516 of file IccUtil.cpp.

2517{
2519
2520 if (fabs(XYZ.Y - 1.0) < 0.01) {
2521 sReport += icMsgValidateWarning;
2522 sReport += sDesc;
2523 sReport += " - XYZNumber appears to be normalized! Y value should reflect absolute luminance.\n";
2524 rv = icValidateWarning;
2525 }
2526
2527 return rv;
2528}

References icMsgValidateWarning, icValidateOK, icValidateWarning, and icFloatXYZNumber::Y.

Referenced by CIccTagSpectralViewingConditions::Validate().

+ Here is the caller graph for this function:

◆ GetArraySigName()

const icChar * CIccInfo::GetArraySigName ( icArraySignature sig)

Definition at line 1512 of file IccUtil.cpp.

1513{
1515 return m_str->c_str();
1516 }
1517 return GetUnknownName(sig);
1518}
icArraySignature sig
static bool GetArraySigName(std::string &arrayName, icArraySignature arrayTypeSig, bool bFillUnknown=true)
Function: GetArraySigName(structTypeSig) Get display name of structTypeSig.
const icChar * GetUnknownName(icUInt32Number val)
Definition IccUtil.cpp:1416

References CIccArrayCreator::GetArraySigName(), GetUnknownName(), m_str, and sig.

+ Here is the call graph for this function:

◆ GetCmmSigName()

const icChar * CIccInfo::GetCmmSigName ( icCmmSignature sig)

Definition at line 1874 of file IccUtil.cpp.

1875{
1876 switch (sig) {
1877 case icSigAdobe:
1878 return "Adobe";
1879
1880 case icSigAgfa:
1881 return "Agfa";
1882
1883 case icSigApple:
1884 return "Apple";
1885
1886 case icSigColorGear:
1887 return "ColorGear";
1888
1889 case icSigColorGearLite:
1890 return "ColorGear Lite";
1891
1892 case icSigColorGearC:
1893 return "ColorGear C";
1894
1895 case icSigEFI:
1896 return "EFI";
1897
1898 case icSigExactScan:
1899 return "ExactScan";
1900
1901 case icSigFujiFilm:
1902 return "Fuji Film";
1903
1904 case icSigHarlequinRIP:
1905 return "Harlequin RIP";
1906
1907 case icSigArgyllCMS:
1908 return "Argyll CMS";
1909
1910 case icSigLogoSync:
1911 return "LogoSync";
1912
1913 case icSigHeidelberg:
1914 return "Heidelberg";
1915
1916 case icSigLittleCMS:
1917 return "Little CMS";
1918
1919 case icSigKodak:
1920 return "Kodak";
1921
1922 case icSigKonicaMinolta:
1923 return "Konica Minolta";
1924
1925 case icSigMutoh:
1926 return "Mutoh";
1927
1928 case icSigRefIccMAX:
1929 return "RefIccMAX";
1930
1931 case icSigDemoIccMAX:
1932 return "DemoIccMAX";
1933
1934 case icSigRolfGierling:
1935 return "Rolf Gierling Multitools";
1936
1937 case icSigSampleICC:
1938 return "SampleIcc";
1939
1940 case icSigToshiba:
1941 return "Toshiba";
1942
1944 return "the imaging factory";
1945
1946 case icSigVivo:
1947 return "Vivo";
1948
1949 case icSigWareToGo:
1950 return "Ware To Go";
1951
1952 case icSigMicrosoft:
1953 return "Windows Color System";
1954
1955 case icSigZoran:
1956 return "Zoran";
1957
1958 default:
1959 return GetUnknownName(sig);
1960 }
1961}
@ icSigMicrosoft
@ icSigDemoIccMAX
@ icSigAgfa
@ icSigColorGearC
@ icSigColorGear
@ icSigTheImagingFactory
@ icSigLogoSync
@ icSigRolfGierling
@ icSigColorGearLite
@ icSigKonicaMinolta
@ icSigKodak
@ icSigSampleICC
@ icSigArgyllCMS
@ icSigHarlequinRIP
@ icSigToshiba
@ icSigExactScan
@ icSigHeidelberg
@ icSigMutoh
@ icSigEFI
@ icSigZoran
@ icSigFujiFilm
@ icSigAdobe
@ icSigLittleCMS
@ icSigRefIccMAX
@ icSigVivo
@ icSigApple
@ icSigWareToGo

References GetUnknownName(), icSigAdobe, icSigAgfa, icSigApple, icSigArgyllCMS, icSigColorGear, icSigColorGearC, icSigColorGearLite, icSigDemoIccMAX, icSigEFI, icSigExactScan, icSigFujiFilm, icSigHarlequinRIP, icSigHeidelberg, icSigKodak, icSigKonicaMinolta, icSigLittleCMS, icSigLogoSync, icSigMicrosoft, icSigMutoh, icSigRefIccMAX, icSigRolfGierling, icSigSampleICC, icSigTheImagingFactory, icSigToshiba, icSigVivo, icSigWareToGo, icSigZoran, and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), and MyChild::MyChild().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetColorantEncoding()

const icChar * CIccInfo::GetColorantEncoding ( icColorantEncoding colorant)

Definition at line 2317 of file IccUtil.cpp.

2318{
2319 switch(colorant) {
2320 case icColorantITU:
2321 return "ITU-R BT.709";
2322
2323 case icColorantSMPTE:
2324 return "SMPTE RP145-1994";
2325
2326 case icColorantEBU:
2327 return "EBU Tech.3213-E";
2328
2329 case icColorantP22:
2330 return "P22";
2331
2332 default:
2333 return "Customized Encoding";
2334 }
2335}
@ icColorantEBU
@ icColorantITU
@ icColorantSMPTE
@ icColorantP22

References icColorantEBU, icColorantITU, icColorantP22, and icColorantSMPTE.

Referenced by CIccTagChromaticity::Describe(), and CIccTagXmlChromaticity::ToXml().

+ Here is the caller graph for this function:

◆ GetColorimetricIntentImageStateName()

const icChar * CIccInfo::GetColorimetricIntentImageStateName ( icColorimetricIntentImageStateSignature sig)

Definition at line 1976 of file IccUtil.cpp.

1977{
1978 switch (sig) {
1980 return "Scene Colorimetry Estimates";
1981
1983 return "Scene Appearance Estimates";
1984
1986 return "Focal Plane Colorimetry Estimates";
1987
1989 return "Reflection Hardcopy Original Colorimetry";
1990
1992 return "Reflection Print Output Colorimetry";
1993
1994 default:
1995 return GetUnknownName(sig);
1996 }
1997}
@ icSigSceneColorimetryEstimates
@ icSigReflectionPrintOutputColorimetry
@ icSigFocalPlaneColorimetryEstimates
@ icSigReflectionHardcopyOriginalColorimetry
@ icSigSceneAppearanceEstimates

References GetUnknownName(), icSigFocalPlaneColorimetryEstimates, icSigReflectionHardcopyOriginalColorimetry, icSigReflectionPrintOutputColorimetry, icSigSceneAppearanceEstimates, icSigSceneColorimetryEstimates, and sig.

Referenced by GetSigName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetColorSpaceSigName()

const icChar * CIccInfo::GetColorSpaceSigName ( icColorSpaceSignature sig)

Definition at line 1640 of file IccUtil.cpp.

1641{
1642 switch (sig) {
1643 case icSigNoColorData:
1644 return "NoData";
1645
1646 case icSigXYZData:
1647 case icSigDevXYZData:
1648 return "XYZData";
1649
1650 case icSigLabData:
1651 case icSigDevLabData:
1652 return "LabData";
1653
1654 case icSigLuvData:
1655 return "LuvData";
1656
1657 case icSigYCbCrData:
1658 return "YCbCrData";
1659
1660 case icSigYxyData:
1661 return "YxyData";
1662
1663 case icSigRgbData:
1664 return "RgbData";
1665
1666 case icSigGrayData:
1667 return "GrayData";
1668
1669 case icSigHsvData:
1670 return "HsvData";
1671
1672 case icSigHlsData:
1673 return "HlsData";
1674
1675 case icSigCmykData:
1676 return "CmykData";
1677
1678 case icSigCmyData:
1679 return "CmyData";
1680
1681 case icSigMCH1Data:
1682 return "MCH1Data/1ColorData";
1683
1684 case icSigMCH2Data:
1685 return "MCH2Data/2ColorData";
1686
1687 case icSigMCH3Data:
1688 return "MCH3Data/3ColorData";
1689
1690 case icSigMCH4Data:
1691 return "MCH4Data/4ColorData";
1692
1693 case icSigMCH5Data:
1694 return "MCH5Data/5ColorData";
1695
1696 case icSigMCH6Data:
1697 return "MCH6Data/6ColorData";
1698
1699 case icSigMCH7Data:
1700 return "MCH7Data/7ColorData";
1701
1702 case icSigMCH8Data:
1703 return "MCH8Data/8ColorData";
1704
1705 case icSigMCH9Data:
1706 return "MCH9Data/9ColorData";
1707
1708 case icSigMCHAData:
1709 return "MCHAData/10ColorData";
1710
1711 case icSigMCHBData:
1712 return "MCHBData/11ColorData";
1713
1714 case icSigMCHCData:
1715 return "MCHCData/12ColorData";
1716
1717 case icSigMCHDData:
1718 return "MCHDData/13ColorData";
1719
1720 case icSigMCHEData:
1721 return "MCHEData/14ColorData";
1722
1723 case icSigMCHFData:
1724 return "MCHFData/15ColorData";
1725
1726 case icSigGamutData:
1727 return "GamutData";
1728
1729 case icSigNamedData:
1730 return "NamedData";
1731
1732 default:
1733 switch(icGetColorSpaceType(sig)) {
1734 case icSigNChannelData:
1735 sprintf(m_szStr, "0x%04XChannelData", icNumColorSpaceChannels(sig));
1736 return m_szStr;
1737
1739 sprintf(m_szStr, "0x%04XChannelReflectanceData", icNumColorSpaceChannels(sig));
1740 return m_szStr;
1741
1743 sprintf(m_szStr, "0x%04XChannelTransmissionData", icNumColorSpaceChannels(sig));
1744 return m_szStr;
1745
1747 sprintf(m_szStr, "0x%04XChannelRadiantData", icNumColorSpaceChannels(sig));
1748 return m_szStr;
1749
1751 sprintf(m_szStr, "0x%04XChannelBiDirReflectanceData", icNumColorSpaceChannels(sig));
1752 return m_szStr;
1753
1755 sprintf(m_szStr, "0x%04XChannelSparseMatrixReflectanceData", icNumColorSpaceChannels(sig));
1756 return m_szStr;
1757
1758 default:
1760 if (nChan>0) {
1761 sprintf(m_szStr, "0x%XColorData", nChan);
1762 return m_szStr;
1763 }
1764 return GetUnknownName(sig);
1765 }
1766 }
1767}
#define icSigDevXYZData
Definition IccDefs.h:92
#define icSigDevLabData
Additional convenience color space signatures to distinguish between device encoding and PCS encoding...
Definition IccDefs.h:91
icUInt32Number icGetSpaceSamples(icColorSpaceSignature sig)
Definition IccUtil.cpp:1303
unsigned int icUInt32Number
#define icNumColorSpaceChannels(sig)
#define icGetColorSpaceType(sig)
@ icSigLabData
@ icSigLuvData
@ icSigMCHCData
@ icSigNoColorData
@ icSigMCH4Data
@ icSigMCH6Data
@ icSigMCH8Data
@ icSigMCH7Data
@ icSigXYZData
@ icSigMCH5Data
@ icSigMCH9Data
@ icSigMCH1Data
@ icSigNamedData
@ icSigMCHEData
@ icSigCmykData
@ icSigNChannelData
@ icSigMCH3Data
@ icSigMCH2Data
@ icSigRgbData
@ icSigHlsData
@ icSigMCHAData
@ icSigMCHDData
@ icSigYCbCrData
@ icSigMCHBData
@ icSigMCHFData
@ icSigCmyData
@ icSigGrayData
@ icSigHsvData
@ icSigYxyData
@ icSigReflectanceSpectralData
@ icSigTransmisionSpectralData
@ icSigBiSpectralReflectanceData
@ icSigRadiantSpectralData
@ icSigSparseMatrixReflectanceData
#define icSigGamutData
Convenience Enum Definitions - Not defined in ICC specification.

References GetUnknownName(), icGetColorSpaceType, icGetSpaceSamples(), icNumColorSpaceChannels, icSigBiSpectralReflectanceData, icSigCmyData, icSigCmykData, icSigDevLabData, icSigDevXYZData, icSigGamutData, icSigGrayData, icSigHlsData, icSigHsvData, icSigLabData, icSigLuvData, icSigMCH1Data, icSigMCH2Data, icSigMCH3Data, icSigMCH4Data, icSigMCH5Data, icSigMCH6Data, icSigMCH7Data, icSigMCH8Data, icSigMCH9Data, icSigMCHAData, icSigMCHBData, icSigMCHCData, icSigMCHDData, icSigMCHEData, icSigMCHFData, icSigNamedData, icSigNChannelData, icSigNoColorData, icSigRadiantSpectralData, icSigReflectanceSpectralData, icSigRgbData, icSigSparseMatrixReflectanceData, icSigTransmisionSpectralData, icSigXYZData, icSigYCbCrData, icSigYxyData, m_szStr, and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), GetSigName(), main(), main(), and MyChild::MyChild().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetDeviceAttrName()

const icChar * CIccInfo::GetDeviceAttrName ( icUInt64Number val)

Definition at line 1448 of file IccUtil.cpp.

1449{
1450 if (val & icTransparency)
1451 strcpy(m_szStr, "Transparency");
1452 else
1453 strcpy(m_szStr, "Reflective");
1454
1455 int l=(int)strlen(m_szStr);
1456
1457 if (val & icMatte)
1458 strcpy(m_szStr+l, " | Matte");
1459 else
1460 strcpy(m_szStr+l, " | Glossy");
1461
1462 return m_szStr;
1463}
#define icTransparency
#define icMatte

References icMatte, icTransparency, and m_szStr.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), and MyChild::MyChild().

+ Here is the caller graph for this function:

◆ GetElementTypeSigName()

const icChar * CIccInfo::GetElementTypeSigName ( icElemTypeSignature sig)

Definition at line 1604 of file IccUtil.cpp.

1605{
1606
1608 return m_str->c_str();
1609 }
1610
1611 return GetUnknownName(sig);
1612}
static bool GetElementSigName(std::string &elemName, icElemTypeSignature elemTypeSig)
Function: GetElementSigName(elemTypeSig) Get display name of elemTypeSig.

References CIccMpeCreator::GetElementSigName(), GetUnknownName(), m_str, and sig.

Referenced by GetPathEntrySigName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetIlluminantName()

const icChar * CIccInfo::GetIlluminantName ( icIlluminant val)

Definition at line 2169 of file IccUtil.cpp.

2170{
2171 switch (val) {
2173 return "Illuminant Unknown";
2174
2175 case icIlluminantD50:
2176 return "Illuminant D50";
2177
2178 case icIlluminantD65:
2179 return "Illuminant D65";
2180
2181 case icIlluminantD93:
2182 return "Illuminant D93";
2183
2184 case icIlluminantF2:
2185 return "Illuminant F2";
2186
2187 case icIlluminantD55:
2188 return "Illuminant D55";
2189
2190 case icIlluminantA:
2191 return "Illuminant A";
2192
2194 return "Illuminant EquiPowerE";
2195
2196 case icIlluminantF8:
2197 return "Illuminant F8";
2198
2200 return "Illuminant Black Body";
2201
2203 return "Illuminant Daylight";
2204
2205 case icIlluminantB:
2206 return "Illuminant B";
2207
2208 case icIlluminantC:
2209 return "Illuminant C";
2210
2211 case icIlluminantF1:
2212 return "Illuminant F1";
2213
2214 case icIlluminantF3:
2215 return "Illuminant F3";
2216
2217 case icIlluminantF4:
2218 return "Illuminant F4";
2219
2220 case icIlluminantF5:
2221 return "Illuminant F5";
2222
2223 case icIlluminantF6:
2224 return "Illuminant F6";
2225
2226 case icIlluminantF7:
2227 return "Illuminant F7";
2228
2229 case icIlluminantF9:
2230 return "Illuminant F9";
2231
2232 case icIlluminantF10:
2233 return "Illuminant F10";
2234
2235 case icIlluminantF11:
2236 return "Illuminant F11";
2237
2238 case icIlluminantF12:
2239 return "Illuminant F12";
2240
2241 default:
2242 sprintf(m_szStr, "Unknown Illuminant '%d", val);
2243 return m_szStr;
2244 }
2245}
@ icIlluminantF6
@ icIlluminantF8
@ icIlluminantF1
@ icIlluminantEquiPowerE
@ icIlluminantF11
@ icIlluminantF7
@ icIlluminantF2
@ icIlluminantF4
@ icIlluminantF3
@ icIlluminantD55
@ icIlluminantDaylight
@ icIlluminantB
@ icIlluminantA
@ icIlluminantF9
@ icIlluminantBlackBody
@ icIlluminantUnknown
@ icIlluminantD65
@ icIlluminantF10
@ icIlluminantD93
@ icIlluminantD50
@ icIlluminantC
@ icIlluminantF5
@ icIlluminantF12

References icIlluminantA, icIlluminantB, icIlluminantBlackBody, icIlluminantC, icIlluminantD50, icIlluminantD55, icIlluminantD65, icIlluminantD93, icIlluminantDaylight, icIlluminantEquiPowerE, icIlluminantF1, icIlluminantF10, icIlluminantF11, icIlluminantF12, icIlluminantF2, icIlluminantF3, icIlluminantF4, icIlluminantF5, icIlluminantF6, icIlluminantF7, icIlluminantF8, icIlluminantF9, icIlluminantUnknown, and m_szStr.

Referenced by CIccTagMeasurement::Describe(), CIccTagSpectralViewingConditions::Describe(), CIccTagViewingConditions::Describe(), CIccTagXmlMeasurement::ToXml(), CIccTagXmlSpectralViewingConditions::ToXml(), and CIccTagXmlViewingConditions::ToXml().

+ Here is the caller graph for this function:

◆ GetMeasurementFlareName()

const icChar * CIccInfo::GetMeasurementFlareName ( icMeasurementFlare val)

Definition at line 2055 of file IccUtil.cpp.

2056{
2057 switch (val) { // Directly switch on the enum without casting to int
2058 case icFlare0:
2059 return "Flare 0"; // Properly handle the 0% flare
2060
2061 case icFlare100:
2062 return "Flare 100"; // Properly handle the 100% flare
2063
2064 default:
2065 // Handle icMaxEnumFlare explicitly here if needed
2066 if (val == icMaxEnumFlare) {
2067 return "Max Flare"; // Special handling for the max sentinel value
2068 }
2069 // General default case for truly unexpected values
2070 std::snprintf(m_szStr, sizeof(m_szStr), "Unknown Flare '%d'", (int)val);
2071 return m_szStr;
2072 }
2073}
@ icFlare100
@ icFlare0
#define icMaxEnumFlare
Convenience Enum Definition - Not defined in ICC specification.

References icFlare0, icFlare100, icMaxEnumFlare, and m_szStr.

Referenced by CIccTagMeasurement::Describe(), and CIccTagXmlMeasurement::ToXml().

+ Here is the caller graph for this function:

◆ GetMeasurementGeometryName()

const icChar * CIccInfo::GetMeasurementGeometryName ( icMeasurementGeometry val)

Definition at line 2076 of file IccUtil.cpp.

2077{
2078 switch (val) { // Directly use enum type, casting is not needed
2079 case icGeometryUnknown:
2080 return "Geometry Unknown";
2081 case icGeometry045or450:
2082 return "Geometry 0-45 or 45-0";
2083 case icGeometry0dord0:
2084 return "Geometry 0-d or d-0";
2085 default:
2086 std::snprintf(m_szStr, sizeof(m_szStr), "Unknown Geometry '%d'", (int)val);
2087 return m_szStr;
2088 }
2089}
@ icGeometry045or450
@ icGeometry0dord0
@ icGeometryUnknown

References icGeometry045or450, icGeometry0dord0, icGeometryUnknown, and m_szStr.

Referenced by CIccTagMeasurement::Describe(), and CIccTagXmlMeasurement::ToXml().

+ Here is the caller graph for this function:

◆ GetMeasurementUnit()

const icChar * CIccInfo::GetMeasurementUnit ( icSignature sig)

Definition at line 2247 of file IccUtil.cpp.

2248{
2249 switch (sig) {
2250 case icSigStatusA:
2251 return "Status A";
2252
2253 case icSigStatusE:
2254 return "Status E";
2255
2256 case icSigStatusI:
2257 return "Status I";
2258
2259 case icSigStatusT:
2260 return "Status T";
2261
2262 case icSigStatusM:
2263 return "Status M";
2264
2265 case icSigDN:
2266 return "DIN with no polarizing filter";
2267
2268 case icSigDNP:
2269 return "DIN with polarizing filter";
2270
2271 case icSigDNN:
2272 return "Narrow band DIN with no polarizing filter";
2273
2274 case icSigDNNP:
2275 return "Narrow band DIN with polarizing filter";
2276
2277 default:
2278 {
2279 char buf[10] = {0};
2280 buf[0] = (char)(sig>>24);
2281 buf[1] = (char)(sig>>16);
2282 buf[2] = (char)(sig>>8);
2283 buf[3] = (char)(sig);
2284 buf[4] = '\0';
2285
2286 sprintf(m_szStr, "Unknown Measurement Type '%s'", buf);
2287 return m_szStr;
2288 }
2289 }
2290}
@ icSigStatusI
@ icSigStatusE
@ icSigDNNP
@ icSigStatusA
@ icSigDN
@ icSigStatusT
@ icSigDNP
@ icSigDNN
@ icSigStatusM

References icSigDN, icSigDNN, icSigDNNP, icSigDNP, icSigStatusA, icSigStatusE, icSigStatusI, icSigStatusM, icSigStatusT, m_szStr, and sig.

Referenced by CIccResponseCurveStruct::Describe(), and CIccTagXmlResponseCurveSet16::ToXml().

+ Here is the caller graph for this function:

◆ GetPathEntrySigName()

const icChar * CIccInfo::GetPathEntrySigName ( icUInt32Number val)

Definition at line 2035 of file IccUtil.cpp.

2036{
2037 const icChar *rv;
2038
2040 if (rv != m_szStr)
2041 return rv;
2042
2044 if (rv != m_szStr)
2045 return rv;
2046
2048 if (rv != m_szStr)
2049 return rv;
2050
2051 return GetUnknownName(sig);
2052}
icTagTypeSignature
const icChar * GetTagSigName(icTagSignature sig)
Definition IccUtil.cpp:1495
const icChar * GetElementTypeSigName(icElemTypeSignature sig)
Definition IccUtil.cpp:1604
const icChar * GetTagTypeSigName(icTagTypeSignature sig)
Definition IccUtil.cpp:1594
icElemTypeSignature
Multi-Processing Element type signatures.
icTagSignature
public tags and sizes

References GetElementTypeSigName(), GetTagSigName(), GetTagTypeSigName(), GetUnknownName(), m_szStr, and sig.

Referenced by GetSigPathName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetPlatformSigName()

const icChar * CIccInfo::GetPlatformSigName ( icPlatformSignature sig)

Definition at line 1845 of file IccUtil.cpp.

1846{
1847 switch (sig) {
1848 case icSigMacintosh:
1849 return "Macintosh";
1850
1851 case icSigMicrosoft:
1852 return "Microsoft";
1853
1854 case icSigSolaris:
1855 return "Solaris";
1856
1857 case icSigSGI:
1858 return "SGI";
1859
1860 case icSigTaligent:
1861 return "Taligent";
1862
1864 return "Unknown";
1865
1866 default:
1867 return GetUnknownName(sig);
1868 }
1869}
@ icSigSGI
@ icSigTaligent
@ icSigMacintosh
@ icSigUnkownPlatform
@ icSigSolaris

References GetUnknownName(), icSigMacintosh, icSigMicrosoft, icSigSGI, icSigSolaris, icSigTaligent, icSigUnkownPlatform, and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), GetSigName(), main(), and MyChild::MyChild().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetProfileClassSigName()

const icChar * CIccInfo::GetProfileClassSigName ( icProfileClassSignature sig)

Definition at line 1804 of file IccUtil.cpp.

1805{
1806 switch (sig) {
1807 case icSigInputClass:
1808 return "InputClass";
1809
1810 case icSigDisplayClass:
1811 return "DisplayClass";
1812
1813 case icSigOutputClass:
1814 return "OutputClass";
1815
1816 case icSigLinkClass:
1817 return "LinkClass";
1818
1819 case icSigAbstractClass:
1820 return "AbstractClass";
1821
1823 return "ColorSpaceClass";
1824
1826 return "NamedColorClass";
1827
1829 return "ColorEncodingClass";
1830
1832 return "MaterialIdentificationClass";
1833
1835 return "MaterialVisualizationClass";
1836
1838 return "MaterialLinkClass";
1839
1840 default:
1841 return GetUnknownName(sig);
1842 }
1843}
@ icSigAbstractClass
@ icSigColorEncodingClass
@ icSigDisplayClass
@ icSigMaterialVisualizationClass
@ icSigOutputClass
@ icSigInputClass
@ icSigMaterialLinkClass
@ icSigColorSpaceClass
@ icSigNamedColorClass
@ icSigMaterialIdentificationClass
@ icSigLinkClass

References GetUnknownName(), icSigAbstractClass, icSigColorEncodingClass, icSigColorSpaceClass, icSigDisplayClass, icSigInputClass, icSigLinkClass, icSigMaterialIdentificationClass, icSigMaterialLinkClass, icSigMaterialVisualizationClass, icSigNamedColorClass, icSigOutputClass, and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), GetSigName(), main(), and MyChild::MyChild().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetProfileFlagsName()

const icChar * CIccInfo::GetProfileFlagsName ( icUInt32Number val,
bool bCheckMCS = false )

Definition at line 1465 of file IccUtil.cpp.

1466{
1467 if (val & icEmbeddedProfileTrue)
1468 strcpy(m_szStr, "EmbeddedProfileTrue");
1469 else
1470 strcpy(m_szStr, "EmbeddedProfileFalse");
1471
1472 int l=(int)strlen(m_szStr);
1473
1474 if (val & icUseWithEmbeddedDataOnly)
1475 strcpy(m_szStr+l, " | UseWithEmbeddedDataOnly");
1476 else
1477 strcpy(m_szStr+l, " | UseAnywhere");
1478
1479 if (bCheckMCS) {
1480 l=(int)strlen(m_szStr);
1481
1482 if (val & icMCSNeedsSubsetTrue)
1483 strcpy(m_szStr+l, " | MCSNeedsSubset");
1484 else
1485 strcpy(m_szStr+l, " | MCSConnectAny");
1486 }
1487
1488 if (val & icExtendedRangePCS)
1489 strcpy(m_szStr + l, " | ExtendedRangePCS");
1490
1491
1492 return m_szStr;
1493}
#define icEmbeddedProfileTrue
#define icUseWithEmbeddedDataOnly
#define icExtendedRangePCS
#define icMCSNeedsSubsetTrue

References icEmbeddedProfileTrue, icExtendedRangePCS, icMCSNeedsSubsetTrue, icUseWithEmbeddedDataOnly, and m_szStr.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), and MyChild::MyChild().

+ Here is the caller graph for this function:

◆ GetProfileID()

const icChar * CIccInfo::GetProfileID ( icProfileID * profileID)

Definition at line 2293 of file IccUtil.cpp.

2294{
2295 char *ptr = m_szStr;
2296 int i;
2297
2298 for (i=0; i<16; i++, ptr+=2) {
2299 sprintf(ptr, "%02x", profileID->ID8[i]);
2300 }
2301
2302 return m_szStr;
2303}
icUInt8Number ID8[16]

References icProfileID::ID8, and m_szStr.

Referenced by CIccTagEmbeddedProfile::Describe(), and main().

+ Here is the caller graph for this function:

◆ GetReferenceMediumGamutSigNameName()

const icChar * CIccInfo::GetReferenceMediumGamutSigNameName ( icReferenceMediumGamutSignature sig)

Definition at line 1964 of file IccUtil.cpp.

1965{
1966 switch (sig) {
1968 return "perceptualReferenceMediumGamut";
1969
1970 default:
1971 return GetUnknownName(sig);
1972 }
1973}
@ icSigPerceptualReferenceMediumGamut

References GetUnknownName(), icSigPerceptualReferenceMediumGamut, and sig.

Referenced by GetSigName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetRenderingIntentName()

const icChar * CIccInfo::GetRenderingIntentName ( icRenderingIntent val,
bool bIsV5 = false )

Definition at line 2091 of file IccUtil.cpp.

2092{
2093 switch (val) {
2094 case icPerceptual:
2095 return "Perceptual";
2096
2098 if (bIsV5)
2099 return "Relative";
2100 else
2101 return "Relative Colorimetric";
2102
2103 case icSaturation:
2104 return "Saturation";
2105
2107 if (bIsV5)
2108 return "Absolute";
2109 else
2110 return "Absolute Colorimetric";
2111
2112 default:
2113 sprintf(m_szStr, "Unknown Intent '%d", val);
2114 return m_szStr;
2115 }
2116}
@ icPerceptual
@ icRelativeColorimetric
@ icAbsoluteColorimetric
@ icSaturation

References icAbsoluteColorimetric, icPerceptual, icRelativeColorimetric, icSaturation, and m_szStr.

Referenced by AnalyzeRoundTrip(), CIccTagEmbeddedProfile::Describe(), main(), MyChild::MyChild(), and CIccProfileXml::ToXmlWithBlanks().

+ Here is the caller graph for this function:

◆ GetSigName()

const icChar * CIccInfo::GetSigName ( icUInt32Number val)

Definition at line 2000 of file IccUtil.cpp.

2001{
2002 const icChar *rv;
2003
2005 if (rv != m_szStr)
2006 return rv;
2007
2009 if (rv != m_szStr)
2010 return rv;
2011
2013 if (rv != m_szStr)
2014 return rv;
2015
2017 if (rv != m_szStr)
2018 return rv;
2019
2021 if (rv != m_szStr)
2022 return rv;
2023
2025 if (rv != m_szStr)
2026 return rv;
2027
2029 if (rv != m_szStr)
2030 return rv;
2031
2033}
const icChar * GetTechnologySigName(icTechnologySignature sig)
Definition IccUtil.cpp:1520
const icChar * GetColorimetricIntentImageStateName(icColorimetricIntentImageStateSignature sig)
Definition IccUtil.cpp:1976
const icChar * GetProfileClassSigName(icProfileClassSignature sig)
Definition IccUtil.cpp:1804
const icChar * GetPlatformSigName(icPlatformSignature sig)
Definition IccUtil.cpp:1845
const icChar * GetColorSpaceSigName(icColorSpaceSignature sig)
Definition IccUtil.cpp:1640
const icChar * GetReferenceMediumGamutSigNameName(icReferenceMediumGamutSignature sig)
Definition IccUtil.cpp:1964
icTechnologySignature
technology signature descriptions
icProfileClassSignature
profileClass enumerations
icColorSpaceSignature
Color Space Signatures.
icPlatformSignature
Platform Signatures.
icColorimetricIntentImageStateSignature
Colorimetric Intent Image State Gamut Signatures.
icReferenceMediumGamutSignature
Rendering Intent Gamut Signatures.

References GetColorimetricIntentImageStateName(), GetColorSpaceSigName(), GetPlatformSigName(), GetProfileClassSigName(), GetReferenceMediumGamutSigNameName(), GetTagSigName(), GetTagTypeSigName(), GetTechnologySigName(), m_szStr, and sig.

Referenced by CIccTagSignature::Describe(), CIccResponseCurveStruct::Validate(), CIccTagProfileSeqDesc::Validate(), and CIccTagSignature::Validate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSigPathName()

std::string CIccInfo::GetSigPathName ( std::string sigPath)

Definition at line 1614 of file IccUtil.cpp.

1615{
1616 std::string rv;
1617 const char *ptr = sigPath.c_str();
1618 int n =0;
1619 while(*ptr==':') {
1620 std::string sigStr;
1621 ptr++;
1622 while(*ptr && *ptr!=':') {
1623 sigStr += *ptr;
1624 ptr++;
1625 }
1626 icSignature sig = icGetSigVal(sigStr.c_str());
1627 if (n!=0) {
1628 rv += ">";
1629 }
1630 rv += GetPathEntrySigName(sig);
1631 n++;
1632 }
1633 if (n > 0)
1634 rv += ":";
1635
1636 return rv;
1637}
icUInt32Number icGetSigVal(const icChar *pBuf)
Definition IccUtil.cpp:1258
const icChar * GetPathEntrySigName(icUInt32Number val)
Definition IccUtil.cpp:2035
icUInt32Number icSignature

References GetPathEntrySigName(), icGetSigVal(), and sig.

Referenced by CIccCalculatorFunc::Validate(), CIccCLUT::Validate(), CIccFormulaCurveSegment::Validate(), CIccMatrix::Validate(), CIccMBB::Validate(), CIccMpeCalculator::Validate(), CIccMpeCLUT::Validate(), CIccMpeCurveSet::Validate(), CIccMpeExtCLUT::Validate(), CIccMpeInvEmissionMatrix::Validate(), CIccMpeMatrix::Validate(), CIccMpeSpectralCLUT::Validate(), CIccMpeSpectralMatrix::Validate(), CIccMpeSpectralObserver::Validate(), CIccMpeTintArray::Validate(), CIccMpeToneMap::Validate(), CIccMpeUnknown::Validate(), CIccMultiProcessElement::Validate(), CIccSampledCalculatorCurve::Validate(), CIccSampledCurveSegment::Validate(), CIccSegmentedCurve::Validate(), CIccSingleSampledCurve::Validate(), CIccStructBRDF::Validate(), CIccStructColorantInfo::Validate(), CIccStructNamedColor::Validate(), CIccTag::Validate(), CIccTagArray::Validate(), CIccTagChromaticity::Validate(), CIccTagCicp::Validate(), CIccTagColorantOrder::Validate(), CIccTagColorantTable::Validate(), CIccTagCurve::Validate(), CIccTagData::Validate(), CIccTagDict::Validate(), CIccTagEmbeddedHeightImage::Validate(), CIccTagEmbeddedNormalImage::Validate(), CIccTagEmbeddedProfile::Validate(), CIccTagFloatNum< T, Tsig >::Validate(), CIccTagGamutBoundaryDesc::Validate(), CIccTagLut16::Validate(), CIccTagLut8::Validate(), CIccTagLutAtoB::Validate(), CIccTagLutBtoA::Validate(), CIccTagMeasurement::Validate(), CIccTagMultiLocalizedUnicode::Validate(), CIccTagMultiProcessElement::Validate(), CIccTagNamedColor2::Validate(), CIccTagNum< T, Tsig >::Validate(), CIccTagParametricCurve::Validate(), CIccTagProfileSeqDesc::Validate(), CIccTagProfileSequenceId::Validate(), CIccTagResponseCurveSet16::Validate(), CIccTagSignature::Validate(), CIccTagSparseMatrixArray::Validate(), CIccTagSpectralDataInfo::Validate(), CIccTagSpectralViewingConditions::Validate(), CIccTagStruct::Validate(), CIccTagText::Validate(), CIccTagTextDescription::Validate(), CIccTagUtf16Text::Validate(), CIccTagUtf8Text::Validate(), CIccTagViewingConditions::Validate(), CIccTagXYZ::Validate(), and CIccTagZipUtf8Text::Validate().

+ Here is the call graph for this function:

◆ GetSpectralColorSigName()

const icChar * CIccInfo::GetSpectralColorSigName ( icSpectralColorSignature sig)

Definition at line 1769 of file IccUtil.cpp.

1770{
1771 switch(icGetColorSpaceType(sig)) {
1773 return "NoSpectralData";
1774
1775 case icSigNChannelData:
1776 sprintf(m_szStr, "0x%04XChannelData", icNumColorSpaceChannels(sig));
1777 return m_szStr;
1778
1780 sprintf(m_szStr, "0x%04XChannelReflectanceData", icNumColorSpaceChannels(sig));
1781 return m_szStr;
1782
1784 sprintf(m_szStr, "0x%04XChannelTransmissionData", icNumColorSpaceChannels(sig));
1785 return m_szStr;
1786
1788 sprintf(m_szStr, "0x%04XChannelRadiantData", icNumColorSpaceChannels(sig));
1789 return m_szStr;
1790
1792 sprintf(m_szStr, "0x%04XChannelBiSpectralReflectanceData", icNumColorSpaceChannels(sig));
1793 return m_szStr;
1794
1796 sprintf(m_szStr, "0x%04XChannelSparseMatrixReflectanceData", icNumColorSpaceChannels(sig));
1797 return m_szStr;
1798
1799 default:
1800 return GetUnknownName(sig);
1801 }
1802}
@ icSigNoSpectralData

References GetUnknownName(), icGetColorSpaceType, icNumColorSpaceChannels, icSigBiSpectralReflectanceData, icSigNChannelData, icSigNoSpectralData, icSigRadiantSpectralData, icSigReflectanceSpectralData, icSigSparseMatrixReflectanceData, icSigTransmisionSpectralData, m_szStr, and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), main(), and MyChild::MyChild().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSpotShapeName()

const icChar * CIccInfo::GetSpotShapeName ( icSpotShape val)

Definition at line 2118 of file IccUtil.cpp.

2119{
2120 switch (val) {
2121 case icSpotShapeUnknown:
2122 return "Spot Shape Unknown";
2123
2125 return "Spot Shape Printer Default";
2126
2127 case icSpotShapeRound:
2128 return "Spot Shape Round";
2129
2130 case icSpotShapeDiamond:
2131 return "Spot Shape Diamond";
2132
2133 case icSpotShapeEllipse:
2134 return "Spot Shape Ellipse";
2135
2136 case icSpotShapeLine:
2137 return "Spot Shape Line";
2138
2139 case icSpotShapeSquare:
2140 return "Spot Shape Square";
2141
2142 case icSpotShapeCross:
2143 return "Spot Shape Cross";
2144
2145 default:
2146 sprintf(m_szStr, "Unknown Spot Shape '%d", val);
2147 return m_szStr;
2148 }
2149}
@ icSpotShapeCross
@ icSpotShapeDiamond
@ icSpotShapeLine
@ icSpotShapePrinterDefault
@ icSpotShapeEllipse
@ icSpotShapeSquare
@ icSpotShapeRound
@ icSpotShapeUnknown

References icSpotShapeCross, icSpotShapeDiamond, icSpotShapeEllipse, icSpotShapeLine, icSpotShapePrinterDefault, icSpotShapeRound, icSpotShapeSquare, icSpotShapeUnknown, and m_szStr.

◆ GetStandardObserverName()

const icChar * CIccInfo::GetStandardObserverName ( icStandardObserver val)

Definition at line 2151 of file IccUtil.cpp.

2152{
2153 switch (val) {
2154 case icStdObsUnknown:
2155 return "Unknown observer";
2156
2158 return "CIE 1931 (two degree) standard observer";
2159
2161 return "CIE 1964 (ten degree) standard observer";
2162
2163 default:
2164 sprintf(m_szStr, "Unknown Observer '%d", val);
2165 return m_szStr;
2166 }
2167}
@ icStdObsUnknown
@ icStdObs1964TenDegrees
@ icStdObs1931TwoDegrees

References icStdObs1931TwoDegrees, icStdObs1964TenDegrees, icStdObsUnknown, and m_szStr.

Referenced by CIccTagMeasurement::Describe(), CIccTagSpectralViewingConditions::Describe(), and CIccTagXmlSpectralViewingConditions::ToXml().

+ Here is the caller graph for this function:

◆ GetStructSigName()

const icChar * CIccInfo::GetStructSigName ( icStructSignature sig)

Definition at line 1504 of file IccUtil.cpp.

1505{
1507 return m_str->c_str();
1508 }
1509 return GetUnknownName(sig);
1510}
static bool GetStructSigName(std::string &structName, icStructSignature structTypeSig, bool bFillUnknown=true)
Function: GetStructSigName(structTypeSig) Get display name of structTypeSig.

References CIccStructCreator::GetStructSigName(), GetUnknownName(), m_str, and sig.

Referenced by IIccStruct::Describe().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSubClassVersionName()

const icChar * CIccInfo::GetSubClassVersionName ( icUInt32Number val)

Definition at line 1438 of file IccUtil.cpp.

1439{
1440 icFloatNumber ver = (icFloatNumber)(((val >> 12) & 0xf)*10.0 + ((val >> 8) & 0xf) +
1441 ((val >> 4) & 0xf) / 10.0 + (val & 0xf) / 100.0);
1442
1443 sprintf(m_szStr, "%.2lf", ver);
1444
1445 return m_szStr;
1446}
float icFloatNumber
All floating point operations/variables in IccProfLib use the icFloatNumber data type.
Definition IccDefs.h:100

References m_szStr.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), MyChild::MyChild(), and CIccProfileXml::ToXmlWithBlanks().

+ Here is the caller graph for this function:

◆ GetTagSigName()

const icChar * CIccInfo::GetTagSigName ( icTagSignature sig)

Definition at line 1495 of file IccUtil.cpp.

1496{
1498 if (rv) {
1499 return rv;
1500 }
1501 return GetUnknownName(sig);
1502}
static const icChar * GetTagSigName(icTagSignature tagTypeSig)
Function: GetTagSigName(tagSig) Get display name of tagSig.

References CIccTagCreator::GetTagSigName(), GetUnknownName(), and sig.

Referenced by CIccTagEmbeddedProfile::Describe(), DumpTag(), GetPathEntrySigName(), GetSigName(), main(), MyChild::MyChild(), MyDialog::MyDialog(), MyTagDialog::MyTagDialog(), and CIccProfileXml::ToXmlWithBlanks().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetTagTypeSigName()

const icChar * CIccInfo::GetTagTypeSigName ( icTagTypeSignature sig)

Definition at line 1594 of file IccUtil.cpp.

1595{
1597 if (rv) {
1598 return rv;
1599 }
1600
1601 return GetUnknownName(sig);
1602}
static const icChar * GetTagTypeSigName(icTagTypeSignature tagTypeSig)
Function: GetTagTypeSigName(tagTypeSig) Get display name of tagTypeSig.

References CIccTagCreator::GetTagTypeSigName(), GetUnknownName(), and sig.

Referenced by DumpTag(), GetPathEntrySigName(), GetSigName(), MyChild::MyChild(), MyTagDialog::MyTagDialog(), CIccProfileXml::ParseTag(), CIccTagXmlStruct::ParseTag(), and CIccMpeXmlTintArray::ParseXml().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetTechnologySigName()

const icChar * CIccInfo::GetTechnologySigName ( icTechnologySignature sig)

Definition at line 1520 of file IccUtil.cpp.

1521{
1522 switch(sig) {
1523 case icSigDigitalCamera:
1524 return "DigitalCamera";
1525
1526 case icSigFilmScanner:
1527 return "FilmScanner";
1528
1530 return "ReflectiveScanner";
1531
1532 case icSigInkJetPrinter:
1533 return "InkJetPrinter";
1534
1536 return "ThermalWaxPrinter";
1537
1539 return "ElectrophotographicPrinter";
1540
1542 return "ElectrostaticPrinter";
1543
1545 return "DyeSublimationPrinter";
1546
1548 return "PhotographicPaperPrinter";
1549
1550 case icSigFilmWriter:
1551 return "FilmWriter";
1552
1553 case icSigVideoMonitor:
1554 return "VideoMonitor";
1555
1556 case icSigVideoCamera:
1557 return "VideoCamera";
1558
1560 return "ProjectionTelevision";
1561
1562 case icSigCRTDisplay:
1563 return "CRTDisplay";
1564
1565 case icSigPMDisplay:
1566 return "PMDisplay";
1567
1568 case icSigAMDisplay:
1569 return "AMDisplay";
1570
1571 case icSigPhotoCD:
1572 return "PhotoCD";
1573
1575 return "PhotoImageSetter";
1576
1577 case icSigGravure:
1578 return "Gravure";
1579
1581 return "OffsetLithography";
1582
1583 case icSigSilkscreen:
1584 return "Silkscreen";
1585
1586 case icSigFlexography:
1587 return "Flexography";
1588
1589 default:
1590 return GetUnknownName(sig);
1591 }
1592}
@ icSigFilmWriter
@ icSigCRTDisplay
@ icSigOffsetLithography
@ icSigFlexography
@ icSigSilkscreen
@ icSigPhotographicPaperPrinter
@ icSigVideoMonitor
@ icSigElectrostaticPrinter
@ icSigPMDisplay
@ icSigGravure
@ icSigInkJetPrinter
@ icSigReflectiveScanner
@ icSigDigitalCamera
@ icSigVideoCamera
@ icSigDyeSublimationPrinter
@ icSigThermalWaxPrinter
@ icSigFilmScanner
@ icSigPhotoCD
@ icSigPhotoImageSetter
@ icSigElectrophotographicPrinter
@ icSigProjectionTelevision
@ icSigAMDisplay

References GetUnknownName(), icSigAMDisplay, icSigCRTDisplay, icSigDigitalCamera, icSigDyeSublimationPrinter, icSigElectrophotographicPrinter, icSigElectrostaticPrinter, icSigFilmScanner, icSigFilmWriter, icSigFlexography, icSigGravure, icSigInkJetPrinter, icSigOffsetLithography, icSigPhotoCD, icSigPhotographicPaperPrinter, icSigPhotoImageSetter, icSigPMDisplay, icSigProjectionTelevision, icSigReflectiveScanner, icSigSilkscreen, icSigThermalWaxPrinter, icSigVideoCamera, icSigVideoMonitor, and sig.

Referenced by GetSigName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetUnknownName()

const icChar * CIccInfo::GetUnknownName ( icUInt32Number val)

Definition at line 1416 of file IccUtil.cpp.

1417{
1418 icChar buf[24];
1419 // icGetSig() will print 'NULL' if val is 0x00000000 which is easier to post-process
1420 // if (!val)
1421 // return "Unknown";
1422
1423 sprintf(m_szStr, "Unknown %s", icGetSig(buf, val));
1424
1425 return m_szStr;
1426}
const icChar * icGetSig(icChar *pBuf, icUInt32Number sig, bool bGetHexVal=true)
Definition IccUtil.cpp:1028

References icGetSig(), and m_szStr.

Referenced by GetArraySigName(), GetCmmSigName(), GetColorimetricIntentImageStateName(), GetColorSpaceSigName(), GetElementTypeSigName(), GetPathEntrySigName(), GetPlatformSigName(), GetProfileClassSigName(), GetReferenceMediumGamutSigNameName(), GetSpectralColorSigName(), GetStructSigName(), GetTagSigName(), GetTagTypeSigName(), and GetTechnologySigName().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVersionName()

const icChar * CIccInfo::GetVersionName ( icUInt32Number val)

Definition at line 1428 of file IccUtil.cpp.

1429{
1430 icFloatNumber ver = (icFloatNumber)(((val>>28)&0xf)*10.0 + ((val>>24)&0xf) +
1431 ((val>>20)&0xf)/10.0 + ((val>>16)&0xf)/100.0);
1432
1433 sprintf(m_szStr, "%.2lf", ver);
1434
1435 return m_szStr;
1436}

References m_szStr.

Referenced by CIccTagEmbeddedProfile::Describe(), main(), MyChild::MyChild(), MyDialog::MyDialog(), and CIccProfileXml::ToXmlWithBlanks().

+ Here is the caller graph for this function:

◆ IsProfileIDCalculated()

bool CIccInfo::IsProfileIDCalculated ( icProfileID * profileID)

Definition at line 2305 of file IccUtil.cpp.

2306{
2307 int i;
2308
2309 for (i=0; i<16; i++) {
2310 if (profileID->ID8[i])
2311 break;
2312 }
2313
2314 return i<16;
2315}

References icProfileID::ID8.

Referenced by CIccTagEmbeddedProfile::Describe(), and main().

+ Here is the caller graph for this function:

◆ IsValidSpace()

bool CIccInfo::IsValidSpace ( icColorSpaceSignature sig)

Definition at line 2531 of file IccUtil.cpp.

2532{
2533 bool rv = true;
2534
2535 switch(sig) {
2536 case icSigXYZData:
2537 case icSigLabData:
2538 case icSigLuvData:
2539 case icSigYCbCrData:
2540 case icSigYxyData:
2541 case icSigRgbData:
2542 case icSigGrayData:
2543 case icSigHsvData:
2544 case icSigHlsData:
2545 case icSigCmykData:
2546 case icSigCmyData:
2547 case icSigMCH1Data:
2548 case icSigNamedData:
2549 case icSigGamutData:
2550 case icSig2colorData:
2551 case icSig3colorData:
2552 case icSig4colorData:
2553 case icSig5colorData:
2554 case icSig6colorData:
2555 case icSig7colorData:
2556 case icSig8colorData:
2557 case icSig9colorData:
2558 case icSig10colorData:
2559 case icSig11colorData:
2560 case icSig12colorData:
2561 case icSig13colorData:
2562 case icSig14colorData:
2563 case icSig15colorData:
2564 break;
2565
2566 default:
2567 switch(icGetColorSpaceType(sig)) {
2568 case icSigNChannelData:
2569 break;
2570 default:
2571 rv = false;
2572 }
2573 }
2574
2575 return rv;
2576}
@ icSig14colorData
@ icSig2colorData
@ icSig8colorData
@ icSig10colorData
@ icSig7colorData
@ icSig9colorData
@ icSig13colorData
@ icSig6colorData
@ icSig4colorData
@ icSig12colorData
@ icSig11colorData
@ icSig15colorData
@ icSig3colorData
@ icSig5colorData

References icGetColorSpaceType, icSig10colorData, icSig11colorData, icSig12colorData, icSig13colorData, icSig14colorData, icSig15colorData, icSig2colorData, icSig3colorData, icSig4colorData, icSig5colorData, icSig6colorData, icSig7colorData, icSig8colorData, icSig9colorData, icSigCmyData, icSigCmykData, icSigGamutData, icSigGrayData, icSigHlsData, icSigHsvData, icSigLabData, icSigLuvData, icSigMCH1Data, icSigNamedData, icSigNChannelData, icSigRgbData, icSigXYZData, icSigYCbCrData, icSigYxyData, and sig.

Referenced by CDevLinkWriter::begin().

+ Here is the caller graph for this function:

◆ IsValidSpectralSpace()

bool CIccInfo::IsValidSpectralSpace ( icColorSpaceSignature sig)

Member Data Documentation

◆ m_str

std::string* CIccInfo::m_str
protected

◆ m_szSigStr

icChar CIccInfo::m_szSigStr[128]
protected

Definition at line 359 of file IccUtil.h.

◆ m_szStr


The documentation for this class was generated from the following files: