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
qcolortransform.cpp File Reference

(abed1a41e1dfc6b1cc6eaa7cc8072c6638230811)

#include "qcolortransform.h"
#include "qcolortransform_p.h"
#include "qcmyk_p.h"
#include "qcolorclut_p.h"
#include "qcolormatrix_p.h"
#include "qcolorspace_p.h"
#include "qcolortrc_p.h"
#include "qcolortrclut_p.h"
#include <QtCore/qatomic.h>
#include <QtCore/qmath.h>
#include <QtGui/qcolor.h>
#include <QtGui/qimage.h>
#include <QtGui/qtransform.h>
#include <QtCore/private/qsimd_p.h>
#include <qdebug.h>
+ Include dependency graph for qcolortransform.cpp:

Go to the source code of this file.

Classes

class  QUninitialized< T, Count >
 

Enumerations

enum  ApplyMatrixForm { DoNotClamp = 0 , DoClamp = 1 }
 

Functions

QT_BEGIN_NAMESPACE std::shared_ptr< QColorTrcLutlutFromTrc (const QColorTrc &trc)
 
template<ApplyMatrixForm doClamp = DoClamp>
static void applyMatrix (QColorVector *buffer, const qsizetype len, const QColorMatrix &colorMatrix)
 
template<ApplyMatrixForm doClamp = DoClamp>
static void clampIfNeeded (QColorVector *buffer, const qsizetype len)
 
template<typename T >
static float getAlphaF (const T &)
 
template<>
float getAlphaF (const QRgb &r)
 
template<>
float getAlphaF (const QCmyk32 &)
 
template<>
float getAlphaF (const QRgba64 &r)
 
template<>
float getAlphaF (const QRgbaFloat32 &r)
 
template<typename T >
static void loadPremultiplied (QColorVector *buffer, const T *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<typename T >
static void loadUnpremultiplied (QColorVector *buffer, const T *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadPremultiplied< QRgb > (QColorVector *buffer, const QRgb *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadPremultiplied< QRgba64 > (QColorVector *buffer, const QRgba64 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadUnpremultiplied< QRgb > (QColorVector *buffer, const QRgb *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadUnpremultiplied< QRgba64 > (QColorVector *buffer, const QRgba64 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadPremultiplied< QRgbaFloat32 > (QColorVector *buffer, const QRgbaFloat32 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<>
void loadUnpremultiplied< QRgbaFloat32 > (QColorVector *buffer, const QRgbaFloat32 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storePremultiplied (QRgb *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeUnpremultiplied (QRgb *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeOpaque (QRgb *dst, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<typename S >
static void storePremultiplied (QRgba64 *dst, const S *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<typename S >
static void storeUnpremultiplied (QRgba64 *dst, const S *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeOpaque (QRgba64 *dst, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<typename S >
static void storePremultiplied (QRgbaFloat32 *dst, const S *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
template<typename S >
static void storeUnpremultiplied (QRgbaFloat32 *dst, const S *src, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeOpaque (QRgbaFloat32 *dst, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void loadGray (QColorVector *buffer, const quint8 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void loadGray (QColorVector *buffer, const quint16 *src, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeOpaque (quint8 *dst, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
static void storeOpaque (quint16 *dst, const QColorVector *buffer, const qsizetype len, const QColorTransformPrivate *d_ptr)
 
void loadUnpremultipliedLUT (QColorVector *buffer, const QRgb *src, const qsizetype len)
 
void loadUnpremultipliedLUT (QColorVector *buffer, const QCmyk32 *src, const qsizetype len)
 
void loadUnpremultipliedLUT (QColorVector *buffer, const QRgba64 *src, const qsizetype len)
 
void loadUnpremultipliedLUT (QColorVector *buffer, const QRgbaFloat32 *src, const qsizetype len)
 
void loadPremultipliedLUT (QColorVector *buffer, const QRgb *src, const qsizetype len)
 
void loadPremultipliedLUT (QColorVector *, const QCmyk32 *, const qsizetype)
 
void loadPremultipliedLUT (QColorVector *buffer, const QRgba64 *src, const qsizetype len)
 
void loadPremultipliedLUT (QColorVector *buffer, const QRgbaFloat32 *src, const qsizetype len)
 
template<typename T >
static void storeUnpremultipliedLUT (QRgb *dst, const T *, const QColorVector *buffer, const qsizetype len)
 
template<>
void storeUnpremultipliedLUT (QRgb *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
void storeUnpremultipliedLUT (QCmyk32 *dst, const T *, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storeUnpremultipliedLUT (QRgba64 *dst, const T *, const QColorVector *buffer, const qsizetype len)
 
template<>
void storeUnpremultipliedLUT (QRgba64 *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len)
 
template<>
void storeUnpremultipliedLUT (QRgba64 *dst, const QRgba64 *src, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storeUnpremultipliedLUT (QRgbaFloat32 *dst, const T *src, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storePremultipliedLUT (QRgb *, const T *, const QColorVector *, const qsizetype)
 
template<>
void storePremultipliedLUT (QRgb *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len)
 
template<>
void storePremultipliedLUT (QRgb *dst, const QCmyk32 *, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storePremultipliedLUT (QCmyk32 *dst, const T *src, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storePremultipliedLUT (QRgba64 *, const T *, const QColorVector *, const qsizetype)
 
template<>
void storePremultipliedLUT (QRgba64 *dst, const QRgb *src, const QColorVector *buffer, const qsizetype len)
 
template<>
void storePremultipliedLUT (QRgba64 *dst, const QCmyk32 *, const QColorVector *buffer, const qsizetype len)
 
template<>
void storePremultipliedLUT (QRgba64 *dst, const QRgba64 *src, const QColorVector *buffer, const qsizetype len)
 
template<typename T >
static void storePremultipliedLUT (QRgbaFloat32 *dst, const T *src, const QColorVector *buffer, const qsizetype len)
 
static void visitElement (const QColorSpacePrivate::TransferElement &element, QColorVector *buffer, const qsizetype len)
 
static void visitElement (const QColorMatrix &element, QColorVector *buffer, const qsizetype len)
 
static void visitElement (const QColorVector &offset, QColorVector *buffer, const qsizetype len)
 
static void visitElement (const QColorCLUT &element, QColorVector *buffer, const qsizetype len)
 

Variables

static constexpr qsizetype WorkBlockSize = 256
 

Enumeration Type Documentation

◆ ApplyMatrixForm

Enumerator
DoNotClamp 
DoClamp 

Definition at line 278 of file qcolortransform.cpp.

Function Documentation

◆ applyMatrix()

template<ApplyMatrixForm doClamp = DoClamp>
static void applyMatrix ( QColorVector * buffer,
const qsizetype len,
const QColorMatrix & colorMatrix )
static

Definition at line 284 of file qcolortransform.cpp.

References QColorMatrix::b, QColorMatrix::g, j, QColorMatrix::map(), QColorMatrix::r, and QColorVector::x.

+ Here is the call graph for this function:

◆ clampIfNeeded()

template<ApplyMatrixForm doClamp = DoClamp>
static void clampIfNeeded ( QColorVector * buffer,
const qsizetype len )
static

Definition at line 344 of file qcolortransform.cpp.

References DoClamp, j, and QColorVector::x.

◆ getAlphaF() [1/5]

template<>
float getAlphaF ( const QCmyk32 & )

Definition at line 401 of file qcolortransform.cpp.

◆ getAlphaF() [2/5]

template<>
float getAlphaF ( const QRgb & r)

Definition at line 397 of file qcolortransform.cpp.

References qAlpha().

+ Here is the call graph for this function:

◆ getAlphaF() [3/5]

template<>
float getAlphaF ( const QRgba64 & r)

Definition at line 405 of file qcolortransform.cpp.

◆ getAlphaF() [4/5]

template<>
float getAlphaF ( const QRgbaFloat32 & r)

Definition at line 409 of file qcolortransform.cpp.

◆ getAlphaF() [5/5]

template<typename T >
static float getAlphaF ( const T & )
static

Referenced by storePremultiplied(), storePremultiplied(), storePremultipliedLUT(), storeUnpremultiplied(), storeUnpremultiplied(), and storeUnpremultipliedLUT().

+ Here is the caller graph for this function:

◆ loadGray() [1/2]

static void loadGray ( QColorVector * buffer,
const quint16 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

◆ loadGray() [2/2]

static void loadGray ( QColorVector * buffer,
const quint8 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1220 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceIn, i, QColorSpacePrivate::lut, and QColorSpacePrivate::whitePoint.

Referenced by QColorTransformPrivate::applyGray().

+ Here is the caller graph for this function:

◆ loadPremultiplied()

template<typename T >
static void loadPremultiplied ( QColorVector * buffer,
const T * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Referenced by QColorTransformPrivate::applyReturnGray().

+ Here is the caller graph for this function:

◆ loadPremultiplied< QRgb >()

template<>
void loadPremultiplied< QRgb > ( QColorVector * buffer,
const QRgb * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

Definition at line 702 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceIn, i, QColorSpacePrivate::lut, qAlpha(), qBlue(), qGreen(), qRed(), and QColorTrcLut::Resolution.

+ Here is the call graph for this function:

◆ loadPremultiplied< QRgba64 >()

template<>
void loadPremultiplied< QRgba64 > ( QColorVector * buffer,
const QRgba64 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

Definition at line 722 of file qcolortransform.cpp.

References QRgba64::alpha(), QColorTransformPrivate::colorSpaceIn, i, QColorSpacePrivate::lut, and QColorTrcLut::Resolution.

+ Here is the call graph for this function:

◆ loadPremultiplied< QRgbaFloat32 >()

template<>
void loadPremultiplied< QRgbaFloat32 > ( QColorVector * buffer,
const QRgbaFloat32 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

Definition at line 765 of file qcolortransform.cpp.

References QRgbaFloat< F >::a, QColorTrc::applyExtended(), QColorTransformPrivate::colorSpaceIn, i, and QColorSpacePrivate::trc.

+ Here is the call graph for this function:

◆ loadPremultipliedLUT() [1/4]

void loadPremultipliedLUT ( QColorVector * ,
const QCmyk32 * ,
const qsizetype  )

Definition at line 1314 of file qcolortransform.cpp.

◆ loadPremultipliedLUT() [2/4]

void loadPremultipliedLUT ( QColorVector * buffer,
const QRgb * src,
const qsizetype len )

Definition at line 1303 of file qcolortransform.cpp.

References i, qAlpha(), qBlue(), qGreen(), and qRed().

+ Here is the call graph for this function:

◆ loadPremultipliedLUT() [3/4]

void loadPremultipliedLUT ( QColorVector * buffer,
const QRgba64 * src,
const qsizetype len )

Definition at line 1319 of file qcolortransform.cpp.

References i.

◆ loadPremultipliedLUT() [4/4]

void loadPremultipliedLUT ( QColorVector * buffer,
const QRgbaFloat32 * src,
const qsizetype len )

Definition at line 1329 of file qcolortransform.cpp.

References i.

◆ loadUnpremultiplied()

template<typename T >
static void loadUnpremultiplied ( QColorVector * buffer,
const T * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Referenced by QColorTransformPrivate::applyReturnGray().

+ Here is the caller graph for this function:

◆ loadUnpremultiplied< QRgb >()

template<>
void loadUnpremultiplied< QRgb > ( QColorVector * buffer,
const QRgb * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

Definition at line 742 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceIn, i, QColorSpacePrivate::lut, qBlue(), qGreen(), and qRed().

+ Here is the call graph for this function:

◆ loadUnpremultiplied< QRgba64 >()

template<>
void loadUnpremultiplied< QRgba64 > ( QColorVector * buffer,
const QRgba64 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

◆ loadUnpremultiplied< QRgbaFloat32 >()

template<>
void loadUnpremultiplied< QRgbaFloat32 > ( QColorVector * buffer,
const QRgbaFloat32 * src,
const qsizetype len,
const QColorTransformPrivate * d_ptr )

Definition at line 782 of file qcolortransform.cpp.

References QColorTrc::applyExtended(), QColorTransformPrivate::colorSpaceIn, i, and QColorSpacePrivate::trc.

+ Here is the call graph for this function:

◆ loadUnpremultipliedLUT() [1/4]

void loadUnpremultipliedLUT ( QColorVector * buffer,
const QCmyk32 * src,
const qsizetype len )

Definition at line 1272 of file qcolortransform.cpp.

References i.

◆ loadUnpremultipliedLUT() [2/4]

void loadUnpremultipliedLUT ( QColorVector * buffer,
const QRgb * src,
const qsizetype len )

Definition at line 1261 of file qcolortransform.cpp.

References i, qBlue(), qGreen(), and qRed().

+ Here is the call graph for this function:

◆ loadUnpremultipliedLUT() [3/4]

void loadUnpremultipliedLUT ( QColorVector * buffer,
const QRgba64 * src,
const qsizetype len )

Definition at line 1284 of file qcolortransform.cpp.

References i.

◆ loadUnpremultipliedLUT() [4/4]

void loadUnpremultipliedLUT ( QColorVector * buffer,
const QRgbaFloat32 * src,
const qsizetype len )

Definition at line 1294 of file qcolortransform.cpp.

References i.

◆ lutFromTrc()

QT_BEGIN_NAMESPACE std::shared_ptr< QColorTrcLut > lutFromTrc ( const QColorTrc & trc)

Definition at line 25 of file qcolortransform.cpp.

References QColorTrcLut::fromTransferFunction(), QColorTrcLut::fromTransferTable(), QColorTrc::m_fun, QColorTrc::m_table, QColorTrc::m_type, and qWarning.

Referenced by QColorTransformPrivate::updateLutsIn(), and QColorTransformPrivate::updateLutsOut().

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

◆ storeOpaque() [1/5]

static void storeOpaque ( QRgb * dst,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1132 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceOut, i, and QColorSpacePrivate::lut.

Referenced by QColorTransformPrivate::applyGray(), and QColorTransformPrivate::applyReturnGray().

+ Here is the caller graph for this function:

◆ storeOpaque() [2/5]

static void storeOpaque ( QRgba64 * dst,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1170 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceOut, i, QColorSpacePrivate::lut, and qRgba64().

+ Here is the call graph for this function:

◆ storeOpaque() [3/5]

static void storeOpaque ( QRgbaFloat32 * dst,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1208 of file qcolortransform.cpp.

References QColorTrc::applyInverseExtended(), QColorTransformPrivate::colorSpaceOut, i, and QColorSpacePrivate::trc.

+ Here is the call graph for this function:

◆ storeOpaque() [4/5]

static void storeOpaque ( quint16 * dst,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

◆ storeOpaque() [5/5]

static void storeOpaque ( quint8 * dst,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

◆ storePremultiplied() [1/3]

static void storePremultiplied ( QRgb * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1108 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceOut, i, QColorSpacePrivate::lut, qAlpha(), qRgba(), and QColorTrcLut::Resolution.

+ Here is the call graph for this function:

◆ storePremultiplied() [2/3]

template<typename S >
static void storePremultiplied ( QRgba64 * dst,
const S * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1144 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceOut, getAlphaF(), i, QColorSpacePrivate::lut, qRgba64(), and QColorTrcLut::Resolution.

+ Here is the call graph for this function:

◆ storePremultiplied() [3/3]

template<typename S >
static void storePremultiplied ( QRgbaFloat32 * dst,
const S * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1183 of file qcolortransform.cpp.

References QColorTrc::applyInverseExtended(), QColorTransformPrivate::colorSpaceOut, getAlphaF(), i, and QColorSpacePrivate::trc.

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [1/9]

template<typename T >
static void storePremultipliedLUT ( QCmyk32 * dst,
const T * src,
const QColorVector * buffer,
const qsizetype len )
static

Definition at line 1450 of file qcolortransform.cpp.

References storeUnpremultipliedLUT().

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [2/9]

template<typename T >
static void storePremultipliedLUT ( QRgb * ,
const T * ,
const QColorVector * ,
const qsizetype  )
static

◆ storePremultipliedLUT() [3/9]

template<>
void storePremultipliedLUT ( QRgb * dst,
const QCmyk32 * ,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1438 of file qcolortransform.cpp.

References i.

◆ storePremultipliedLUT() [4/9]

template<>
void storePremultipliedLUT ( QRgb * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1426 of file qcolortransform.cpp.

References i, and qAlpha().

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [5/9]

template<typename T >
static void storePremultipliedLUT ( QRgba64 * ,
const T * ,
const QColorVector * ,
const qsizetype  )
static

◆ storePremultipliedLUT() [6/9]

template<>
void storePremultipliedLUT ( QRgba64 * dst,
const QCmyk32 * ,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1471 of file qcolortransform.cpp.

References i, and qRgba64().

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [7/9]

template<>
void storePremultipliedLUT ( QRgba64 * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1459 of file qcolortransform.cpp.

References i, qAlpha(), and qRgba64().

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [8/9]

template<>
void storePremultipliedLUT ( QRgba64 * dst,
const QRgba64 * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1482 of file qcolortransform.cpp.

References i, and qRgba64().

+ Here is the call graph for this function:

◆ storePremultipliedLUT() [9/9]

template<typename T >
static void storePremultipliedLUT ( QRgbaFloat32 * dst,
const T * src,
const QColorVector * buffer,
const qsizetype len )
static

Definition at line 1494 of file qcolortransform.cpp.

References getAlphaF(), and i.

+ Here is the call graph for this function:

◆ storeUnpremultiplied() [1/3]

static void storeUnpremultiplied ( QRgb * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

◆ storeUnpremultiplied() [2/3]

template<typename S >
static void storeUnpremultiplied ( QRgba64 * dst,
const S * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1158 of file qcolortransform.cpp.

References QColorTransformPrivate::colorSpaceOut, getAlphaF(), i, QColorSpacePrivate::lut, and qRgba64().

+ Here is the call graph for this function:

◆ storeUnpremultiplied() [3/3]

template<typename S >
static void storeUnpremultiplied ( QRgbaFloat32 * dst,
const S * src,
const QColorVector * buffer,
const qsizetype len,
const QColorTransformPrivate * d_ptr )
static

Definition at line 1196 of file qcolortransform.cpp.

References QColorTrc::applyInverseExtended(), QColorTransformPrivate::colorSpaceOut, getAlphaF(), i, and QColorSpacePrivate::trc.

+ Here is the call graph for this function:

◆ storeUnpremultipliedLUT() [1/7]

template<typename T >
void storeUnpremultipliedLUT ( QCmyk32 * dst,
const T * ,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1362 of file qcolortransform.cpp.

References i.

◆ storeUnpremultipliedLUT() [2/7]

template<>
void storeUnpremultipliedLUT ( QRgb * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1350 of file qcolortransform.cpp.

References i.

◆ storeUnpremultipliedLUT() [3/7]

template<typename T >
static void storeUnpremultipliedLUT ( QRgb * dst,
const T * ,
const QColorVector * buffer,
const qsizetype len )
static

Definition at line 1339 of file qcolortransform.cpp.

References i.

Referenced by QColorTransformPrivate::applyGray(), and storePremultipliedLUT().

+ Here is the caller graph for this function:

◆ storeUnpremultipliedLUT() [4/7]

template<>
void storeUnpremultipliedLUT ( QRgba64 * dst,
const QRgb * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1386 of file qcolortransform.cpp.

References i, qAlpha(), and qRgba64().

+ Here is the call graph for this function:

◆ storeUnpremultipliedLUT() [5/7]

template<>
void storeUnpremultipliedLUT ( QRgba64 * dst,
const QRgba64 * src,
const QColorVector * buffer,
const qsizetype len )

Definition at line 1399 of file qcolortransform.cpp.

References i, and qRgba64().

+ Here is the call graph for this function:

◆ storeUnpremultipliedLUT() [6/7]

template<typename T >
static void storeUnpremultipliedLUT ( QRgba64 * dst,
const T * ,
const QColorVector * buffer,
const qsizetype len )
static

Definition at line 1374 of file qcolortransform.cpp.

References i, and qRgba64().

+ Here is the call graph for this function:

◆ storeUnpremultipliedLUT() [7/7]

template<typename T >
static void storeUnpremultipliedLUT ( QRgbaFloat32 * dst,
const T * src,
const QColorVector * buffer,
const qsizetype len )
static

Definition at line 1411 of file qcolortransform.cpp.

References getAlphaF(), and i.

+ Here is the call graph for this function:

◆ visitElement() [1/4]

static void visitElement ( const QColorCLUT & element,
QColorVector * buffer,
const qsizetype len )
static

Definition at line 1529 of file qcolortransform.cpp.

References QColorCLUT::apply(), i, and QColorCLUT::isEmpty().

+ Here is the call graph for this function:

◆ visitElement() [2/4]

static void visitElement ( const QColorMatrix & element,
QColorVector * buffer,
const qsizetype len )
static

Definition at line 1517 of file qcolortransform.cpp.

References i, and QColorMatrix::map().

+ Here is the call graph for this function:

◆ visitElement() [3/4]

static void visitElement ( const QColorSpacePrivate::TransferElement & element,
QColorVector * buffer,
const qsizetype len )
static

Definition at line 1505 of file qcolortransform.cpp.

References QColorTrc::apply(), i, QColorTrc::isValid(), and QColorSpacePrivate::TransferElement::trc.

Referenced by QColorTransformPrivate::applyGray(), QColorTransformPrivate::map(), and QColorTransformPrivate::mapExtended().

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

◆ visitElement() [4/4]

static void visitElement ( const QColorVector & offset,
QColorVector * buffer,
const qsizetype len )
static

Definition at line 1523 of file qcolortransform.cpp.

References i.

Variable Documentation

◆ WorkBlockSize

constexpr qsizetype WorkBlockSize = 256
staticconstexpr