Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QIcc Namespace Reference

Classes

struct  CicpTagData
struct  CurvTagData
struct  DescTagData
struct  ElementCombo
struct  GenericTagData
struct  ICCProfileHeader
struct  Lut16TagData
struct  Lut8TagData
struct  mABTagData
struct  MatrixElement
struct  MlucTagData
struct  MlucTagRecord
struct  mpetTagData
struct  ParaTagData
struct  Sf32TagData
struct  TagEntry
struct  TagTableEntry
struct  XYZTagData

Enumerations

enum class  ColorSpaceType : quint32 {
  Rgb = IccTag('R', 'G', 'B', ' ') , Gray = IccTag('G', 'R', 'A', 'Y') , Cmyk = IccTag('C', 'M', 'Y', 'K') , Rgb = IccTag('R', 'G', 'B', ' ') ,
  Gray = IccTag('G', 'R', 'A', 'Y') , Cmyk = IccTag('C', 'M', 'Y', 'K')
}
enum class  ProfileClass : quint32 {
  Input = IccTag('s', 'c', 'n', 'r') , Display = IccTag('m', 'n', 't', 'r') , Output = IccTag('p', 'r', 't', 'r') , ColorSpace = IccTag('s', 'p', 'a', 'c') ,
  DeviceLink = IccTag('l', 'i', 'n', 'k') , Abstract = IccTag('a', 'b', 's', 't') , NamedColor = IccTag('n', 'm', 'c', 'l') , Input = IccTag('s', 'c', 'n', 'r') ,
  Display = IccTag('m', 'n', 't', 'r') , Output = IccTag('p', 'r', 't', 'r') , ColorSpace = IccTag('s', 'p', 'a', 'c') , DeviceLink = IccTag('l', 'i', 'n', 'k') ,
  Abstract = IccTag('a', 'b', 's', 't') , NamedColor = IccTag('n', 'm', 'c', 'l')
}
enum class  Tag : quint32 {
  acsp = IccTag('a', 'c', 's', 'p') , Lab_ = IccTag('L', 'a', 'b', ' ') , RGB_ = IccTag('R', 'G', 'B', ' ') , XYZ_ = IccTag('X', 'Y', 'Z', ' ') ,
  rXYZ = IccTag('r', 'X', 'Y', 'Z') , gXYZ = IccTag('g', 'X', 'Y', 'Z') , bXYZ = IccTag('b', 'X', 'Y', 'Z') , rTRC = IccTag('r', 'T', 'R', 'C') ,
  gTRC = IccTag('g', 'T', 'R', 'C') , bTRC = IccTag('b', 'T', 'R', 'C') , kTRC = IccTag('k', 'T', 'R', 'C') , A2B0 = IccTag('A', '2', 'B', '0') ,
  A2B1 = IccTag('A', '2', 'B', '1') , A2B2 = IccTag('A', '2', 'B', '2') , B2A0 = IccTag('B', '2', 'A', '0') , B2A1 = IccTag('B', '2', 'A', '1') ,
  B2A2 = IccTag('B', '2', 'A', '2') , B2D0 = IccTag('B', '2', 'D', '0') , B2D1 = IccTag('B', '2', 'D', '1') , B2D2 = IccTag('B', '2', 'D', '2') ,
  B2D3 = IccTag('B', '2', 'D', '3') , D2B0 = IccTag('D', '2', 'B', '0') , D2B1 = IccTag('D', '2', 'B', '1') , D2B2 = IccTag('D', '2', 'B', '2') ,
  D2B3 = IccTag('D', '2', 'B', '3') , desc = IccTag('d', 'e', 's', 'c') , text = IccTag('t', 'e', 'x', 't') , cprt = IccTag('c', 'p', 'r', 't') ,
  curv = IccTag('c', 'u', 'r', 'v') , para = IccTag('p', 'a', 'r', 'a') , wtpt = IccTag('w', 't', 'p', 't') , bkpt = IccTag('b', 'k', 'p', 't') ,
  mft1 = IccTag('m', 'f', 't', '1') , mft2 = IccTag('m', 'f', 't', '2') , mluc = IccTag('m', 'l', 'u', 'c') , mpet = IccTag('m', 'p', 'e', 't') ,
  mAB_ = IccTag('m', 'A', 'B', ' ') , mBA_ = IccTag('m', 'B', 'A', ' ') , chad = IccTag('c', 'h', 'a', 'd') , cicp = IccTag('c', 'i', 'c', 'p') ,
  gamt = IccTag('g', 'a', 'm', 't') , sf32 = IccTag('s', 'f', '3', '2') , aarg = IccTag('a', 'a', 'r', 'g') , aagg = IccTag('a', 'a', 'g', 'g') ,
  aabg = IccTag('a', 'a', 'b', 'g') , acsp = IccTag('a', 'c', 's', 'p') , Lab_ = IccTag('L', 'a', 'b', ' ') , RGB_ = IccTag('R', 'G', 'B', ' ') ,
  XYZ_ = IccTag('X', 'Y', 'Z', ' ') , rXYZ = IccTag('r', 'X', 'Y', 'Z') , gXYZ = IccTag('g', 'X', 'Y', 'Z') , bXYZ = IccTag('b', 'X', 'Y', 'Z') ,
  rTRC = IccTag('r', 'T', 'R', 'C') , gTRC = IccTag('g', 'T', 'R', 'C') , bTRC = IccTag('b', 'T', 'R', 'C') , kTRC = IccTag('k', 'T', 'R', 'C') ,
  A2B0 = IccTag('A', '2', 'B', '0') , A2B1 = IccTag('A', '2', 'B', '1') , A2B2 = IccTag('A', '2', 'B', '2') , B2A0 = IccTag('B', '2', 'A', '0') ,
  B2A1 = IccTag('B', '2', 'A', '1') , B2A2 = IccTag('B', '2', 'A', '2') , B2D0 = IccTag('B', '2', 'D', '0') , B2D1 = IccTag('B', '2', 'D', '1') ,
  B2D2 = IccTag('B', '2', 'D', '2') , B2D3 = IccTag('B', '2', 'D', '3') , D2B0 = IccTag('D', '2', 'B', '0') , D2B1 = IccTag('D', '2', 'B', '1') ,
  D2B2 = IccTag('D', '2', 'B', '2') , D2B3 = IccTag('D', '2', 'B', '3') , desc = IccTag('d', 'e', 's', 'c') , text = IccTag('t', 'e', 'x', 't') ,
  cprt = IccTag('c', 'p', 'r', 't') , curv = IccTag('c', 'u', 'r', 'v') , para = IccTag('p', 'a', 'r', 'a') , wtpt = IccTag('w', 't', 'p', 't') ,
  bkpt = IccTag('b', 'k', 'p', 't') , mft1 = IccTag('m', 'f', 't', '1') , mft2 = IccTag('m', 'f', 't', '2') , mluc = IccTag('m', 'l', 'u', 'c') ,
  mpet = IccTag('m', 'p', 'e', 't') , mAB_ = IccTag('m', 'A', 'B', ' ') , mBA_ = IccTag('m', 'B', 'A', ' ') , chad = IccTag('c', 'h', 'a', 'd') ,
  cicp = IccTag('c', 'i', 'c', 'p') , gamt = IccTag('g', 'a', 'm', 't') , sf32 = IccTag('s', 'f', '3', '2') , aarg = IccTag('a', 'a', 'r', 'g') ,
  aagg = IccTag('a', 'a', 'g', 'g') , aabg = IccTag('a', 'a', 'b', 'g')
}
enum class  ColorSpaceType : quint32 {
  Rgb = IccTag('R', 'G', 'B', ' ') , Gray = IccTag('G', 'R', 'A', 'Y') , Cmyk = IccTag('C', 'M', 'Y', 'K') , Rgb = IccTag('R', 'G', 'B', ' ') ,
  Gray = IccTag('G', 'R', 'A', 'Y') , Cmyk = IccTag('C', 'M', 'Y', 'K')
}
enum class  ProfileClass : quint32 {
  Input = IccTag('s', 'c', 'n', 'r') , Display = IccTag('m', 'n', 't', 'r') , Output = IccTag('p', 'r', 't', 'r') , ColorSpace = IccTag('s', 'p', 'a', 'c') ,
  DeviceLink = IccTag('l', 'i', 'n', 'k') , Abstract = IccTag('a', 'b', 's', 't') , NamedColor = IccTag('n', 'm', 'c', 'l') , Input = IccTag('s', 'c', 'n', 'r') ,
  Display = IccTag('m', 'n', 't', 'r') , Output = IccTag('p', 'r', 't', 'r') , ColorSpace = IccTag('s', 'p', 'a', 'c') , DeviceLink = IccTag('l', 'i', 'n', 'k') ,
  Abstract = IccTag('a', 'b', 's', 't') , NamedColor = IccTag('n', 'm', 'c', 'l')
}
enum class  Tag : quint32 {
  acsp = IccTag('a', 'c', 's', 'p') , Lab_ = IccTag('L', 'a', 'b', ' ') , RGB_ = IccTag('R', 'G', 'B', ' ') , XYZ_ = IccTag('X', 'Y', 'Z', ' ') ,
  rXYZ = IccTag('r', 'X', 'Y', 'Z') , gXYZ = IccTag('g', 'X', 'Y', 'Z') , bXYZ = IccTag('b', 'X', 'Y', 'Z') , rTRC = IccTag('r', 'T', 'R', 'C') ,
  gTRC = IccTag('g', 'T', 'R', 'C') , bTRC = IccTag('b', 'T', 'R', 'C') , kTRC = IccTag('k', 'T', 'R', 'C') , A2B0 = IccTag('A', '2', 'B', '0') ,
  A2B1 = IccTag('A', '2', 'B', '1') , A2B2 = IccTag('A', '2', 'B', '2') , B2A0 = IccTag('B', '2', 'A', '0') , B2A1 = IccTag('B', '2', 'A', '1') ,
  B2A2 = IccTag('B', '2', 'A', '2') , B2D0 = IccTag('B', '2', 'D', '0') , B2D1 = IccTag('B', '2', 'D', '1') , B2D2 = IccTag('B', '2', 'D', '2') ,
  B2D3 = IccTag('B', '2', 'D', '3') , D2B0 = IccTag('D', '2', 'B', '0') , D2B1 = IccTag('D', '2', 'B', '1') , D2B2 = IccTag('D', '2', 'B', '2') ,
  D2B3 = IccTag('D', '2', 'B', '3') , desc = IccTag('d', 'e', 's', 'c') , text = IccTag('t', 'e', 'x', 't') , cprt = IccTag('c', 'p', 'r', 't') ,
  curv = IccTag('c', 'u', 'r', 'v') , para = IccTag('p', 'a', 'r', 'a') , wtpt = IccTag('w', 't', 'p', 't') , bkpt = IccTag('b', 'k', 'p', 't') ,
  mft1 = IccTag('m', 'f', 't', '1') , mft2 = IccTag('m', 'f', 't', '2') , mluc = IccTag('m', 'l', 'u', 'c') , mpet = IccTag('m', 'p', 'e', 't') ,
  mAB_ = IccTag('m', 'A', 'B', ' ') , mBA_ = IccTag('m', 'B', 'A', ' ') , chad = IccTag('c', 'h', 'a', 'd') , cicp = IccTag('c', 'i', 'c', 'p') ,
  gamt = IccTag('g', 'a', 'm', 't') , sf32 = IccTag('s', 'f', '3', '2') , aarg = IccTag('a', 'a', 'r', 'g') , aagg = IccTag('a', 'a', 'g', 'g') ,
  aabg = IccTag('a', 'a', 'b', 'g') , acsp = IccTag('a', 'c', 's', 'p') , Lab_ = IccTag('L', 'a', 'b', ' ') , RGB_ = IccTag('R', 'G', 'B', ' ') ,
  XYZ_ = IccTag('X', 'Y', 'Z', ' ') , rXYZ = IccTag('r', 'X', 'Y', 'Z') , gXYZ = IccTag('g', 'X', 'Y', 'Z') , bXYZ = IccTag('b', 'X', 'Y', 'Z') ,
  rTRC = IccTag('r', 'T', 'R', 'C') , gTRC = IccTag('g', 'T', 'R', 'C') , bTRC = IccTag('b', 'T', 'R', 'C') , kTRC = IccTag('k', 'T', 'R', 'C') ,
  A2B0 = IccTag('A', '2', 'B', '0') , A2B1 = IccTag('A', '2', 'B', '1') , A2B2 = IccTag('A', '2', 'B', '2') , B2A0 = IccTag('B', '2', 'A', '0') ,
  B2A1 = IccTag('B', '2', 'A', '1') , B2A2 = IccTag('B', '2', 'A', '2') , B2D0 = IccTag('B', '2', 'D', '0') , B2D1 = IccTag('B', '2', 'D', '1') ,
  B2D2 = IccTag('B', '2', 'D', '2') , B2D3 = IccTag('B', '2', 'D', '3') , D2B0 = IccTag('D', '2', 'B', '0') , D2B1 = IccTag('D', '2', 'B', '1') ,
  D2B2 = IccTag('D', '2', 'B', '2') , D2B3 = IccTag('D', '2', 'B', '3') , desc = IccTag('d', 'e', 's', 'c') , text = IccTag('t', 'e', 'x', 't') ,
  cprt = IccTag('c', 'p', 'r', 't') , curv = IccTag('c', 'u', 'r', 'v') , para = IccTag('p', 'a', 'r', 'a') , wtpt = IccTag('w', 't', 'p', 't') ,
  bkpt = IccTag('b', 'k', 'p', 't') , mft1 = IccTag('m', 'f', 't', '1') , mft2 = IccTag('m', 'f', 't', '2') , mluc = IccTag('m', 'l', 'u', 'c') ,
  mpet = IccTag('m', 'p', 'e', 't') , mAB_ = IccTag('m', 'A', 'B', ' ') , mBA_ = IccTag('m', 'B', 'A', ' ') , chad = IccTag('c', 'h', 'a', 'd') ,
  cicp = IccTag('c', 'i', 'c', 'p') , gamt = IccTag('g', 'a', 'm', 't') , sf32 = IccTag('s', 'f', '3', '2') , aarg = IccTag('a', 'a', 'r', 'g') ,
  aagg = IccTag('a', 'a', 'g', 'g') , aabg = IccTag('a', 'a', 'b', 'g')
}

