Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qdrawhelper.cpp File Reference
#include "qdrawhelper_p.h"
#include <qstylehints.h>
#include <qguiapplication.h>
#include <qatomic.h>
#include <private/qcolortransform_p.h>
#include <private/qcolortrclut_p.h>
#include <private/qdrawhelper_p.h>
#include <private/qdrawhelper_x86_p.h>
#include <private/qdrawingprimitive_sse2_p.h>
#include <private/qdrawhelper_neon_p.h>
#include <private/qguiapplication_p.h>
#include <private/qpaintengine_raster_p.h>
#include <private/qpainter_p.h>
#include <private/qpixellayout_p.h>
#include <private/qrgba64_p.h>
#include <qendian.h>
#include <qloggingcategory.h>
#include <qmath.h>
+ Include dependency graph for qdrawhelper.cpp:

Go to the source code of this file.

Classes

class  GradientBase32
 
class  RadialFetchPlain< GradientBase >
 
struct  QBlendBase
 
class  BlendSrcGeneric
 

Macros

#define MASK(src, a)   src = BYTE_MUL(src, a)
 
#define FIXPT_BITS   8
 
#define FIXPT_SIZE   (1<<FIXPT_BITS)
 
#define FIXPT_MAX   (INT_MAX >> (FIXPT_BITS + 1))
 
#define QT_THREAD_PARALLEL_FILLS(function)   function(0, count)
 

Typedefs

typedef uint(QT_FASTCALLFetch1PixelFunc) (const uchar *src, int index)
 
typedef void(QT_FASTCALLBilinearFastTransformHelper) (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int fdy)
 

Enumerations

enum  TextureBlendType {
  BlendUntransformed , BlendTiled , BlendTransformed , BlendTransformedTiled ,
  BlendTransformedBilinear , BlendTransformedBilinearTiled , NBlendTypes
}
 
enum  FastTransformTypes {
  SimpleScaleTransform , UpscaleTransform , DownscaleTransform , RotateTransform ,
  FastRotateTransform , NFastTransformTypes
}
 

Functions

template<QPixelLayout::BPP bpp>
static uint QT_FASTCALL fetch1Pixel (const uchar *, int)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1LSB > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1MSB > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP8 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP24 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP64 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16FPx4 > (const uchar *src, int index)
 
template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32FPx4 > (const uchar *src, int index)
 
static uint *QT_FASTCALL destFetchMono (uint *buffer, QRasterBuffer *rasterBuffer, int x, int y, int length)
 
static uint *QT_FASTCALL destFetchMonoLsb (uint *buffer, QRasterBuffer *rasterBuffer, int x, int y, int length)
 
static uint *QT_FASTCALL destFetchARGB32P (uint *, QRasterBuffer *rasterBuffer, int x, int y, int)
 
static uint *QT_FASTCALL destFetchRGB16 (uint *buffer, QRasterBuffer *rasterBuffer, int x, int y, int length)
 
static uint *QT_FASTCALL destFetch (uint *buffer, QRasterBuffer *rasterBuffer, int x, int y, int length)
 
static uint *QT_FASTCALL destFetchUndefined (uint *buffer, QRasterBuffer *, int, int, int)
 
static QRgb findNearestColor (QRgb color, QRasterBuffer *rbuf)
 
