digiKam
Loading...
Searching...
No Matches
tonalityfilter.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 : 2005-24-01
7 * Description : Change tonality image filter
8 *
9 * SPDX-FileCopyrightText: 2005-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 * SPDX-FileCopyrightText: 2010 by Martin Klapetek <martin dot klapetek at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Local includes
19
20#include "digikam_export.h"
21#include "dimgthreadedfilter.h"
22#include "digikam_globals.h"
23
24namespace Digikam
25{
26
27class DImg;
28
29class DIGIKAM_EXPORT TonalityContainer
30{
31
32public:
33
34 TonalityContainer() = default;
35 ~TonalityContainer() = default;
36
37public:
38
39 int redMask = 0;
40 int greenMask = 0;
41 int blueMask = 0;
42};
43
44// -----------------------------------------------------------------------------------------------
45
46class DIGIKAM_EXPORT TonalityFilter : public DImgThreadedFilter
47{
48 Q_OBJECT
49
50public:
51
52 explicit TonalityFilter(QObject* const parent = nullptr);
53 explicit TonalityFilter(DImg* const orgImage,
54 QObject* const parent = nullptr,
55 const TonalityContainer& settings = TonalityContainer());
56 ~TonalityFilter() override;
57
58 static QString FilterIdentifier()
59 {
60 return QLatin1String("digikam:TonalityFilter");
61 }
62
63 static QString DisplayableName();
64
65 static QList<int> SupportedVersions()
66 {
67 return QList<int>() << 1;
68 }
69
70 static int CurrentVersion()
71 {
72 return 1;
73 }
74
75 QString filterIdentifier() const override
76 {
77 return FilterIdentifier();
78 }
79
80 FilterAction filterAction() override;
81 void readParameters(const FilterAction& action) override;
82
83private:
84
85 void filterImage() override;
86
87private:
88
89 TonalityContainer m_settings;
90};
91
92} // namespace Digikam
Definition dimgthreadedfilter.h:31
Definition dimg.h:52
Definition filteraction.h:33
Definition tonalityfilter.h:30
Definition tonalityfilter.h:47
static int CurrentVersion()
Definition tonalityfilter.h:70
static QString FilterIdentifier()
Definition tonalityfilter.h:58
static QList< int > SupportedVersions()
Definition tonalityfilter.h:65
QString filterIdentifier() const override
Definition tonalityfilter.h:75
Definition datefolderview.cpp:34