Krita Source Code Documentation
Loading...
Searching...
No Matches
KoCompositeOpOverCompositor< _CSTraits, channel > Struct Template Reference

#include <KoCompositeOpOver.h>

Public Types

typedef _CSTraits::channels_type channels_type
 

Static Public Member Functions

static void composeColorChannels (channels_type srcBlend, const channels_type *srcN, channels_type *dstN, bool allChannelFlags, const QBitArray &channelFlags)
 

Detailed Description

template<class _CSTraits, int channel>
struct KoCompositeOpOverCompositor< _CSTraits, channel >

Definition at line 15 of file KoCompositeOpOver.h.

Member Typedef Documentation

◆ channels_type

template<class _CSTraits , int channel>
typedef _CSTraits::channels_type KoCompositeOpOverCompositor< _CSTraits, channel >::channels_type

Definition at line 16 of file KoCompositeOpOver.h.

Member Function Documentation

◆ composeColorChannels()

template<class _CSTraits , int channel>
static void KoCompositeOpOverCompositor< _CSTraits, channel >::composeColorChannels ( channels_type srcBlend,
const channels_type * srcN,
channels_type * dstN,
bool allChannelFlags,
const QBitArray & channelFlags )
inlinestatic

Definition at line 17 of file KoCompositeOpOver.h.

21 {
22 if (channel != _CSTraits::alpha_pos && (allChannelFlags || channelFlags.testBit(channel)))
23 dstN[channel] = KoColorSpaceMaths<channels_type>::blend(srcN[channel], dstN[channel], srcBlend);
24 KoCompositeOpOverCompositor<_CSTraits, channel - 1>::composeColorChannels(srcBlend, srcN, dstN, allChannelFlags, channelFlags);
25 }
static _T blend(_T a, _T b, _T alpha)
static void composeColorChannels(channels_type srcBlend, const channels_type *srcN, channels_type *dstN, bool allChannelFlags, const QBitArray &channelFlags)

References KoColorSpaceMaths< _T, _Tdst >::blend(), and KoCompositeOpOverCompositor< _CSTraits, channel >::composeColorChannels().


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