File indexing completed on 2025-01-05 03:51:41
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2005-03-27 0007 * Description : a digiKam image tool for fixing dots produced by 0008 * hot/stuck/dead pixels from a CCD. 0009 * 0010 * SPDX-FileCopyrightText: 2005-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0011 * SPDX-FileCopyrightText: 2005-2006 by Unai Garro <ugarro at users dot sourceforge dot net> 0012 * 0013 * SPDX-License-Identifier: GPL-2.0-or-later 0014 * 0015 * ============================================================ */ 0016 0017 #ifndef DIGIKAM_EDITOR_HOT_PIXELS_TOOL_H 0018 #define DIGIKAM_EDITOR_HOT_PIXELS_TOOL_H 0019 0020 // Qt includes 0021 0022 #include <QList> 0023 #include <QPolygon> 0024 0025 // Local includes 0026 0027 #include "editortool.h" 0028 #include "hotpixelprops.h" 0029 0030 class QUrl; 0031 0032 using namespace Digikam; 0033 0034 namespace DigikamEditorHotPixelsToolPlugin 0035 { 0036 0037 class HotPixelsTool : public Digikam::EditorToolThreaded 0038 { 0039 Q_OBJECT 0040 0041 public: 0042 0043 explicit HotPixelsTool(QObject* const parent); 0044 ~HotPixelsTool() override; 0045 0046 static void registerFilter(); 0047 0048 private Q_SLOTS: 0049 0050 void slotHotPixels(const QPolygon&); 0051 void slotResetSettings() override; 0052 0053 private: 0054 0055 void readSettings() override; 0056 void writeSettings() override; 0057 void preparePreview() override; 0058 void prepareFinal() override; 0059 void setPreviewImage() override; 0060 void setFinalImage() override; 0061 0062 private: 0063 0064 class Private; 0065 Private* const d; 0066 }; 0067 0068 } // namespace DigikamEditorHotPixelsToolPlugin 0069 0070 #endif // DIGIKAM_EDITOR_HOT_PIXELS_TOOL_H