Krita Source Code Documentation
Loading...
Searching...
No Matches
KoBgrTraits< _channels_type_ > Struct Template Reference

#include <KoBgrColorSpaceTraits.h>

+ Inheritance diagram for KoBgrTraits< _channels_type_ >:

Classes

struct  Pixel
 

Public Types

typedef _channels_type_ channels_type
 
typedef KoColorSpaceTrait< _channels_type_, 4, 3 > parent
 
- Public Types inherited from KoColorSpaceTrait< _channels_type_, 4, 3 >
typedef _channels_type_ channels_type
 the type of the value of the channels of this color space
 
typedef KoColorSpaceMathsTraits< _channels_type_ > math_trait
 the associated math class
 

Static Public Member Functions

static channels_type blue (const quint8 *data)
 
static channels_type green (const quint8 *data)
 
static channels_type red (const quint8 *data)
 
static void setBlue (quint8 *data, channels_type nv)
 Set the blue component.
 
static void setGreen (quint8 *data, channels_type nv)
 Set the green component.
 
static void setRed (quint8 *data, channels_type nv)
 Set the red component.
 
- Static Public Member Functions inherited from KoColorSpaceTrait< _channels_type_, 4, 3 >
static quint8 * allocate (quint32 nPixels)
 
static void applyAlphaNormedFloatMask (quint8 *pixels, const float *alpha, qint32 nPixels)
 
static void applyAlphaU8Mask (quint8 *pixels, const quint8 *alpha, qint32 nPixels)
 
static void applyInverseAlphaNormedFloatMask (quint8 *pixels, const float *alpha, qint32 nPixels)
 
static void applyInverseAlphaU8Mask (quint8 *pixels, const quint8 *alpha, qint32 nPixels)
 
static QString channelValueText (const quint8 *pixel, quint32 channelIndex)
 
static void copyOpacityU8 (quint8 *src, quint8 *dst, qint32 nPixels)
 
static void fillGrayBrushWithColor (quint8 *pixels, const QRgb *brush, quint8 *brushColor, qint32 nPixels)
 
static void fillInverseAlphaNormedFloatMaskWithColor (quint8 *pixels, const float *alpha, const quint8 *brushColor, qint32 nPixels)
 
static void fromNormalisedChannelsValue (quint8 *pixel, const QVector< float > &values)
 
static void fromNormalisedChannelsValueImpl (quint8 *pixel, const QVector< float > &values)
 
static void fromNormalisedChannelsValueImpl (quint8 *pixel, const QVector< float > &values)
 
static void multiplyAlpha (quint8 *pixels, quint8 alpha, qint32 nPixels)
 
static const channels_typenativeArray (const quint8 *a)
 
static channels_typenativeArray (quint8 *a)
 
static void normalisedChannelsValue (const quint8 *pixel, QVector< float > &v)
 
static void normalisedChannelsValueImpl (const quint8 *pixel, QVector< float > &v)
 
static void normalisedChannelsValueImpl (const quint8 *pixel, QVector< float > &v)
 
static QString normalisedChannelValueText (const quint8 *pixel, quint32 channelIndex)
 
static qreal opacityF (const quint8 *U8_pixel)
 
static quint8 opacityU8 (const quint8 *U8_pixel)
 
static void setOpacity (quint8 *pixels, qreal alpha, qint32 nPixels)
 
static void setOpacity (quint8 *pixels, quint8 alpha, qint32 nPixels)
 
static void singleChannelPixel (quint8 *dstPixel, const quint8 *srcPixel, quint32 channelIndex)
 

Static Public Attributes

static const qint32 blue_pos = 0
 
static const qint32 green_pos = 1
 
static const qint32 red_pos = 2
 
- Static Public Attributes inherited from KoColorSpaceTrait< _channels_type_, 4, 3 >
static const qint32 alpha_pos
 
static const quint32 channels_nb
 the number of channels in this color space
 
static const int depth
 the number of bit for each channel
 
static const quint32 pixelSize
 

Detailed Description

template<typename _channels_type_>
struct KoBgrTraits< _channels_type_ >

