diff --git a/core/dplugins/generic/tools/panorama/tasks/optimisationtask.cpp b/core/dplugins/generic/tools/panorama/tasks/optimisationtask.cpp index cdd7ba280b..87b5fcb641 100644 --- a/core/dplugins/generic/tools/panorama/tasks/optimisationtask.cpp +++ b/core/dplugins/generic/tools/panorama/tasks/optimisationtask.cpp @@ -1,82 +1,89 @@ /* ============================================================ * * This file is a part of digiKam project * https://www.digikam.org * * Date : 2012-03-15 * Description : a tool to create panorama by fusion of several images. * * Copyright (C) 2012-2016 by Benjamin Girault * * This program is free software; you can redistribute it * and/or modify it under the terms of the GNU General * Public License as published by the Free Software Foundation; * either version 2, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * ============================================================ */ #include "optimisationtask.h" // Qt includes #include namespace DigikamGenericPanoramaPlugin { OptimisationTask::OptimisationTask(const QString& workDirPath, const QUrl& input, QUrl& autoOptimiserPtoUrl, bool levelHorizon, bool gPano, const QString& autooptimiserPath) : CommandTask(PANO_OPTIMIZE, workDirPath, autooptimiserPath), autoOptimiserPtoUrl(autoOptimiserPtoUrl), ptoUrl(input), levelHorizon(levelHorizon), buildGPano(gPano) { } OptimisationTask::~OptimisationTask() { } void OptimisationTask::run(ThreadWeaver::JobPointer, ThreadWeaver::Thread*) { autoOptimiserPtoUrl = tmpDir; autoOptimiserPtoUrl.setPath(autoOptimiserPtoUrl.path() + QLatin1String("auto_op_pano.pto")); QStringList args; args << QLatin1String("-am"); if (levelHorizon) - args << QLatin1String("-l"); + { + args << QLatin1String("-l"); + } - // This parameter changes the projection type + // NOTE: This parameter changes the projection type // See also Bug 346053 and Bug 416492 + + Q_UNUSED(buildGPano); /* if (buildGPano) + { args << QLatin1String("-s"); + } */ args << QLatin1String("-o"); args << autoOptimiserPtoUrl.toLocalFile(); args << ptoUrl.toLocalFile(); runProcess(args); // AutoOptimiser does not return an error code when something went wrong... + QFile ptoOutput(autoOptimiserPtoUrl.toLocalFile()); if (!ptoOutput.exists()) { successFlag = false; errString = getProcessError(); } printDebug(QLatin1String("autooptimiser")); } } // namespace DigikamGenericPanoramaPlugin diff --git a/core/dplugins/generic/tools/panorama/tasks/optimisationtask.h b/core/dplugins/generic/tools/panorama/tasks/optimisationtask.h index 1680d5eda7..c13f2da462 100644 --- a/core/dplugins/generic/tools/panorama/tasks/optimisationtask.h +++ b/core/dplugins/generic/tools/panorama/tasks/optimisationtask.h @@ -1,59 +1,59 @@ /* ============================================================ * * This file is a part of digiKam project * https://www.digikam.org * * Date : 2012-03-15 * Description : a tool to create panorama by fusion of several images. * * Copyright (C) 2012-2015 by Benjamin Girault * * This program is free software; you can redistribute it * and/or modify it under the terms of the GNU General * Public License as published by the Free Software Foundation; * either version 2, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * ============================================================ */ #ifndef DIGIKAM_OPTIMISATION_TASK_H #define DIGIKAM_OPTIMISATION_TASK_H // Local includes #include "commandtask.h" namespace DigikamGenericPanoramaPlugin { class OptimisationTask : public CommandTask { public: explicit OptimisationTask(const QString& workDirPath, const QUrl& input, QUrl& autoOptimiserPtoUrl, - bool levelHorizon, - bool gPano, + bool levelHorizon, + bool gPano, const QString& autooptimiserPath); ~OptimisationTask(); protected: - void run(ThreadWeaver::JobPointer self, ThreadWeaver::Thread *thread) override; + void run(ThreadWeaver::JobPointer self, ThreadWeaver::Thread* thread) override; private: QUrl& autoOptimiserPtoUrl; const QUrl& ptoUrl; const bool levelHorizon; const bool buildGPano; }; } // namespace DigikamGenericPanoramaPlugin #endif // DIGIKAM_OPTIMISATION_TASK_H