static void QT_FASTCALL destStoreMono (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static void QT_FASTCALL destStoreMonoLsb (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static void QT_FASTCALL destStoreRGB16 (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static void QT_FASTCALL destStore (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static void QT_FASTCALL destStoreGray8 (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static void QT_FASTCALL destStoreGray16 (QRasterBuffer *rasterBuffer, int x, int y, const uint *buffer, int length)
 
static const uint *QT_FASTCALL fetchUntransformed (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
static const uint *QT_FASTCALL fetchUntransformedARGB32PM (uint *, const Operator *, const QSpanData *data, int y, int x, int)
 
static const uint *QT_FASTCALL fetchUntransformedRGB16 (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
template<TextureBlendType blendType>
void fetchTransformed_pixelBounds (int max, int l1, int l2, int &v)
 
static bool canUseFastMatrixPath (const qreal cx, const qreal cy, const qsizetype length, const QSpanData *data)
 
template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformed_fetcher (T *buffer, const QSpanData *data, int y, int x, int length)
 
template<TextureBlendType blendType, QPixelLayout::BPP bpp>
static const uint *QT_FASTCALL fetchTransformed (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
static uint interpolate_4_pixels_16 (uint tl, uint tr, uint bl, uint br, uint distx, uint disty)
 
template<TextureBlendType blendType>
void fetchTransformedBilinear_pixelBounds (int max, int l1, int l2, int &v1, int &v2)
 
template<>
void fetchTransformedBilinear_pixelBounds< BlendTransformedBilinearTiled > (int max, int, int, int &v1, int &v2)
 
template<>
void fetchTransformedBilinear_pixelBounds< BlendTransformedBilinear > (int, int l1, int l2, int &v1, int &v2)
 
static void QT_FASTCALL intermediate_adder (uint *b, uint *end, const IntermediateBuffer &intermediate, int offset, int &fx, int fdx)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_simple_scale_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_upscale_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_downscale_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_rotate_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int fdy)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_fast_rotate_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int fdy)
 
template<TextureBlendType blendType>
static const uint *QT_FASTCALL fetchTransformedBilinearARGB32PM (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinear_simple_scale_helper (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int)
 
template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformedBilinear_fetcher (T *buf1, T *buf2, const int len, const QTextureData &image, int fx, int fy, const int fdx, const int fdy)
 
template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformedBilinear_slow_fetcher (T *buf1, T *buf2, ushort *distxs, ushort *distys, const int len, const QTextureData &image, qreal &fx, qreal &fy, qreal &fw, const qreal fdx, const qreal fdy, const qreal fdw)
 
template<TextureBlendType blendType, QPixelLayout::BPP bpp>
static const uint *QT_FASTCALL fetchTransformedBilinear (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
static SourceFetchProc getSourceFetch (TextureBlendType blendType, QImage::Format format)
 
static uint qt_gradient_pixel_fixed (const QGradientData *data, int fixed_pos)
 
static void QT_FASTCALL getLinearGradientValues (LinearGradientValues *v, const QSpanData *data)
 
template<class GradientBase , typename BlendType >
static const BlendType *QT_FASTCALL qt_fetch_linear_gradient_template (BlendType *buffer, const Operator *op, const QSpanData *data, int y, int x, int length)
 
static const uint *QT_FASTCALL qt_fetch_linear_gradient (uint *buffer, const Operator *op, const QSpanData *data, int y, int x, int length)
 
static void QT_FASTCALL getRadialGradientValues (RadialGradientValues *v, const QSpanData *data)
 
const uint *QT_FASTCALL qt_fetch_radial_gradient_plain (uint *buffer, const Operator *op, const QSpanData *data, int y, int x, int length)
 
template<class GradientBase , typename BlendType >
static const BlendType *QT_FASTCALL qt_fetch_conical_gradient_template (BlendType *buffer, const QSpanData *data, int y, int x, int length)
 
static const uint *QT_FASTCALL qt_fetch_conical_gradient (uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)
 
static TextureBlendType getBlendType (const QSpanData *data)
 
static Operator getOperator (const QSpanData *data, const QT_FT_Span *spans, int spanCount)
 
static void spanfill_from_first (QRasterBuffer *rasterBuffer, QPixelLayout::BPP bpp, int x, int y, int length)
 
static void blend_color_generic (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_color_argb (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_color_generic_rgb64 (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_color_generic_fp (int count, const QT_FT_Span *spans, void *userData)
 
template<typename T >
void handleSpans (int count, const QT_FT_Span *spans, const QSpanData *data, const Operator &op)
 
static void blend_src_generic (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_untransformed_generic (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_untransformed_argb (int count, const QT_FT_Span *spans, void *userData)
 
static quint16 interpolate_pixel_rgb16_255 (quint16 x, quint8 a, quint16 y, quint8 b)
 
static quint32 interpolate_pixel_rgb16x2_255 (quint32 x, quint8 a, quint32 y, quint8 b)
 
static void blend_sourceOver_rgb16_rgb16 (quint16 *Q_DECL_RESTRICT dest, const quint16 *Q_DECL_RESTRICT src, int length, const quint8 alpha, const quint8 ialpha)
 
static void blend_untransformed_rgb565 (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_tiled_generic (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_tiled_argb (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_tiled_rgb565 (int count, const QT_FT_Span *spans, void *userData)
 
void qBlendTexture (int count, const QT_FT_Span *spans, void *userData)
 
static void blend_vertical_gradient_argb (int count, const QT_FT_Span *spans, void *userData)
 
template<ProcessSpans blend_color>
static void blend_vertical_gradient (int count, const QT_FT_Span *spans, void *userData)
 
void qBlendGradient (int count, const QT_FT_Span *spans, void *userData)
 
template<class DST >
static void qt_bitmapblit_template (QRasterBuffer *rasterBuffer, int x, int y, DST color, const uchar *map, int mapWidth, int mapHeight, int mapStride)
 
static void qt_bitmapblit_argb32 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride)
 
static void qt_bitmapblit_rgba8888 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride)
 
template<QtPixelOrder PixelOrder>
static void qt_bitmapblit_rgb30 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride)
 
static void qt_bitmapblit_quint16 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride)
 
static void grayBlendPixel (quint32 *dst, int coverage, QRgba64 srcLinear, const QColorTrcLut *colorProfile)
 
static void alphamapblend_argb32 (quint32 *dst, int coverage, QRgba64 srcLinear, quint32 src, const QColorTrcLut *colorProfile)
 
static void qt_alphamapblit_generic (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride, const QClipData *clip, bool useGammaCorrection)
 
static void alphamapblend_quint16 (int coverage, quint16 *dest, int x, const quint16 srcColor)
 
void qt_alphamapblit_quint16 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride, const QClipData *clip, bool useGammaCorrection)
 
static void qt_alphamapblit_argb32 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uchar *map, int mapWidth, int mapHeight, int mapStride, const QClipData *clip, bool useGammaCorrection)
 
static int qRgbAvg (QRgb rgb)
 
static void rgbBlendPixel (quint32 *dst, int coverage, QRgba64 slinear, const QColorTrcLut *colorProfile)
 
static QRgb rgbBlend (QRgb d, QRgb s, uint rgbAlpha)
 
static void alphargbblend_argb32 (quint32 *dst, uint coverage, const QRgba64 &srcLinear, quint32 src, const QColorTrcLut *colorProfile)
 
static void qt_alphargbblit_generic (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uint *src, int mapWidth, int mapHeight, int srcStride, const QClipData *clip, bool useGammaCorrection)
 
static void qt_alphargbblit_argb32 (QRasterBuffer *rasterBuffer, int x, int y, const QRgba64 &color, const uint *src, int mapWidth, int mapHeight, int srcStride, const QClipData *clip, bool useGammaCorrection)
 
static void qt_rectfill_argb32 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_quint16 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_quint24 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_nonpremul_argb32 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_rgba (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_nonpremul_rgba (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
template<QtPixelOrder PixelOrder>
static void qt_rectfill_rgb30 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_alpha (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_gray (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_quint64 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
static void qt_rectfill_fp32x4 (QRasterBuffer *rasterBuffer, int x, int y, int width, int height, const QRgba64 &color)
 
void qt_memfill64 (quint64 *dest, quint64 color, qsizetype count)
 
void qt_memfill24 (quint24 *dest, quint24 color, qsizetype count)
 
void qt_memfill16 (quint16 *dest, quint16 value, qsizetype count)
 
void qt_memfill32 (quint32 *dest, quint32 color, qsizetype count)
 
void qInitBlendFunctions ()
 
static void qInitDrawhelperFunctions ()
 
 Q_CONSTRUCTOR_FUNCTION (qInitDrawhelperFunctions)
 

Variables

constexpr int fixed_scale = 1 << 16
 
constexpr int half_point = 1 << 15
 
constexpr Fetch1PixelFunc fetch1PixelTable [QPixelLayout::BPPCount]
 
static DestFetchProc destFetchProc [QImage::NImageFormats]
 
static DestStoreProc destStoreProc [QImage::NImageFormats]
 
static BilinearFastTransformHelper bilinearFastTransformHelperARGB32PM [2][NFastTransformTypes]
 
static SourceFetchProc sourceFetchUntransformed [QImage::NImageFormats]
 
static const SourceFetchProc sourceFetchGeneric [NBlendTypes]
 
static SourceFetchProc sourceFetchARGB32PM [NBlendTypes]
 
static SourceFetchProc sourceFetchAny16 [NBlendTypes]
 
static SourceFetchProc sourceFetchAny32 [NBlendTypes]
 
static SourceFetchProc qt_fetch_radial_gradient = qt_fetch_radial_gradient_plain
 
CompositionFunctionSolid qt_functionForModeSolid_C []
 
CompositionFunctionSolid64 qt_functionForModeSolid64_C []
 
CompositionFunctionSolidFP qt_functionForModeSolidFP_C []
 
static const CompositionFunctionSolidfunctionForModeSolid = qt_functionForModeSolid_C
 
CompositionFunction qt_functionForMode_C []
 
CompositionFunction64 qt_functionForMode64_C []
 
CompositionFunctionFP qt_functionForModeFP_C []
 
static const CompositionFunctionfunctionForMode = qt_functionForMode_C
 
static const ProcessSpans processTextureSpansARGB32PM [NBlendTypes]
 
static const ProcessSpans processTextureSpansRGB16 [NBlendTypes]
 
static const ProcessSpans processTextureSpansGeneric [NBlendTypes]
 
DrawHelper qDrawHelper [QImage::NImageFormats]
 

Macro Definition Documentation

◆ FIXPT_BITS

#define FIXPT_BITS   8

Definition at line 3205 of file qdrawhelper.cpp.

◆ FIXPT_MAX

#define FIXPT_MAX   (INT_MAX >> (FIXPT_BITS + 1))

Definition at line 3207 of file qdrawhelper.cpp.

◆ FIXPT_SIZE

#define FIXPT_SIZE   (1<<FIXPT_BITS)

Definition at line 3206 of file qdrawhelper.cpp.

◆ MASK

#define MASK (   src,
  a 
)    src = BYTE_MUL(src, a)

Definition at line 42 of file qdrawhelper.cpp.

◆ QT_THREAD_PARALLEL_FILLS

#define QT_THREAD_PARALLEL_FILLS (   function)    function(0, count)

Definition at line 3797 of file qdrawhelper.cpp.

Typedef Documentation

◆ BilinearFastTransformHelper

typedef void(QT_FASTCALL * BilinearFastTransformHelper) (uint *b, uint *end, const QTextureData &image, int &fx, int &fy, int fdx, int fdy)

Definition at line 1297 of file qdrawhelper.cpp.

◆ Fetch1PixelFunc

typedef uint(QT_FASTCALL * Fetch1PixelFunc) (const uchar *src, int index)

Definition at line 117 of file qdrawhelper.cpp.

Enumeration Type Documentation

◆ FastTransformTypes

Enumerator
SimpleScaleTransform 
UpscaleTransform 
DownscaleTransform 
RotateTransform 
FastRotateTransform 
NFastTransformTypes 

Definition at line 1261 of file qdrawhelper.cpp.

◆ TextureBlendType

Enumerator
BlendUntransformed 
BlendTiled 
BlendTransformed 
BlendTransformedTiled 
BlendTransformedBilinear 
BlendTransformedBilinearTiled 
NBlendTypes 

Definition at line 826 of file qdrawhelper.cpp.

Function Documentation

◆ alphamapblend_argb32()

static void alphamapblend_argb32 ( quint32 dst,
int  coverage,
QRgba64  srcLinear,
quint32  src,
const QColorTrcLut colorProfile 
)
inlinestatic

Definition at line 5202 of file qdrawhelper.cpp.

References blend_pixel(), QRgba64::fromArgb32(), grayBlendPixel(), QRgb, and QColorTrcLut::toLinear64().

Referenced by qt_alphamapblit_argb32(), and qt_alphamapblit_generic().

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

◆ alphamapblend_quint16()

static void alphamapblend_quint16 ( int  coverage,
quint16 dest,
int  x,
const quint16  srcColor 
)
inlinestatic

Definition at line 5413 of file qdrawhelper.cpp.

References BYTE_MUL_RGB16().

Referenced by qt_alphamapblit_quint16().

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

◆ alphargbblend_argb32()

static void alphargbblend_argb32 ( quint32 dst,
uint  coverage,
const QRgba64 srcLinear,
quint32  src,
const QColorTrcLut colorProfile 
)
inlinestatic

Definition at line 5586 of file qdrawhelper.cpp.

References blend_pixel(), QRgba64::fromArgb32(), QRgba64::isOpaque(), qAlpha(), QRgb, qRgbAvg(), rgbBlend(), rgbBlendPixel(), and QColorTrcLut::toLinear64().

Referenced by qt_alphargbblit_argb32(), and qt_alphargbblit_generic().

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

◆ blend_color_argb()

static void blend_color_argb ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 3834 of file qdrawhelper.cpp.

References BYTE_MUL(), QPainter::CompositionMode_Source, QT_FT_Span_::coverage, Operator::funcSolid, function, getOperator(), i, QT_FT_Span_::len, Operator::mode, qt_memfill(), QT_THREAD_PARALLEL_FILLS, QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_color_generic()

static void blend_color_generic ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 3800 of file qdrawhelper.cpp.

References QPixelLayout::bpp, QPixelLayout::BPP8, BufferSize, QPainter::CompositionMode_Source, Operator::destFetch, Operator::destStore, Operator::funcSolid, function, getOperator(), QT_FT_Span_::len, Operator::mode, qMin(), qPixelLayouts, QT_THREAD_PARALLEL_FILLS, spanfill_from_first(), QT_FT_Span_::x, and QT_FT_Span_::y.

Referenced by blend_color_generic_fp(), and blend_color_generic_rgb64().

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

◆ blend_color_generic_fp()

static void blend_color_generic_fp ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 3915 of file qdrawhelper.cpp.

References blend_color_generic(), QPixelLayout::bpp, QPixelLayout::BPP8, BufferSize, QPainter::CompositionMode_Source, Operator::destFetchFP, Operator::destStoreFP, Operator::funcSolidFP, function, getOperator(), QT_FT_Span_::len, Operator::mode, qCDebug, qMin(), qPixelLayouts, QT_THREAD_PARALLEL_FILLS, spanfill_from_first(), QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_color_generic_rgb64()

static void blend_color_generic_rgb64 ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 3871 of file qdrawhelper.cpp.

References blend_color_generic(), QPixelLayout::bpp, QPixelLayout::BPP8, BufferSize, QPainter::CompositionMode_Source, Operator::destFetch64, Operator::destStore64, Operator::funcSolid64, function, getOperator(), QT_FT_Span_::len, Operator::mode, qCDebug, qMin(), qPixelLayouts, QT_THREAD_PARALLEL_FILLS, spanfill_from_first(), QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_sourceOver_rgb16_rgb16()

static void blend_sourceOver_rgb16_rgb16 ( quint16 *Q_DECL_RESTRICT  dest,
const quint16 *Q_DECL_RESTRICT  src,
int  length,
const quint8  alpha,
const quint8  ialpha 
)
inlinestatic

Definition at line 4403 of file qdrawhelper.cpp.

References interpolate_pixel_rgb16_255(), and interpolate_pixel_rgb16x2_255().

Referenced by blend_tiled_rgb565(), and blend_untransformed_rgb565().

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

◆ blend_src_generic()

static void blend_src_generic ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4134 of file qdrawhelper.cpp.

References getOperator().

Referenced by qBlendGradient().

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

◆ blend_tiled_argb()

static void blend_tiled_argb ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4712 of file qdrawhelper.cpp.

References blend_tiled_generic(), BufferSize, QT_FT_Span_::coverage, QImage::Format_ARGB32_Premultiplied, QImage::Format_RGB32, Operator::func, function, getOperator(), QT_FT_Span_::len, qMin(), qRound(), QT_THREAD_PARALLEL_FILLS, QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_tiled_generic()

static void blend_tiled_generic ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4493 of file qdrawhelper.cpp.

References BufferSize, QT_FT_Span_::coverage, Operator::destFetch, Operator::destStore, Operator::func, function, getOperator(), QT_FT_Span_::len, qMin(), qRound(), QT_THREAD_PARALLEL_FILLS, Operator::srcFetch, QT_FT_Span_::x, and QT_FT_Span_::y.

Referenced by blend_tiled_argb(), and blend_tiled_rgb565().

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

◆ blend_tiled_rgb565()

static void blend_tiled_rgb565 ( int  count,
const QT_FT_Span spans,
void userData 
)
static

◆ blend_untransformed_argb()

static void blend_untransformed_argb ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4339 of file qdrawhelper.cpp.

References blend_untransformed_generic(), QT_FT_Span_::coverage, QImage::Format_ARGB32_Premultiplied, QImage::Format_RGB32, Operator::func, function, getOperator(), QT_FT_Span_::len, qRound(), QT_THREAD_PARALLEL_FILLS, QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_untransformed_generic()

static void blend_untransformed_generic ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4169 of file qdrawhelper.cpp.

References BufferSize, QPainter::CompositionMode_Source, QT_FT_Span_::coverage, Operator::destFetch, destFetchARGB32P(), Operator::destStore, Operator::func, function, getOperator(), QT_FT_Span_::len, Operator::mode, qMin(), qRound(), QT_THREAD_PARALLEL_FILLS, Operator::srcFetch, QT_FT_Span_::x, and QT_FT_Span_::y.

Referenced by blend_untransformed_argb(), and blend_untransformed_rgb565().

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

◆ blend_untransformed_rgb565()

static void blend_untransformed_rgb565 ( int  count,
const QT_FT_Span spans,
void userData 
)
static

◆ blend_vertical_gradient()

template<ProcessSpans blend_color>
static void blend_vertical_gradient ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 5009 of file qdrawhelper.cpp.

References LinearGradientValues::dy, FIXPT_SIZE, getLinearGradientValues(), GRADIENT_STOPTABLE_SIZE, LinearGradientValues::off, qt_gradient_pixel_fixed(), and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ blend_vertical_gradient_argb()

static void blend_vertical_gradient_argb ( int  count,
const QT_FT_Span spans,
void userData 
)
static

Definition at line 4968 of file qdrawhelper.cpp.

References QT_FT_Span_::coverage, LinearGradientValues::dy, FIXPT_SIZE, functionForModeSolid, getLinearGradientValues(), GRADIENT_STOPTABLE_SIZE, QT_FT_Span_::len, LinearGradientValues::off, qt_gradient_pixel_fixed(), QT_FT_Span_::x, and QT_FT_Span_::y.

Referenced by qBlendGradient().

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

◆ canUseFastMatrixPath()

static bool canUseFastMatrixPath ( const qreal  cx,
const qreal  cy,
const qsizetype  length,
const QSpanData data 
)
inlinestatic

Definition at line 899 of file qdrawhelper.cpp.

References fixed_scale, and Q_UNLIKELY.

Referenced by fetchTransformed_fetcher(), fetchTransformedBilinear(), and fetchTransformedBilinearARGB32PM().

+ Here is the caller graph for this function:

◆ destFetch()

static uint *QT_FASTCALL destFetch ( uint buffer,
QRasterBuffer rasterBuffer,
int  x,
int  y,
int  length 
)
static

Definition at line 345 of file qdrawhelper.cpp.

References QRasterBuffer::format, layout, qPixelLayouts, and QRasterBuffer::scanLine().

Referenced by qt_alphamapblit_generic(), and qt_alphargbblit_generic().

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

◆ destFetchARGB32P()

static uint *QT_FASTCALL destFetchARGB32P ( uint ,
QRasterBuffer rasterBuffer,
int  x,
int  y,
int   
)
static

Definition at line 332 of file qdrawhelper.cpp.

References QRasterBuffer::scanLine().

Referenced by blend_untransformed_generic(), BlendSrcGeneric::fetch(), and getOperator().

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

◆ destFetchMono()

static uint *QT_FASTCALL destFetchMono ( uint buffer,
QRasterBuffer rasterBuffer,
int  x,
int  y,
int  length 
)
static

Definition at line 306 of file qdrawhelper.cpp.

References QRasterBuffer::destColor0, QRasterBuffer::destColor1, Q_DECL_RESTRICT, and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ destFetchMonoLsb()

static uint *QT_FASTCALL destFetchMonoLsb ( uint buffer,
QRasterBuffer rasterBuffer,
int  x,
int  y,
int  length 
)
static

Definition at line 319 of file qdrawhelper.cpp.

References QRasterBuffer::destColor0, QRasterBuffer::destColor1, Q_DECL_RESTRICT, and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ destFetchRGB16()

static uint *QT_FASTCALL destFetchRGB16 ( uint buffer,
QRasterBuffer rasterBuffer,
int  x,
int  y,
int  length 
)
static

Definition at line 337 of file qdrawhelper.cpp.

References i, Q_DECL_RESTRICT, qConvertRgb16To32(), and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ destFetchUndefined()

static uint *QT_FASTCALL destFetchUndefined ( uint buffer,
QRasterBuffer ,
int  ,
int  ,
int   
)
static

Definition at line 351 of file qdrawhelper.cpp.

Referenced by getOperator().

+ Here is the caller graph for this function:

◆ destStore()

static void QT_FASTCALL destStore ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

Definition at line 606 of file qdrawhelper.cpp.

References QRasterBuffer::format, layout, qPixelLayouts, and QRasterBuffer::scanLine().

Referenced by qt_alphamapblit_generic(), and qt_alphargbblit_generic().

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

◆ destStoreGray16()

static void QT_FASTCALL destStoreGray16 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

◆ destStoreGray8()

static void QT_FASTCALL destStoreGray8 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

Definition at line 616 of file qdrawhelper.cpp.

References QColorTransformPrivate::apply(), QRasterBuffer::colorSpace, QColorSpacePrivate::get(), QColorTransformPrivate::get(), QColorTransformPrivate::InputPremultiplied, QColorSpace::isValid(), qIsGray(), qRed(), QRasterBuffer::scanLine(), QColorSpace::SRgb, and QColorSpacePrivate::transformationToXYZ().

+ Here is the call graph for this function:

◆ destStoreMono()

static void QT_FASTCALL destStoreMono ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

Definition at line 545 of file qdrawhelper.cpp.

References QRasterBuffer::destColor0, QRasterBuffer::destColor1, findNearestColor(), i, QRasterBuffer::monoDestinationWithClut, Q_DECL_RESTRICT, qGray(), qt_bayer_matrix, and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ destStoreMonoLsb()

static void QT_FASTCALL destStoreMonoLsb ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

Definition at line 572 of file qdrawhelper.cpp.

References QRasterBuffer::destColor0, QRasterBuffer::destColor1, findNearestColor(), i, QRasterBuffer::monoDestinationWithClut, Q_DECL_RESTRICT, qGray(), qt_bayer_matrix, and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ destStoreRGB16()

static void QT_FASTCALL destStoreRGB16 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const uint buffer,
int  length 
)
static

Definition at line 599 of file qdrawhelper.cpp.

References i, qConvertRgb32To16(), and QRasterBuffer::scanLine().

+ Here is the call graph for this function:

◆ fetch1Pixel()

template<QPixelLayout::BPP bpp>
static uint QT_FASTCALL fetch1Pixel ( const uchar ,
int   
)
inlinestatic

Definition at line 52 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP16 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16 > ( const uchar src,
int  index 
)
inline

Definition at line 76 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP16FPx4 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16FPx4 > ( const uchar src,
int  index 
)
inline

Definition at line 102 of file qdrawhelper.cpp.

References QRgbaFloat< F >::toArgb32().

+ Here is the call graph for this function:

◆ fetch1Pixel< QPixelLayout::BPP1LSB >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1LSB > ( const uchar src,
int  index 
)
inline

Definition at line 58 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP1MSB >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1MSB > ( const uchar src,
int  index 
)
inline

Definition at line 64 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP24 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP24 > ( const uchar src,
int  index 
)
inline

Definition at line 82 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP32 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32 > ( const uchar src,
int  index 
)
inline

Definition at line 88 of file qdrawhelper.cpp.

◆ fetch1Pixel< QPixelLayout::BPP32FPx4 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32FPx4 > ( const uchar src,
int  index 
)
inline

Definition at line 110 of file qdrawhelper.cpp.

References QRgbaFloat< F >::toArgb32().

+ Here is the call graph for this function:

◆ fetch1Pixel< QPixelLayout::BPP64 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP64 > ( const uchar src,
int  index 
)
inline

Definition at line 94 of file qdrawhelper.cpp.

References QRgba64::toArgb32().

+ Here is the call graph for this function:

◆ fetch1Pixel< QPixelLayout::BPP8 >()

template<>
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP8 > ( const uchar src,
int  index 
)
inline

Definition at line 70 of file qdrawhelper.cpp.

◆ fetchTransformed()

template<TextureBlendType blendType, QPixelLayout::BPP bpp>
static const uint *QT_FASTCALL fetchTransformed ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 1081 of file qdrawhelper.cpp.

References BlendTransformed, BlendTransformedTiled, layout, and qPixelLayouts.

◆ fetchTransformed_fetcher()

template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformed_fetcher ( T *  buffer,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 917 of file qdrawhelper.cpp.

References BlendTransformed, BlendTransformedTiled, QPixelLayout::BPP16FPx4, QPixelLayout::BPP32, QPixelLayout::BPP64, QPixelLayout::BPPNone, canUseFastMatrixPath(), fetch1PixelTable, fixed_scale, i, layout, Q_ASSERT, qFloor(), qMin(), and qPixelLayouts.

+ Here is the call graph for this function:

◆ fetchTransformed_pixelBounds()

template<TextureBlendType blendType>
void fetchTransformed_pixelBounds ( int  max,
int  l1,
int  l2,
int &  v 
)
inline

Definition at line 886 of file qdrawhelper.cpp.

References BlendTransformed, BlendTransformedTiled, and qBound().

+ Here is the call graph for this function:

◆ fetchTransformedBilinear()

template<TextureBlendType blendType, QPixelLayout::BPP bpp>
static const uint *QT_FASTCALL fetchTransformedBilinear ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 2315 of file qdrawhelper.cpp.

References QPixelLayout::BPPNone, BufferSize, canUseFastMatrixPath(), fixed_scale, half_point, hasFastInterpolate4(), i, interpolate_4_pixels(), interpolate_4_pixels_16(), layout, Q_ASSERT, qAbs(), qMin(), qPixelLayouts, and tr.

+ Here is the call graph for this function:

◆ fetchTransformedBilinear_fetcher()

template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformedBilinear_fetcher ( T *  buf1,
T *  buf2,
const int  len,
const QTextureData image,
int  fx,
int  fy,
const int  fdx,
const int  fdy 
)
static

Definition at line 2102 of file qdrawhelper.cpp.

References BlendTransformedBilinear, QPixelLayout::BPP16FPx4, QPixelLayout::BPP32, QPixelLayout::BPP64, QPixelLayout::BPPNone, fetch1PixelTable, fixed_scale, i, layout, Q_ASSERT, qMin(), qPixelLayouts, s1, and s2.

+ Here is the call graph for this function:

◆ fetchTransformedBilinear_pixelBounds()

template<TextureBlendType blendType>
void fetchTransformedBilinear_pixelBounds ( int  max,
int  l1,
int  l2,
int &  v1,
int &  v2 
)

◆ fetchTransformedBilinear_pixelBounds< BlendTransformedBilinear >()

template<>
void fetchTransformedBilinear_pixelBounds< BlendTransformedBilinear > ( int  ,
int  l1,
int  l2,
int &  v1,
int &  v2 
)
inline

Definition at line 1249 of file qdrawhelper.cpp.

References Q_ASSERT.

◆ fetchTransformedBilinear_pixelBounds< BlendTransformedBilinearTiled >()

template<>
void fetchTransformedBilinear_pixelBounds< BlendTransformedBilinearTiled > ( int  max,
int  ,
int  ,
int &  v1,
int &  v2 
)
inline

Definition at line 1236 of file qdrawhelper.cpp.

References Q_ASSERT.

◆ fetchTransformedBilinear_simple_scale_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinear_simple_scale_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int   
)
static

Definition at line 2008 of file qdrawhelper.cpp.

References BlendTransformedBilinearTiled, IntermediateBuffer::buffer_ag, IntermediateBuffer::buffer_rb, BufferSize, fixed_scale, i, intermediate_adder(), layout, Q_ASSERT, qAbs(), qMax(), qMin(), qPixelLayouts, and s2.

+ Here is the call graph for this function:

◆ fetchTransformedBilinear_slow_fetcher()

template<TextureBlendType blendType, QPixelLayout::BPP bpp, typename T >
static void QT_FASTCALL fetchTransformedBilinear_slow_fetcher ( T *  buf1,
T *  buf2,
ushort distxs,
ushort distys,
const int  len,
const QTextureData image,
qreal fx,
qreal fy,
qreal fw,
const qreal  fdx,
const qreal  fdy,
const qreal  fdw 
)
static

Definition at line 2263 of file qdrawhelper.cpp.

References QPixelLayout::BPP32, QPixelLayout::BPPNone, fetch1PixelTable, i, layout, Q_ASSERT, qFloor(), qPixelLayouts, s1, and s2.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM()

template<TextureBlendType blendType>
static const uint *QT_FASTCALL fetchTransformedBilinearARGB32PM ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 1907 of file qdrawhelper.cpp.

References bilinearFastTransformHelperARGB32PM, BlendTransformedBilinearTiled, BufferSize, canUseFastMatrixPath(), DownscaleTransform, FastRotateTransform, fixed_scale, half_point, interpolate_4_pixels(), qAbs(), RotateTransform, s2, SimpleScaleTransform, tr, and UpscaleTransform.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM_downscale_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_downscale_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int   
)
static

Definition at line 1487 of file qdrawhelper.cpp.

References BlendTransformedBilinearTiled, fixed_scale, hasFastInterpolate4(), interpolate_4_pixels(), interpolate_4_pixels_16(), INTERPOLATE_PIXEL_256(), qMin(), s2, and tr.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM_fast_rotate_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_fast_rotate_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int  fdy 
)
static

Definition at line 1664 of file qdrawhelper.cpp.

References BlendTransformedBilinearTiled, fixed_scale, hasFastInterpolate4(), interpolate_4_pixels(), interpolate_4_pixels_16(), qMin(), s2, and tr.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM_rotate_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_rotate_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int  fdy 
)
static

Definition at line 1631 of file qdrawhelper.cpp.

References interpolate_4_pixels(), s2, and tr.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM_simple_scale_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_simple_scale_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int   
)
static

Definition at line 1300 of file qdrawhelper.cpp.

References BlendTransformedBilinearTiled, IntermediateBuffer::buffer_ag, IntermediateBuffer::buffer_rb, BufferSize, fixed_scale, intermediate_adder(), Q_ASSERT, qAbs(), qMin(), and s2.

+ Here is the call graph for this function:

◆ fetchTransformedBilinearARGB32PM_upscale_helper()

template<TextureBlendType blendType>
static void QT_FASTCALL fetchTransformedBilinearARGB32PM_upscale_helper ( uint b,
uint end,
const QTextureData image,
int &  fx,
int &  fy,
int  fdx,
int   
)
static

Definition at line 1429 of file qdrawhelper.cpp.

References BlendTransformedBilinearTiled, fixed_scale, interpolate_4_pixels(), INTERPOLATE_PIXEL_256(), qMin(), s2, and tr.

+ Here is the call graph for this function:

◆ fetchUntransformed()

static const uint *QT_FASTCALL fetchUntransformed ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 836 of file qdrawhelper.cpp.

References layout, and qPixelLayouts.

◆ fetchUntransformedARGB32PM()

static const uint *QT_FASTCALL fetchUntransformedARGB32PM ( uint ,
const Operator ,
const QSpanData data,
int  y,
int  x,
int   
)
static

Definition at line 843 of file qdrawhelper.cpp.

◆ fetchUntransformedRGB16()

static const uint *QT_FASTCALL fetchUntransformedRGB16 ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 850 of file qdrawhelper.cpp.

References i, and qConvertRgb16To32().

+ Here is the call graph for this function:

◆ findNearestColor()

static QRgb findNearestColor ( QRgb  color,
QRasterBuffer rbuf 
)
inlinestatic

Definition at line 514 of file qdrawhelper.cpp.

References QRasterBuffer::destColor0, QRasterBuffer::destColor1, qBlue(), qGreen(), qPremultiply(), qRed(), QRgb, and rx().

Referenced by destStoreMono(), and destStoreMonoLsb().

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

◆ getBlendType()

static TextureBlendType getBlendType ( const QSpanData data)
static

Definition at line 3581 of file qdrawhelper.cpp.

References BlendTiled, BlendTransformed, BlendTransformedBilinear, BlendTransformedBilinearTiled, BlendTransformedTiled, BlendUntransformed, QTextureData::Pattern, QTextureData::Tiled, and QTransform::TxTranslate.

Referenced by getOperator(), and qBlendTexture().

+ Here is the caller graph for this function:

◆ getLinearGradientValues()

static void QT_FASTCALL getLinearGradientValues ( LinearGradientValues v,
const QSpanData data 
)
static

Definition at line 3239 of file qdrawhelper.cpp.

Referenced by blend_vertical_gradient(), blend_vertical_gradient_argb(), and getOperator().

+ Here is the caller graph for this function:

◆ getOperator()

static Operator getOperator ( const QSpanData data,
const QT_FT_Span spans,
int  spanCount 
)
inlinestatic

◆ getRadialGradientValues()

static void QT_FASTCALL getRadialGradientValues ( RadialGradientValues v,
const QSpanData data 
)
static

Definition at line 3408 of file qdrawhelper.cpp.

References qFuzzyIsNull().

Referenced by getOperator().

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

◆ getSourceFetch()

static SourceFetchProc getSourceFetch ( TextureBlendType  blendType,
QImage::Format  format 
)
inlinestatic

Definition at line 3149 of file qdrawhelper.cpp.

References BlendTiled, BlendUntransformed, QPixelLayout::BPP16, QPixelLayout::BPP32, QImage::Format_ARGB32_Premultiplied, QImage::Format_RGB32, qPixelLayouts, sourceFetchAny16, sourceFetchAny32, sourceFetchARGB32PM, sourceFetchGeneric, and sourceFetchUntransformed.

Referenced by getOperator().

+ Here is the caller graph for this function:

◆ grayBlendPixel()

static void grayBlendPixel ( quint32 dst,
int  coverage,
QRgba64  srcLinear,
const QColorTrcLut colorProfile 
)
inlinestatic

Definition at line 5192 of file qdrawhelper.cpp.

References QRgba64::fromArgb32(), QColorTrcLut::fromLinear64(), interpolate255(), toArgb32(), and QColorTrcLut::toLinear64().

Referenced by alphamapblend_argb32().

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

◆ handleSpans()

template<typename T >
void handleSpans ( int  count,
const QT_FT_Span spans,
const QSpanData data,
const Operator op 
)

Definition at line 3962 of file qdrawhelper.cpp.

References BufferSize, QPainter::CompositionMode_Source, QT_FT_Span_::coverage, function, i, QT_FT_Span_::len, Operator::mode, qMin(), QT_THREAD_PARALLEL_FILLS, QSpanData::Texture, QT_FT_Span_::x, and QT_FT_Span_::y.

+ Here is the call graph for this function:

◆ intermediate_adder()

static void QT_FASTCALL intermediate_adder ( uint b,
uint end,
const IntermediateBuffer intermediate,
int  offset,
int &  fx,
int  fdx 
)
static

Definition at line 1272 of file qdrawhelper.cpp.

References IntermediateBuffer::buffer_ag, IntermediateBuffer::buffer_rb, fixed_scale, qCpuHasFeature, and QT_FASTCALL.

Referenced by fetchTransformedBilinear_simple_scale_helper(), and fetchTransformedBilinearARGB32PM_simple_scale_helper().

+ Here is the caller graph for this function:

◆ interpolate_4_pixels_16()

static uint interpolate_4_pixels_16 ( uint  tl,
uint  tr,
uint  bl,
uint  br,
uint  distx,
uint  disty 
)
inlinestatic

interpolate 4 argb pixels with the distx and disty factor. distx and disty must be between 0 and 16

Definition at line 1146 of file qdrawhelper.cpp.

References tr.

Referenced by fetchTransformedBilinear(), fetchTransformedBilinearARGB32PM_downscale_helper(), and fetchTransformedBilinearARGB32PM_fast_rotate_helper().

+ Here is the caller graph for this function:

◆ interpolate_pixel_rgb16_255()

static quint16 interpolate_pixel_rgb16_255 ( quint16  x,
quint8  a,
quint16  y,
quint8  b 
)
inlinestatic

Definition at line 4385 of file qdrawhelper.cpp.

Referenced by blend_sourceOver_rgb16_rgb16().

+ Here is the caller graph for this function:

◆ interpolate_pixel_rgb16x2_255()

static quint32 interpolate_pixel_rgb16x2_255 ( quint32  x,
quint8  a,
quint32  y,
quint8  b 
)
inlinestatic

Definition at line 4394 of file qdrawhelper.cpp.

Referenced by blend_sourceOver_rgb16_rgb16().

+ Here is the caller graph for this function:

◆ Q_CONSTRUCTOR_FUNCTION()

Q_CONSTRUCTOR_FUNCTION ( qInitDrawhelperFunctions  )

◆ qBlendGradient()

void qBlendGradient ( int  count,
const QT_FT_Span spans,
void userData 
)

◆ qBlendTexture()

void qBlendTexture ( int  count,
const QT_FT_Span spans,
void userData 
)

◆ qInitBlendFunctions()

◆ qInitDrawhelperFunctions()

static void qInitDrawhelperFunctions ( )
static

Definition at line 6317 of file qdrawhelper.cpp.

References DrawHelper::alphamapBlit, bilinearFastTransformHelperARGB32PM, DrawHelper::bitmapBlit, QPixelLayout::BPP16, comp_func_DestinationAtop_mips_dsp(), comp_func_DestinationIn_mips_dsp(), comp_func_DestinationOut_mips_dsp(), comp_func_DestinationOver_mips_dsp(), comp_func_solid_DestinationAtop_mips_dsp(), comp_func_solid_DestinationIn_mips_dsp(), comp_func_solid_DestinationOver_mips_dsp(), comp_func_solid_SourceAtop_mips_dsp(), comp_func_solid_SourceIn_mips_dsp(), comp_func_solid_SourceOut_mips_dsp(), comp_func_solid_SourceOver_mips_dsp(), comp_func_solid_XOR_mips_dsp(), comp_func_Source_mips_dsp(), comp_func_SourceAtop_mips_dsp(), comp_func_SourceIn_mips_dsp(), comp_func_SourceOut_mips_dsp(), comp_func_XOR_mips_dsp(), QPainter::CompositionMode_DestinationAtop, QPainter::CompositionMode_DestinationIn, QPainter::CompositionMode_DestinationOut, QPainter::CompositionMode_DestinationOver, QPainter::CompositionMode_Plus, QPainter::CompositionMode_Source, QPainter::CompositionMode_SourceAtop, QPainter::CompositionMode_SourceIn, QPainter::CompositionMode_SourceOut, QPainter::CompositionMode_SourceOver, QPainter::CompositionMode_Xor, QPixelLayout::convertToARGB32PM, QPixelLayout::convertToRGBA64PM, destFetchProc, destStoreProc, DownscaleTransform, FastRotateTransform, QPixelLayout::fetchToARGB32PM, QPixelLayout::fetchToRGBA64PM, QImage::Format_A2BGR30_Premultiplied, QImage::Format_A2RGB30_Premultiplied, QImage::Format_ARGB32, QImage::Format_ARGB32_Premultiplied, QImage::Format_ARGB8565_Premultiplied, QImage::Format_BGR888, QImage::Format_RGB16, QImage::Format_RGB32, QImage::Format_RGB444, QImage::Format_RGB888, QImage::Format_RGBA16FPx4, QImage::Format_RGBA16FPx4_Premultiplied, QImage::Format_RGBA32FPx4, QImage::Format_RGBA64, QImage::Format_RGBA8888, QImage::Format_RGBA8888_Premultiplied, QImage::Format_RGBX16FPx4, QImage::Format_RGBX32FPx4, QImage::Format_RGBX64, QImage::Format_RGBX8888, qBlendFunctions, qCpuHasFeature, qDrawHelper, qInitBlendFunctions(), qMemRotateFunctions, qPixelLayouts, qScaleFunctions, qStoreFromRGBA64PM, qt_blend_argb32_on_argb32_mips_dsp(), qt_blend_rgb16_on_rgb16_mips_dsp(), qt_blend_rgb32_on_rgb32_mips_dsp(), qt_destFetchARGB32_mips_dsp(), qt_destStoreARGB32_mips_dsp(), QT_FASTCALL, qt_fetch_radial_gradient, qt_fetchUntransformed_444_mips_dsp(), qt_fetchUntransformed_888_mips_dsp(), qt_fetchUntransformed_argb8565_premultiplied_mips_dsp(), qt_functionForMode64_C, qt_functionForMode_C, qt_functionForModeFP_C, qt_functionForModeSolid64_C, qt_functionForModeSolid_C, qt_functionForModeSolidFP_C, qt_memfill32(), qt_memfill64(), qTransformFunctions, QPixelLayout::rbSwap, SimpleScaleTransform, sourceFetchUntransformed, QPixelLayout::storeFromARGB32PM, and QPixelLayout::storeFromRGB32.

+ Here is the call graph for this function:

◆ qRgbAvg()

static int qRgbAvg ( QRgb  rgb)
inlinestatic

Definition at line 5531 of file qdrawhelper.cpp.

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

Referenced by alphargbblend_argb32().

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

◆ qt_alphamapblit_argb32()

static void qt_alphamapblit_argb32 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride,
const QClipData clip,
bool  useGammaCorrection 
)
static

Definition at line 5472 of file qdrawhelper.cpp.

References alphamapblend_argb32(), QGuiApplicationPrivate::colorProfileForA8Text(), QString::count(), QRasterBuffer::height(), i, initialize(), QGuiApplicationPrivate::instance(), QT_FT_Span_::len, line, QClipData::m_clipLines, map, qMax(), qMin(), QRasterBuffer::scanLine(), QRasterBuffer::stride(), QColorTrcLut::toLinear(), and QT_FT_Span_::x.

+ Here is the call graph for this function:

◆ qt_alphamapblit_generic()

static void qt_alphamapblit_generic ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride,
const QClipData clip,
bool  useGammaCorrection 
)
static

Definition at line 5338 of file qdrawhelper.cpp.

References alphamapblend_argb32(), BufferSize, QGuiApplicationPrivate::colorProfileForA8Text(), QString::count(), destFetch(), destFetchProc, destStore(), destStoreProc, QRasterBuffer::format, QRasterBuffer::height(), i, initialize(), QGuiApplicationPrivate::instance(), j, QT_FT_Span_::len, line, QClipData::m_clipLines, map, Q_ASSERT, qMax(), qMin(), QColorTrcLut::toLinear(), QT_FT_Span_::x, and QT_FT_Span_::y.

Referenced by qt_alphamapblit_quint16().

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

◆ qt_alphamapblit_quint16()

void qt_alphamapblit_quint16 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride,
const QClipData clip,
bool  useGammaCorrection 
)

Definition at line 5425 of file qdrawhelper.cpp.

References alphamapblend_quint16(), QString::count(), QRasterBuffer::height(), i, initialize(), QT_FT_Span_::len, line, QClipData::m_clipLines, map, qMax(), qMin(), qt_alphamapblit_generic(), QRasterBuffer::scanLine(), QRasterBuffer::stride(), and QT_FT_Span_::x.

+ Here is the call graph for this function:

◆ qt_alphargbblit_argb32()

static void qt_alphargbblit_argb32 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uint src,
int  mapWidth,
int  mapHeight,
int  srcStride,
const QClipData clip,
bool  useGammaCorrection 
)
static

Definition at line 5791 of file qdrawhelper.cpp.

References alphargbblend_argb32(), QGuiApplicationPrivate::colorProfileForA32Text(), QString::count(), QRasterBuffer::height(), i, initialize(), QGuiApplicationPrivate::instance(), QT_FT_Span_::len, line, QClipData::m_clipLines, qMax(), qMin(), QRasterBuffer::scanLine(), QRasterBuffer::stride(), QColorTrcLut::toLinear(), and QT_FT_Span_::x.

+ Here is the call graph for this function:

◆ qt_alphargbblit_generic()

static void qt_alphargbblit_generic ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uint src,
int  mapWidth,
int  mapHeight,
int  srcStride,
const QClipData clip,
bool  useGammaCorrection 
)
static

◆ qt_bitmapblit_argb32()

static void qt_bitmapblit_argb32 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride 
)
inlinestatic

Definition at line 5155 of file qdrawhelper.cpp.

References map.

◆ qt_bitmapblit_quint16()

static void qt_bitmapblit_quint16 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride 
)
inlinestatic

Definition at line 5183 of file qdrawhelper.cpp.

References map.

◆ qt_bitmapblit_rgb30()

template<QtPixelOrder PixelOrder>
static void qt_bitmapblit_rgb30 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride 
)
inlinestatic