Base class for bgr traits, it provides some convenient functions to access BGR channels through an explicit API.

Definition at line 15 of file KoBgrColorSpaceTraits.h.

Member Typedef Documentation

◆ channels_type

template<typename _channels_type_ >
typedef _channels_type_ KoBgrTraits< _channels_type_ >::channels_type

Definition at line 16 of file KoBgrColorSpaceTraits.h.

◆ parent

template<typename _channels_type_ >
typedef KoColorSpaceTrait<_channels_type_, 4, 3> KoBgrTraits< _channels_type_ >::parent

Definition at line 17 of file KoBgrColorSpaceTraits.h.

Member Function Documentation

◆ blue()

template<typename _channels_type_ >
static channels_type KoBgrTraits< _channels_type_ >::blue ( const quint8 * data)
inlinestatic
Returns
the blue component

Definition at line 55 of file KoBgrColorSpaceTraits.h.

56 {
57 const channels_type *d = parent::nativeArray(data);
58 return d[blue_pos];
59 }
static const qint32 blue_pos
_channels_type_ channels_type
static const channels_type * nativeArray(const quint8 *a)

References KoBgrTraits< _channels_type_ >::blue_pos, and KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray().

◆ green()

template<typename _channels_type_ >
static channels_type KoBgrTraits< _channels_type_ >::green ( const quint8 * data)
inlinestatic
Returns
the green component

Definition at line 44 of file KoBgrColorSpaceTraits.h.

45 {
46 const channels_type *d = parent::nativeArray(data);
47 return d[green_pos];
48 }
static const qint32 green_pos

References KoBgrTraits< _channels_type_ >::green_pos, and KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray().

◆ red()

template<typename _channels_type_ >
static channels_type KoBgrTraits< _channels_type_ >::red ( const quint8 * data)
inlinestatic
Returns
the red component

Definition at line 32 of file KoBgrColorSpaceTraits.h.

33 {
34 const channels_type *d = parent::nativeArray(data);
35 return d[red_pos];
36 }
static const qint32 red_pos

References KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray(), and KoBgrTraits< _channels_type_ >::red_pos.

◆ setBlue()

template<typename _channels_type_ >
static void KoBgrTraits< _channels_type_ >::setBlue ( quint8 * data,
channels_type nv )
inlinestatic

Set the blue component.

Definition at line 61 of file KoBgrColorSpaceTraits.h.

61 {
63 d[blue_pos] = nv;
64 }

References KoBgrTraits< _channels_type_ >::blue_pos, and KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray().

◆ setGreen()

template<typename _channels_type_ >
static void KoBgrTraits< _channels_type_ >::setGreen ( quint8 * data,
channels_type nv )
inlinestatic

Set the green component.

Definition at line 50 of file KoBgrColorSpaceTraits.h.

50 {
52 d[green_pos] = nv;
53 }

References KoBgrTraits< _channels_type_ >::green_pos, and KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray().

◆ setRed()

template<typename _channels_type_ >
static void KoBgrTraits< _channels_type_ >::setRed ( quint8 * data,
channels_type nv )
inlinestatic

Set the red component.

Definition at line 38 of file KoBgrColorSpaceTraits.h.

39 {
41 d[red_pos] = nv;
42 }

References KoColorSpaceTrait< _channels_type_, 4, 3 >::nativeArray(), and KoBgrTraits< _channels_type_ >::red_pos.

Member Data Documentation

◆ blue_pos

template<typename _channels_type_ >
const qint32 KoBgrTraits< _channels_type_ >::blue_pos = 0
static

Definition at line 20 of file KoBgrColorSpaceTraits.h.

◆ green_pos

template<typename _channels_type_ >
const qint32 KoBgrTraits< _channels_type_ >::green_pos = 1
static

Definition at line 19 of file KoBgrColorSpaceTraits.h.

◆ red_pos

template<typename _channels_type_ >
const qint32 KoBgrTraits< _channels_type_ >::red_pos = 2
static

Definition at line 18 of file KoBgrColorSpaceTraits.h.


The documentation for this struct was generated from the following file: