digiKam
Loading...
Searching...
No Matches
metadataremover.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 : 2023-21-06
7 * Description : Batch remover of metadata.
8 *
9 * SPDX-FileCopyrightText: 2013-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 * SPDX-FileCopyrightText: 2023 by Maik Qualmann <metzpinguin at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Qt includes
19
20#include <QObject>
21
22// Local includes
23
24#include "album.h"
25#include "iteminfo.h"
26#include "maintenancetool.h"
27
28namespace Digikam
29{
30
32{
33 Q_OBJECT
34
35public:
36
38 {
39 None = 0,
41 Tags
42 };
43
44public:
45
50 explicit MetadataRemover(const AlbumList& list = AlbumList(),
51 RemoveAction action = None,
52 ProgressItem* const parent = nullptr);
53
57 explicit MetadataRemover(const ItemInfoList& list,
58 RemoveAction action = None,
59 ProgressItem* const parent = nullptr);
60
61
62 ~MetadataRemover() override;
63
64 void setUseMultiCoreCPU(bool b) override;
65
66private Q_SLOTS:
67
68 void slotStart() override;
69 void slotCancel() override;
70 void slotDone() override;
71
72 void slotAdvance(const ItemInfo&);
73
74 void slotParseAlbums();
75 void slotAlbumParsed(const ItemInfoList&);
76 void slotOneAlbumIsComplete();
77
78private:
79
80 void init(RemoveAction action);
81 void parseList();
82 void parsePicture();
83 void processOneAlbum();
84
85private:
86
87 class Private;
88 Private* const d = nullptr;
89};
90
91} // namespace Digikam
Definition iteminfolist.h:37
Definition iteminfo.h:68
Definition maintenancetool.h:31
Definition metadataremover.h:32
RemoveAction
Definition metadataremover.h:38
@ Faces
Definition metadataremover.h:40
@ Tags
Definition metadataremover.h:41
@ None
Definition metadataremover.h:39
void setUseMultiCoreCPU(bool b) override
Definition metadataremover.cpp:98
~MetadataRemover() override
Definition metadataremover.cpp:123
Definition progressmanager.h:35
ProgressItem * parent() const
Definition progressmanager.cpp:283
Definition datefolderview.cpp:34
QList< Album * > AlbumList
Definition album.h:41