Definition at line 5174 of file qdrawhelper.cpp.

References map.

◆ qt_bitmapblit_rgba8888()

static void qt_bitmapblit_rgba8888 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
const QRgba64 color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride 
)
inlinestatic

Definition at line 5164 of file qdrawhelper.cpp.

References ARGB2RGBA(), and map.

+ Here is the call graph for this function:

◆ qt_bitmapblit_template()

template<class DST >
static void qt_bitmapblit_template ( QRasterBuffer rasterBuffer,
int  x,
int  y,
DST  color,
const uchar map,
int  mapWidth,
int  mapHeight,
int  mapStride 
)
inlinestatic

Definition at line 5094 of file qdrawhelper.cpp.

References i, map, qt_memfill(), QRasterBuffer::scanLine(), and QRasterBuffer::stride().

+ Here is the call graph for this function:

◆ qt_fetch_conical_gradient()

static const uint *QT_FASTCALL qt_fetch_conical_gradient ( uint buffer,
const Operator ,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 3535 of file qdrawhelper.cpp.

Referenced by getOperator().

+ Here is the caller graph for this function:

◆ qt_fetch_conical_gradient_template()

template<class GradientBase , typename BlendType >
static const BlendType *QT_FASTCALL qt_fetch_conical_gradient_template ( BlendType *  buffer,
const QSpanData data,
int  y,
int  x,
int  length 
)
inlinestatic

Definition at line 3485 of file qdrawhelper.cpp.

References M_1_PI, qAtan2(), rx(), and ry().

+ Here is the call graph for this function:

◆ qt_fetch_linear_gradient()

static const uint *QT_FASTCALL qt_fetch_linear_gradient ( uint buffer,
const Operator op,
const QSpanData data,
int  y,
int  x,
int  length 
)
static

Definition at line 3387 of file qdrawhelper.cpp.

Referenced by getOperator().

+ Here is the caller graph for this function:

◆ qt_fetch_linear_gradient_template()

template<class GradientBase , typename BlendType >
static const BlendType *QT_FASTCALL qt_fetch_linear_gradient_template ( BlendType *  buffer,
const Operator op,
const QSpanData data,
int  y,
int  x,
int  length 
)
inlinestatic

Definition at line 3316 of file qdrawhelper.cpp.

References LinearGradientValues::dx, LinearGradientValues::dy, e, FIXPT_MAX, FIXPT_SIZE, GRADIENT_STOPTABLE_SIZE, LinearGradientValues::l, Operator::linear, LinearGradientValues::off, rx(), and ry().

+ Here is the call graph for this function:

◆ qt_fetch_radial_gradient_plain()

const uint *QT_FASTCALL qt_fetch_radial_gradient_plain ( uint buffer,
const Operator op,
const QSpanData data,
int  y,
int  x,
int  length 
)

Definition at line 3460 of file qdrawhelper.cpp.

◆ qt_gradient_pixel_fixed()

static uint qt_gradient_pixel_fixed ( const QGradientData data,
int  fixed_pos 
)
static

Definition at line 3209 of file qdrawhelper.cpp.

References FIXPT_BITS, FIXPT_SIZE, and qt_gradient_clamp().

Referenced by blend_vertical_gradient(), blend_vertical_gradient_argb(), and GradientBase32::fetchSingle().

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

◆ qt_memfill16()

void qt_memfill16 ( quint16 dest,
quint16  value,
qsizetype  count 
)

Definition at line 6286 of file qdrawhelper.cpp.

References qt_memfill32().

Referenced by qt_memfill().

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

◆ qt_memfill24()

void qt_memfill24 ( quint24 dest,
quint24  color,
qsizetype  count 
)

Definition at line 6244 of file qdrawhelper.cpp.

References Q_FALLTHROUGH, qCpuHasFeature, and qFromBigEndian().

Referenced by qt_memfill().

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

◆ qt_memfill32()

void qt_memfill32 ( quint32 dest,
quint32  color,
qsizetype  count 
)

Definition at line 6305 of file qdrawhelper.cpp.

Referenced by GradientBase32::memfill(), Argb32OperationsC::memfill(), qInitDrawhelperFunctions(), and qt_memfill16().

+ Here is the caller graph for this function:

◆ qt_memfill64()

void qt_memfill64 ( quint64 dest,
quint64  color,
qsizetype  count 
)

Definition at line 6235 of file qdrawhelper.cpp.

Referenced by Rgba64OperationsBase::memfill(), qInitDrawhelperFunctions(), and qt_memfill().

+ Here is the caller graph for this function:

◆ qt_rectfill_alpha()

static void qt_rectfill_alpha ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5916 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ qt_rectfill_argb32()

static void qt_rectfill_argb32 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5851 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ qt_rectfill_fp32x4()

static void qt_rectfill_fp32x4 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5943 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), QRasterBuffer::bytesPerLine(), QRasterBuffer::format, and qStoreFromRGBA64PM.

