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