Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QColorTrcLut Class Reference

#include <qcolortrclut_p.h>

+ Collaboration diagram for QColorTrcLut:

Public Types

enum  Direction { ToLinear = 1 , FromLinear = 2 , BiLinear = ToLinear | FromLinear }
 

Public Member Functions

void setFromGamma (qreal gamma, Direction dir=BiLinear)
 
void setFromTransferFunction (const QColorTransferFunction &transFn, Direction dir=BiLinear)
 
void setFromTransferTable (const QColorTransferTable &transTable, Direction dir=BiLinear)
 
QRgba64 toLinear64 (QRgb rgb32) const
 
QRgba64 toLinear64 (QRgba64) const =delete
 
QRgb toLinear (QRgb rgb32) const
 
QRgba64 toLinear (QRgba64 rgb64) const
 
float u8ToLinearF32 (int c) const
 
float u16ToLinearF32 (int c) const
 
float toLinear (float f) const
 
QRgb fromLinear64 (QRgba64 rgb64) const
 
QRgb fromLinear (QRgb rgb32) const
 
QRgba64 fromLinear (QRgba64 rgb64) const
 
int u8FromLinearF32 (float f) const
 
int u16FromLinearF32 (float f) const
 
float fromLinear (float f) const
 

Static Public Member Functions

static std::shared_ptr< QColorTrcLutfromGamma (qreal gamma, Direction dir=BiLinear)
 
static std::shared_ptr< QColorTrcLutfromTransferFunction (const QColorTransferFunction &transFn, Direction dir=BiLinear)
 
static std::shared_ptr< QColorTrcLutfromTransferTable (const QColorTransferTable &transTable, Direction dir=BiLinear)
 

Public Attributes

std::unique_ptr< ushort[]> m_toLinear
 
std::unique_ptr< ushort[]> m_fromLinear
 

Static Public Attributes

static constexpr uint32_t ShiftUp = 4
 
static constexpr uint32_t ShiftDown = (8 - ShiftUp)
 
static constexpr qsizetype Resolution = (1 << ShiftUp) * 255
 

Detailed Description

Definition at line 36 of file qcolortrclut_p.h.

Member Enumeration Documentation

◆ Direction

Enumerator
ToLinear 
FromLinear 
BiLinear 

Definition at line 43 of file qcolortrclut_p.h.

Member Function Documentation

◆ fromGamma()

std::shared_ptr< QColorTrcLut > QColorTrcLut::fromGamma ( qreal gamma,
Direction dir = BiLinear )
static

Definition at line 16 of file qcolortrclut.cpp.

References dir.

Referenced by QGuiApplicationPrivate::colorProfileForA32Text(), and QGuiApplicationPrivate::colorProfileForA8Text().

+ Here is the caller graph for this function:

◆ fromLinear() [1/3]

float QColorTrcLut::fromLinear ( float f) const
inline

Definition at line 194 of file qcolortrclut_p.h.

◆ fromLinear() [2/3]

QRgb QColorTrcLut::fromLinear ( QRgb rgb32) const
inline

Definition at line 174 of file qcolortrclut_p.h.

◆ fromLinear() [3/3]

QRgba64 QColorTrcLut::fromLinear ( QRgba64 rgb64) const
inline

Definition at line 179 of file qcolortrclut_p.h.

◆ fromLinear64()

QRgb QColorTrcLut::fromLinear64 ( QRgba64 rgb64) const
inline

Definition at line 129 of file qcolortrclut_p.h.

◆ fromTransferFunction()

std::shared_ptr< QColorTrcLut > QColorTrcLut::fromTransferFunction ( const QColorTransferFunction & transFn,
Direction dir = BiLinear )
static

Definition at line 23 of file qcolortrclut.cpp.

References dir, and fun.

Referenced by lutFromTrc().

+ Here is the caller graph for this function:

◆ fromTransferTable()

std::shared_ptr< QColorTrcLut > QColorTrcLut::fromTransferTable ( const QColorTransferTable & transTable,
Direction dir = BiLinear )
static