+ Here is the call graph for this function:

◆ qt_rectfill_gray()

static void qt_rectfill_gray ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5924 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), QRasterBuffer::bytesPerLine(), and qGray().

+ Here is the call graph for this function:

◆ qt_rectfill_nonpremul_argb32()

static void qt_rectfill_nonpremul_argb32 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5883 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ qt_rectfill_nonpremul_rgba()

static void qt_rectfill_nonpremul_rgba ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5899 of file qdrawhelper.cpp.

References ARGB2RGBA(), QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ qt_rectfill_quint16()

static void qt_rectfill_quint16 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5859 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), QRasterBuffer::bytesPerLine(), QRasterBuffer::format, layout, and qPixelLayouts.

+ Here is the call graph for this function:

◆ qt_rectfill_quint24()

static void qt_rectfill_quint24 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5871 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), QRasterBuffer::bytesPerLine(), QRasterBuffer::format, layout, and qPixelLayouts.

+ Here is the call graph for this function:

◆ qt_rectfill_quint64()

static void qt_rectfill_quint64 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5932 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), QRasterBuffer::bytesPerLine(), QRasterBuffer::format, and qStoreFromRGBA64PM.

+ Here is the call graph for this function:

◆ qt_rectfill_rgb30()

template<QtPixelOrder PixelOrder>
static void qt_rectfill_rgb30 ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5908 of file qdrawhelper.cpp.

References QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ qt_rectfill_rgba()

static void qt_rectfill_rgba ( QRasterBuffer rasterBuffer,
int  x,
int  y,
int  width,
int  height,
const QRgba64 color 
)
static

Definition at line 5891 of file qdrawhelper.cpp.

References ARGB2RGBA(), QRasterBuffer::buffer(), and QRasterBuffer::bytesPerLine().

+ Here is the call graph for this function:

◆ rgbBlend()

static QRgb rgbBlend ( QRgb  d,
QRgb  s,
uint  rgbAlpha 
)
inlinestatic

Definition at line 5546 of file qdrawhelper.cpp.

References d, db, qBlue(), qGreen(), qRed(), and qt_div_255().

Referenced by alphargbblend_argb32(), and rgbBlendPixel().

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

◆ rgbBlendPixel()

static void rgbBlendPixel ( quint32 dst,
int  coverage,
QRgba64  slinear,
const QColorTrcLut colorProfile 
)
inlinestatic

Definition at line 5536 of file qdrawhelper.cpp.

References QRgba64::fromArgb32(), QColorTrcLut::fromLinear64(), rgbBlend(), toArgb32(), and QColorTrcLut::toLinear64().

Referenced by alphargbblend_argb32().

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

◆ spanfill_from_first()