Functions

bool fromIccProfile (const QByteArray &data, QColorSpace *colorSpace)
QByteArray toIccProfile (const QColorSpace &space)
constexpr quint32 IccTag (uchar a, uchar b, uchar c, uchar d)
static int toFixedS1516 (float x)
static float fromFixedS1516 (int x)
static bool isValidIccProfile (const ICCProfileHeader &header)
static int writeColorTrc (QDataStream &stream, const QColorTrc &trc)
static constexpr qsizetype intPow (qsizetype x, qsizetype exp)
static void visitElement (ElementCombo &combo, const QColorSpacePrivate::TransferElement &element, int number, const QList< QColorSpacePrivate::Element > &list)
static void visitElement (ElementCombo &combo, const QColorMatrix &element, int number, const QList< QColorSpacePrivate::Element > &)
static void visitElement (ElementCombo &combo, const QColorVector &element, int, const QList< QColorSpacePrivate::Element > &)
static void visitElement (ElementCombo &combo, const QColorCLUT &element, int, const QList< QColorSpacePrivate::Element > &)
static bool isTableTrc (const QColorSpacePrivate::TransferElement *transfer)
static bool isTableTrcSingleSize (const QColorSpacePrivate::TransferElement *transfer)
static int writeMab (QDataStream &stream, const QList< QColorSpacePrivate::Element > &abList, bool isAb, bool pcsLab, bool isCmyk)
static bool parseXyzData (const QByteArray &data, const TagEntry &tagEntry, QColorVector &colorVector)
static quint32 parseTRC (const QByteArrayView &tagData, QColorTrc &gamma, QColorTransferTable::Type type=QColorTransferTable::TwoWay)
template<typename T>
static void parseCLUT (const T *tableData, const float f, QColorCLUT *clut, uchar outputChannels)
template<typename T>
static bool parseLutData (const QByteArray &data, const TagEntry &tagEntry, QColorSpacePrivate *colorSpacePrivate, bool isAb)
static bool parseMabData (const QByteArray &data, const TagEntry &tagEntry, QColorSpacePrivate *colorSpacePrivate, bool isAb)
static bool parseA2B (const QByteArray &data, const TagEntry &tagEntry, QColorSpacePrivate *privat, bool isAb)
static bool parseDesc (const QByteArray &data, const TagEntry &tagEntry, QString &descName)
static bool parseRgbMatrix (const QByteArray &data, const QHash< Tag, TagEntry > &tagIndex, QColorSpacePrivate *colorspaceDPtr)
static bool parseGrayMatrix (const QByteArray &data, const QHash< Tag, TagEntry > &tagIndex, QColorSpacePrivate *colorspaceDPtr)
static bool parseChad (const QByteArray &data, const TagEntry &tagEntry, QColorSpacePrivate *colorspaceDPtr)
static bool parseTRCs (const QByteArray &data, const QHash< Tag, TagEntry > &tagIndex, QColorSpacePrivate *colorspaceDPtr, bool isColorSpaceTypeGray)
static bool parseCicp (const QByteArray &data, const TagEntry &tagEntry, QColorSpacePrivate *colorspaceDPtr)