Definition at line 30 of file qcolortrclut.cpp.

References dir.

Referenced by lutFromTrc().

+ Here is the caller graph for this function:

◆ setFromGamma()

void QColorTrcLut::setFromGamma ( qreal gamma,
Direction dir = BiLinear )

Definition at line 37 of file qcolortrclut.cpp.

References dir, FromLinear, i, m_fromLinear, m_toLinear, qPow(), qRound(), Resolution, and ToLinear.

+ Here is the call graph for this function:

◆ setFromTransferFunction()

void QColorTrcLut::setFromTransferFunction ( const QColorTransferFunction & transFn,
Direction dir = BiLinear )

Definition at line 54 of file qcolortrclut.cpp.

References dir, FromLinear, fun, i, m_fromLinear, m_toLinear, qRound(), Resolution, and ToLinear.

+ Here is the call graph for this function:

◆ setFromTransferTable()

void QColorTrcLut::setFromTransferTable ( const QColorTransferTable & transTable,
Direction dir = BiLinear )

Definition at line 72 of file qcolortrclut.cpp.

References dir, FromLinear, i, m_fromLinear, m_toLinear, qBound(), qRound(), Resolution, and ToLinear.

+ Here is the call graph for this function:

◆ toLinear() [1/3]

float QColorTrcLut::toLinear ( float f) const
inline

Definition at line 123 of file qcolortrclut_p.h.

◆ toLinear() [2/3]

QRgb QColorTrcLut::toLinear ( QRgb rgb32) const
inline

Definition at line 100 of file qcolortrclut_p.h.

Referenced by qGamma_correct_back_to_linear_cs().

+ Here is the caller graph for this function:

◆ toLinear() [3/3]

QRgba64 QColorTrcLut::toLinear ( QRgba64 rgb64) const
inline

Definition at line 105 of file qcolortrclut_p.h.

◆ toLinear64() [1/2]

QRgba64 QColorTrcLut::toLinear64 ( QRgb rgb32) const
inline

Definition at line 58 of file qcolortrclut_p.h.

References QRgba64::fromRgba64(), qAlpha(), qBlue(), qGreen(), and qRed().

+ Here is the call graph for this function:

◆ toLinear64() [2/2]

QRgba64 QColorTrcLut::toLinear64 ( QRgba64 ) const
delete

◆ u16FromLinearF32()

int QColorTrcLut::u16FromLinearF32 ( float f) const
inline

Definition at line 189 of file qcolortrclut_p.h.

◆ u16ToLinearF32()

float QColorTrcLut::u16ToLinearF32 ( int c) const
inline

Definition at line 116 of file qcolortrclut_p.h.

◆ u8FromLinearF32()

int QColorTrcLut::u8FromLinearF32 ( float f) const
inline

Definition at line 184 of file qcolortrclut_p.h.

◆ u8ToLinearF32()

float QColorTrcLut::u8ToLinearF32 ( int c) const
inline

Definition at line 110 of file qcolortrclut_p.h.

Member Data Documentation

◆ m_fromLinear

std::unique_ptr<ushort[]> QColorTrcLut::m_fromLinear

Definition at line 205 of file qcolortrclut_p.h.

Referenced by setFromGamma(), setFromTransferFunction(), and setFromTransferTable().

◆ m_toLinear

std::unique_ptr<ushort[]> QColorTrcLut::m_toLinear

Definition at line 204 of file qcolortrclut_p.h.

Referenced by setFromGamma(), setFromTransferFunction(), and setFromTransferTable().

◆ Resolution

constexpr qsizetype QColorTrcLut::Resolution = (1 << ShiftUp) * 255
staticconstexpr

◆ ShiftDown

constexpr uint32_t QColorTrcLut::ShiftDown = (8 - ShiftUp)
staticconstexpr

Definition at line 40 of file qcolortrclut_p.h.

◆ ShiftUp

constexpr uint32_t QColorTrcLut::ShiftUp = 4
staticconstexpr

Definition at line 39 of file qcolortrclut_p.h.


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