static void spanfill_from_first ( QRasterBuffer rasterBuffer,
QPixelLayout::BPP  bpp,
int  x,
int  y,
int  length 
)
static

Definition at line 3736 of file qdrawhelper.cpp.

References QPixelLayout::BPP16, QPixelLayout::BPP16FPx4, QPixelLayout::BPP24, QPixelLayout::BPP32, QPixelLayout::BPP32FPx4, QPixelLayout::BPP64, QPixelLayout::BPP8, qt_memfill_template(), and QRasterBuffer::scanLine().

Referenced by blend_color_generic(), blend_color_generic_fp(), and blend_color_generic_rgb64().

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

Variable Documentation

◆ bilinearFastTransformHelperARGB32PM

BilinearFastTransformHelper bilinearFastTransformHelperARGB32PM[2][NFastTransformTypes]
static
Initial value:
= {
{
fetchTransformedBilinearARGB32PM_simple_scale_helper<BlendTransformedBilinear>,
fetchTransformedBilinearARGB32PM_upscale_helper<BlendTransformedBilinear>,
fetchTransformedBilinearARGB32PM_downscale_helper<BlendTransformedBilinear>,
fetchTransformedBilinearARGB32PM_rotate_helper<BlendTransformedBilinear>,
fetchTransformedBilinearARGB32PM_fast_rotate_helper<BlendTransformedBilinear>
},
{
fetchTransformedBilinearARGB32PM_simple_scale_helper<BlendTransformedBilinearTiled>,
fetchTransformedBilinearARGB32PM_upscale_helper<BlendTransformedBilinearTiled>,
fetchTransformedBilinearARGB32PM_downscale_helper<BlendTransformedBilinearTiled>,
fetchTransformedBilinearARGB32PM_rotate_helper<BlendTransformedBilinearTiled>,
fetchTransformedBilinearARGB32PM_fast_rotate_helper<BlendTransformedBilinearTiled>
}
}