Enumeration Type Documentation

◆ ColorSpaceType [1/2]

enum class QIcc::ColorSpaceType : quint32
strong
Enumerator
Rgb 
Gray 
Cmyk 
Rgb 
Gray 
Cmyk 

Definition at line 63 of file qicc.cpp.

◆ ColorSpaceType [2/2]

enum class QIcc::ColorSpaceType : quint32
strong
Enumerator
Rgb 
Gray 
Cmyk 
Rgb 
Gray 
Cmyk 

Definition at line 63 of file qicc.cpp.

◆ ProfileClass [1/2]

enum class QIcc::ProfileClass : quint32
strong
Enumerator
Input 
Display 
Output 
ColorSpace 
DeviceLink 
Abstract 
NamedColor 
Input 
Display 
Output 
ColorSpace 
DeviceLink 
Abstract 
NamedColor 

Definition at line 69 of file qicc.cpp.

◆ ProfileClass [2/2]

enum class QIcc::ProfileClass : quint32
strong
Enumerator
Input 
Display 
Output 
ColorSpace 
DeviceLink 
Abstract 
NamedColor 
Input 
Display 
Output 
ColorSpace 
DeviceLink 
Abstract 
NamedColor 

Definition at line 69 of file qicc.cpp.

◆ Tag [1/2]

