File indexing completed on 2025-01-05 03:53:10

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2012-03-15
0007  * Description : a tool to create panorama by fusion of several images.
0008  *
0009  * SPDX-FileCopyrightText: 2012-2015 by Benjamin Girault <benjamin dot girault at gmail dot com>
0010  *
0011  * SPDX-License-Identifier: GPL-2.0-or-later
0012  *
0013  * ============================================================ */
0014 
0015 #ifndef DIGIKAM_OPTIMISATION_TASK_H
0016 #define DIGIKAM_OPTIMISATION_TASK_H
0017 
0018 // Local includes
0019 
0020 #include "commandtask.h"
0021 
0022 namespace DigikamGenericPanoramaPlugin
0023 {
0024 
0025 class OptimisationTask : public CommandTask
0026 {
0027 public:
0028 
0029     explicit OptimisationTask(const QString& workDirPath,
0030                               const QUrl& input,
0031                               QUrl& autoOptimiserPtoUrl,
0032                               bool  levelHorizon,
0033                               bool  gPano,
0034                               const QString& autooptimiserPath);
0035     ~OptimisationTask() override;
0036 
0037 protected:
0038 
0039     void run(ThreadWeaver::JobPointer self, ThreadWeaver::Thread* thread) override;
0040 
0041 private:
0042 
0043     QUrl&       autoOptimiserPtoUrl;
0044     const QUrl& ptoUrl;
0045     const bool  levelHorizon;
0046     const bool  buildGPano;
0047 
0048 private:
0049 
0050     // Disable
0051     OptimisationTask() = delete;
0052 
0053     Q_DISABLE_COPY(OptimisationTask)
0054 };
0055 
0056 } // namespace DigikamGenericPanoramaPlugin
0057 
0058 #endif // DIGIKAM_OPTIMISATION_TASK_H