Definition at line 1889 of file qdrawhelper.cpp.

Referenced by fetchTransformedBilinearARGB32PM(), and qInitDrawhelperFunctions().

◆ destFetchProc

◆ destStoreProc

◆ fetch1PixelTable

constexpr Fetch1PixelFunc fetch1PixelTable[QPixelLayout::BPPCount]
constexpr
Initial value:
= {
nullptr,
}
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1MSB >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP24 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP8 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32FPx4 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP1LSB >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP32 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16FPx4 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP16 >(const uchar *src, int index)
uint QT_FASTCALL fetch1Pixel< QPixelLayout::BPP64 >(const uchar *src, int index)

Definition at line 119 of file qdrawhelper.cpp.

Referenced by fetchTransformed_fetcher(), fetchTransformedBilinear_fetcher(), and fetchTransformedBilinear_slow_fetcher().

◆ fixed_scale

◆ functionForMode

const CompositionFunction* functionForMode = qt_functionForMode_C
static

Definition at line 3573 of file qdrawhelper.cpp.

Referenced by getOperator().

◆ functionForModeSolid

const CompositionFunctionSolid* functionForModeSolid = qt_functionForModeSolid_C
static

Definition at line 3561 of file qdrawhelper.cpp.

Referenced by blend_vertical_gradient_argb(), and getOperator().