enum class QIcc::Tag : quint32
strong
Enumerator
acsp 
Lab_ 
RGB_ 
XYZ_ 
rXYZ 
gXYZ 
bXYZ 
rTRC 
gTRC 
bTRC 
kTRC 
A2B0 
A2B1 
A2B2 
B2A0 
B2A1 
B2A2 
B2D0 
B2D1 
B2D2 
B2D3 
D2B0 
D2B1 
D2B2 
D2B3 
desc 
text 
cprt 
curv 
para 
wtpt 
bkpt 
mft1 
mft2 
mluc 
mpet 
mAB_ 
mBA_ 
chad 
cicp 
gamt 
sf32 
aarg 
aagg 
aabg 
acsp 
Lab_ 
RGB_ 
XYZ_ 
rXYZ 
gXYZ 
bXYZ 
rTRC 
gTRC 
bTRC 
kTRC 
A2B0 
A2B1 
A2B2 
B2A0 
B2A1 
B2A2 
B2D0 
B2D1 
B2D2 
B2D3 
D2B0 
D2B1 
D2B2 
D2B3 
desc 
text 
cprt 
curv 
para 
wtpt 
bkpt 
mft1 
mft2 
mluc 
mpet 
mAB_ 
mBA_ 
chad 
cicp 
gamt 
sf32 
aarg 
aagg 
aabg 

