digiKam
Loading...
Searching...
No Matches
previewtask.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-12-26
7 * Description : Multithreaded loader for previews
8 *
9 * SPDX-FileCopyrightText: 2006-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 * SPDX-FileCopyrightText: 2006-2024 by Gilles Caulier <caulier dot gilles 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 <QImage>
21
22// Local includes
23
24#include "loadsavetask.h"
25#include "metaengine_previews.h"
26
27namespace Digikam
28{
29
31{
32public:
33
34 explicit PreviewLoadingTask(LoadSaveThread* const thread,
35 const LoadingDescription& description);
36 ~PreviewLoadingTask() override = default;
37
38 void execute() override;
39
40private:
41
42 bool loadExiv2Preview(MetaEnginePreviews& previews, int sizeLimit = -1);
43 bool loadLibRawPreview(int sizeLimit = -1);
44 bool loadHalfSizeRaw();
45 bool loadFullSizeRaw();
46 bool needToScale();
47 bool loadImagePreview(int sizeLimit = -1);
48 void convertQImageToDImg();
49
50private:
51
52 QImage m_qimage;
53 bool m_fromRawEmbeddedPreview = false;
54
55private:
56
57 // Disable
59 PreviewLoadingTask& operator=(const PreviewLoadingTask&) = delete;
60};
61
62} // namespace Digikam
Definition loadsavethread.h:93
Definition loadingdescription.h:35
Definition metaengine_previews.h:34
Definition previewtask.h:31
void execute() override
Definition previewtask.cpp:41
~PreviewLoadingTask() override=default
Definition loadsavetask.h:124
Definition datefolderview.cpp:34