◆ half_point

constexpr int half_point = 1 << 15
constexpr

Definition at line 49 of file qdrawhelper.cpp.

Referenced by fetchTransformedBilinear(), and fetchTransformedBilinearARGB32PM().

◆ processTextureSpansARGB32PM

const ProcessSpans processTextureSpansARGB32PM[NBlendTypes]
static
Initial value:
= {
}
static void blend_untransformed_argb(int count, const QT_FT_Span *spans, void *userData)
static void blend_src_generic(int count, const QT_FT_Span *spans, void *userData)
static void blend_tiled_argb(int count, const QT_FT_Span *spans, void *userData)

Definition at line 4865 of file qdrawhelper.cpp.

Referenced by qBlendTexture().

◆ processTextureSpansGeneric

const ProcessSpans processTextureSpansGeneric[NBlendTypes]
static
Initial value:
= {
}
static void blend_untransformed_generic(int count, const QT_FT_Span *spans, void *userData)
static void blend_tiled_generic(int count, const QT_FT_Span *spans, void *userData)

Definition at line 4883 of file qdrawhelper.cpp.

Referenced by qBlendTexture().

◆ processTextureSpansRGB16

const ProcessSpans processTextureSpansRGB16[NBlendTypes]
static
Initial value:
= {
}
static void blend_untransformed_rgb565(int count, const QT_FT_Span *spans, void *userData)
static void blend_tiled_rgb565(int count, const QT_FT_Span *spans, void *userData)

Definition at line 4874 of file qdrawhelper.cpp.

Referenced by qBlendTexture().

◆ qDrawHelper

◆ qt_fetch_radial_gradient

SourceFetchProc qt_fetch_radial_gradient = qt_fetch_radial_gradient_plain
static

Definition at line 3466 of file qdrawhelper.cpp.

Referenced by getOperator(), and qInitDrawhelperFunctions().

◆ qt_functionForMode64_C

CompositionFunction64 qt_functionForMode64_C[]
extern

Definition at line 4295 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ qt_functionForMode_C

CompositionFunction qt_functionForMode_C[]
extern

Definition at line 4254 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ qt_functionForModeFP_C

CompositionFunctionFP qt_functionForModeFP_C[]
extern

Definition at line 4330 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ qt_functionForModeSolid64_C

CompositionFunctionSolid64 qt_functionForModeSolid64_C[]
extern

Definition at line 4185 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ qt_functionForModeSolid_C

CompositionFunctionSolid qt_functionForModeSolid_C[]
extern

Definition at line 4144 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ qt_functionForModeSolidFP_C

CompositionFunctionSolidFP qt_functionForModeSolidFP_C[]
extern

Definition at line 4220 of file qcompositionfunctions.cpp.

Referenced by qInitDrawhelperFunctions().

◆ sourceFetchAny16

SourceFetchProc sourceFetchAny16[NBlendTypes]
static
Initial value:
= {
fetchTransformed<BlendTransformed, QPixelLayout::BPP16>,
fetchTransformed<BlendTransformedTiled, QPixelLayout::BPP16>,
fetchTransformedBilinear<BlendTransformedBilinear, QPixelLayout::BPP16>,
fetchTransformedBilinear<BlendTransformedBilinearTiled, QPixelLayout::BPP16>
}
static const uint *QT_FASTCALL fetchUntransformed(uint *buffer, const Operator *, const QSpanData *data, int y, int x, int length)

Definition at line 3131 of file qdrawhelper.cpp.

Referenced by getSourceFetch().

◆ sourceFetchAny32

SourceFetchProc sourceFetchAny32[NBlendTypes]
static
Initial value:
= {
fetchTransformed<BlendTransformed, QPixelLayout::BPP32>,
fetchTransformed<BlendTransformedTiled, QPixelLayout::BPP32>,
fetchTransformedBilinear<BlendTransformedBilinear, QPixelLayout::BPP32>,
fetchTransformedBilinear<BlendTransformedBilinearTiled, QPixelLayout::BPP32>
}

Definition at line 3140 of file qdrawhelper.cpp.

Referenced by getSourceFetch().

◆ sourceFetchARGB32PM

SourceFetchProc sourceFetchARGB32PM[NBlendTypes]
static
Initial value:
= {
fetchTransformed<BlendTransformed, QPixelLayout::BPP32>,
fetchTransformed<BlendTransformedTiled, QPixelLayout::BPP32>,
fetchTransformedBilinearARGB32PM<BlendTransformedBilinear>,
fetchTransformedBilinearARGB32PM<BlendTransformedBilinearTiled>
}
static const uint *QT_FASTCALL fetchUntransformedARGB32PM(uint *, const Operator *, const QSpanData *data, int y, int x, int)

Definition at line 3122 of file qdrawhelper.cpp.

Referenced by getSourceFetch().

◆ sourceFetchGeneric

const SourceFetchProc sourceFetchGeneric[NBlendTypes]
static
Initial value:
= {
fetchTransformed<BlendTransformed, QPixelLayout::BPPNone>,
fetchTransformed<BlendTransformedTiled, QPixelLayout::BPPNone>,
fetchTransformedBilinear<BlendTransformedBilinear, QPixelLayout::BPPNone>,
fetchTransformedBilinear<BlendTransformedBilinearTiled, QPixelLayout::BPPNone>
}

Definition at line 3113 of file qdrawhelper.cpp.

Referenced by getSourceFetch().

◆ sourceFetchUntransformed

SourceFetchProc sourceFetchUntransformed[QImage::NImageFormats]
static

Definition at line 3074 of file qdrawhelper.cpp.

Referenced by getSourceFetch(), and qInitDrawhelperFunctions().