Definition at line 80 of file qicc.cpp.

◆ Tag [2/2]

enum class QIcc::Tag : quint32
strong
Enumerator
acsp 
Lab_ 
RGB_ 
XYZ_ 
rXYZ 
gXYZ 
bXYZ 
rTRC 
gTRC 
bTRC 
kTRC 
A2B0 
A2B1 
A2B2 
B2A0 
B2A1 
B2A2 
B2D0 
B2D1 
B2D2 
B2D3 
D2B0 
D2B1 
D2B2 
D2B3 
desc 
text 
cprt 
curv 
para 
wtpt 
bkpt 
mft1 
mft2 
mluc 
mpet 
mAB_ 
mBA_ 
chad 
cicp 
gamt 
sf32 
aarg 
aagg 
aabg 
acsp 
Lab_ 
RGB_ 
XYZ_ 
rXYZ 
gXYZ 
bXYZ 
rTRC 
gTRC 
bTRC 
kTRC 
A2B0 
A2B1 
A2B2 
B2A0 
B2A1 
B2A2 
B2D0 
B2D1 
B2D2 
B2D3 
D2B0 
D2B1 
D2B2 
D2B3 
desc 
text 
cprt 
curv 
para 
wtpt 
bkpt 
mft1 
mft2 
mluc 
mpet 
mAB_ 
mBA_ 
chad 
cicp 
gamt 
sf32 
aarg 
aagg 
aabg 

