digiKam
Loading...
Searching...
No Matches
dcolorcomposer.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2006-03-02
7 * Description : DColor methods for composing
8 *
9 * SPDX-FileCopyrightText: 2006-2009 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Local includes
18
19#include "dcolor.h"
20#include "digikam_export.h"
21
22namespace Digikam
23{
24
25class DIGIKAM_EXPORT DColorComposer
26{
27public:
28
75
77 {
78 NoMultiplication = 0x00,
79 PremultiplySrc = 0x01,
80 PremultiplyDst = 0x02,
81 DemultiplyDst = 0x04,
82
83 MultiplicationFlagsDImg = PremultiplySrc | PremultiplyDst | DemultiplyDst,
84 MultiplicationFlagsPremultipliedColorOnDImg = PremultiplyDst | DemultiplyDst
85 };
86
91 static DColorComposer* getComposer(CompositingOperation rule);
92
106 virtual void compose(DColor& dest, DColor& src) = 0;
107
117 virtual void compose(DColor& dest, DColor& src, MultiplicationFlags multiplicationFlags);
118
119 DColorComposer() = default;
120 virtual ~DColorComposer() = default;
121
122private:
123
124 Q_DISABLE_COPY(DColorComposer)
125};
126
127} // namespace Digikam
Definition dcolorcomposer.h:26
CompositingOperation
Definition dcolorcomposer.h:61
@ PorterDuffNone
Definition dcolorcomposer.h:62
@ PorterDuffDstIn
Definition dcolorcomposer.h:68
@ PorterDuffSrcOut
Definition dcolorcomposer.h:69
@ PorterDuffSrcAtop
Definition dcolorcomposer.h:71
@ PorterDuffDstOut
Definition dcolorcomposer.h:70
@ PorterDuffSrc
Definition dcolorcomposer.h:64
@ PorterDuffSrcIn
Definition dcolorcomposer.h:67
@ PorterDuffDstOver
Definition dcolorcomposer.h:66
@ PorterDuffSrcOver
Definition dcolorcomposer.h:65
@ PorterDuffDstAtop
Definition dcolorcomposer.h:72
@ PorterDuffClear
Definition dcolorcomposer.h:63
virtual ~DColorComposer()=default
virtual void compose(DColor &dest, DColor &src)=0
MultiplicationFlags
Definition dcolorcomposer.h:77
Definition dcolor.h:33
Definition datefolderview.cpp:34