Definition at line 80 of file qicc.cpp.

Function Documentation

◆ fromFixedS1516()

float QIcc::fromFixedS1516 ( int x)
static

Definition at line 278 of file qicc.cpp.

Referenced by isValidIccProfile(), parseChad(), parseMabData(), and parseXyzData().

Here is the caller graph for this function:

◆ fromIccProfile()

◆ IccTag()

quint32 QIcc::IccTag ( uchar a,
uchar b,
uchar c,
uchar d )
constexpr

Definition at line 58 of file qicc.cpp.

◆ intPow()

constexpr qsizetype QIcc::intPow ( qsizetype x,
qsizetype exp )
staticconstexpr

Definition at line 388 of file qicc.cpp.

◆ isTableTrc()

bool QIcc::isTableTrc ( const QColorSpacePrivate::TransferElement * transfer)
static

Definition at line 438 of file qicc.cpp.

Referenced by writeMab().

Here is the caller graph for this function:

◆ isTableTrcSingleSize()

bool QIcc::isTableTrcSingleSize ( const QColorSpacePrivate::TransferElement * transfer)
static

Definition at line 449 of file qicc.cpp.

Referenced by writeMab().

Here is the caller graph for this function:

◆ isValidIccProfile()

bool QIcc::isValidIccProfile ( const ICCProfileHeader & header)
static

Definition at line 283 of file qicc.cpp.

References acsp, Cmyk, ColorSpace, Display, fromFixedS1516(), Gray, QIcc::ICCProfileHeader::illuminantXyz, Input, QIcc::ICCProfileHeader::inputColorSpace, Lab_, Output, QIcc::ICCProfileHeader::pcs, QIcc::ICCProfileHeader::profileClass, QIcc::ICCProfileHeader::profileSize, Rgb, QIcc::ICCProfileHeader::signature, QIcc::ICCProfileHeader::tagCount, and XYZ_.

Referenced by fromIccProfile(), and toIccProfile().

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

◆ parseA2B()

bool QIcc::parseA2B ( const QByteArray & data,
const TagEntry & tagEntry,
QColorSpacePrivate * privat,
bool isAb )
static

Definition at line 1582 of file qicc.cpp.

References mAB_, mBA_, mft1, mft2, parseMabData(), and QIcc::GenericTagData::type.

Here is the call graph for this function:

◆ parseChad()

bool QIcc::parseChad ( const QByteArray & data,
const TagEntry & tagEntry,
QColorSpacePrivate * colorspaceDPtr )
static

Definition at line 1695 of file qicc.cpp.

References fromFixedS1516(), QColorMatrix::isValid(), sf32, QIcc::GenericTagData::type, and QIcc::Sf32TagData::value.

Here is the call graph for this function:

◆ parseCicp()

bool QIcc::parseCicp ( const QByteArray & data,
const TagEntry & tagEntry,
QColorSpacePrivate * colorspaceDPtr )
static

◆ parseCLUT()

template<typename T>
void QIcc::parseCLUT ( const T * tableData,
const float f,
QColorCLUT * clut,
uchar outputChannels )
static

Definition at line 1215 of file qicc.cpp.

◆ parseDesc()

◆ parseGrayMatrix()

bool QIcc::parseGrayMatrix ( const QByteArray & data,
const QHash< Tag, TagEntry > & tagIndex,
QColorSpacePrivate * colorspaceDPtr )
static

Definition at line 1681 of file qicc.cpp.

◆ parseLutData()

template<typename T>
bool QIcc::parseLutData ( const QByteArray & data,
const TagEntry & tagEntry,
QColorSpacePrivate * colorSpacePrivate,
bool isAb )
static

Definition at line 1237 of file qicc.cpp.

References QColorCLUT::isEmpty(), QColorMatrix::isIdentity(), QColorSpacePrivate::isPcsLab, QColorMatrix::isValid(), mft1, and mft2.

Here is the call graph for this function:

◆ parseMabData()

bool QIcc::parseMabData ( const QByteArray & data,
const TagEntry & tagEntry,
QColorSpacePrivate * colorSpacePrivate,
bool isAb )
static

Definition at line 1384 of file qicc.cpp.

References QIcc::mABTagData::aCurvesOffset, QIcc::mABTagData::bCurvesOffset, QIcc::mABTagData::clutOffset, QIcc::MatrixElement::e0, QIcc::MatrixElement::e1, QIcc::MatrixElement::e10, QIcc::MatrixElement::e11, QIcc::MatrixElement::e2, QIcc::MatrixElement::e3, QIcc::MatrixElement::e4, QIcc::MatrixElement::e5, QIcc::MatrixElement::e6, QIcc::MatrixElement::e7, QIcc::MatrixElement::e8, QIcc::MatrixElement::e9, fromFixedS1516(), QColorCLUT::isEmpty(), QColorMatrix::isIdentity(), QColorMatrix::isValid(), mAB_, QIcc::mABTagData::matrixOffset, mBA_, QIcc::mABTagData::mCurvesOffset, and QIcc::GenericTagData::type.

Referenced by parseA2B().

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

◆ parseRgbMatrix()

bool QIcc::parseRgbMatrix ( const QByteArray & data,
const QHash< Tag, TagEntry > & tagIndex,
QColorSpacePrivate * colorspaceDPtr )
static

Definition at line 1645 of file qicc.cpp.

References QColorMatrix::toXyzFromAdobeRgb(), QColorMatrix::toXyzFromBt2020(), QColorMatrix::toXyzFromDciP3D65(), QColorMatrix::toXyzFromProPhotoRgb(), and QColorMatrix::toXyzFromSRgb().

Here is the call graph for this function:

◆ parseTRC()

quint32 QIcc::parseTRC ( const QByteArrayView & tagData,
QColorTrc & gamma,
QColorTransferTable::Type type = QColorTransferTable::TwoWay )
static

Definition at line 1086 of file qicc.cpp.

References QColorTransferFunction::QColorTransferFunction(), QColorTransferFunction::QColorTransferFunction(), curv, QIcc::ParaTagData::curveType, QColorTransferFunction::fromGamma(), para, QIcc::GenericTagData::type, and QIcc::CurvTagData::valueCount.

Here is the call graph for this function:

◆ parseTRCs()

bool QIcc::parseTRCs ( const QByteArray & data,
const QHash< Tag, TagEntry > & tagIndex,
QColorSpacePrivate * colorspaceDPtr,
bool isColorSpaceTypeGray )
static

Definition at line 1723 of file qicc.cpp.

References QColorTransferFunction::QColorTransferFunction(), aabg, aagg, aarg, QColorTransferFunction::fromGamma(), QColorTransferFunction::fromSRgb(), and QColorSpacePrivate::gamma.

Here is the call graph for this function:

◆ parseXyzData()

bool QIcc::parseXyzData ( const QByteArray & data,
const TagEntry & tagEntry,
QColorVector & colorVector )
static

Definition at line 1067 of file qicc.cpp.

References QIcc::XYZTagData::fixedX, QIcc::XYZTagData::fixedY, QIcc::XYZTagData::fixedZ, fromFixedS1516(), QIcc::GenericTagData::type, and XYZ_.

Here is the call graph for this function:

◆ toFixedS1516()

int QIcc::toFixedS1516 ( float x)
static

Definition at line 269 of file qicc.cpp.

Referenced by writeColorTrc(), and writeMab().

Here is the caller graph for this function:

◆ toIccProfile()

QByteArray QIcc::toIccProfile ( const QColorSpace & space)

Definition at line 762 of file qicc.cpp.

References A2B0, acsp, B2A0, bTRC, bXYZ, chad, cicp, Cmyk, cprt, desc, Display, Gray, gTRC, gXYZ, QColorSpacePrivate::isPcsLab, QColorSpacePrivate::isThreeComponentMatrix(), isValidIccProfile(), kTRC, Lab_, mluc, QIcc::ICCProfileHeader::profileSize, Rgb, rTRC, rXYZ, sf32, wtpt, and XYZ_.

Here is the call graph for this function:

◆ visitElement() [1/4]

void QIcc::visitElement ( ElementCombo & combo,
const QColorCLUT & element,
int ,
const QList< QColorSpacePrivate::Element > &  )
static

Definition at line 432 of file qicc.cpp.

References QIcc::ElementCombo::clut.

◆ visitElement() [2/4]

void QIcc::visitElement ( ElementCombo & combo,
const QColorMatrix & element,
int number,
const QList< QColorSpacePrivate::Element > &  )
static

Definition at line 417 of file qicc.cpp.

References QIcc::ElementCombo::inMatrix, and QIcc::ElementCombo::midMatrix.

◆ visitElement() [3/4]

void QIcc::visitElement ( ElementCombo & combo,
const QColorSpacePrivate::TransferElement & element,
int number,
const QList< QColorSpacePrivate::Element > & list )
static

◆ visitElement() [4/4]

void QIcc::visitElement ( ElementCombo & combo,
const QColorVector & element,
int ,
const QList< QColorSpacePrivate::Element > &  )
static

Definition at line 426 of file qicc.cpp.

References QIcc::ElementCombo::midOffset.

◆ writeColorTrc()

int QIcc::writeColorTrc ( QDataStream & stream,
const QColorTrc & trc )
static

Definition at line 330 of file qicc.cpp.

References curv, QColorTransferFunction::isGamma(), QColorTransferFunction::m_a, QColorTransferFunction::m_b, QColorTransferFunction::m_c, QColorTransferFunction::m_d, QColorTransferFunction::m_e, QColorTransferFunction::m_f, QColorTransferFunction::m_g, para, and toFixedS1516().

Here is the call graph for this function:

◆ writeMab()

int QIcc::writeMab ( QDataStream & stream,
const QList< QColorSpacePrivate::Element > & abList,
bool isAb,
bool pcsLab,
bool isCmyk )
static

Definition at line 462 of file qicc.cpp.

References QIcc::ElementCombo::clut, curv, QIcc::ElementCombo::inMatrix, QIcc::ElementCombo::inTable, isTableTrc(), isTableTrcSingleSize(), mAB_, mBA_, mft2, QIcc::ElementCombo::midMatrix, QIcc::ElementCombo::midOffset, QIcc::ElementCombo::midTable, QIcc::ElementCombo::outTable, and toFixedS1516().

Here is the call graph for this function: