File indexing completed on 2025-03-09 03:50:50

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2009-12-23
0007  * Description : Autodetect enfuse binary program and version
0008  *
0009  * SPDX-FileCopyrightText: 2009-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
0010  * SPDX-FileCopyrightText: 2012-2015 by Benjamin Girault <benjamin dot girault at gmail dot com>
0011  *
0012  * SPDX-License-Identifier: GPL-2.0-or-later
0013  *
0014  * ============================================================ */
0015 
0016 #ifndef DIGIKAM_ENFUSE_BINARY_H
0017 #define DIGIKAM_ENFUSE_BINARY_H
0018 
0019 // Local includes
0020 
0021 #include "dbinaryiface.h"
0022 
0023 using namespace Digikam;
0024 
0025 namespace DigikamGenericExpoBlendingPlugin
0026 {
0027 
0028 class EnfuseBinary : public DBinaryIface
0029 {
0030     Q_OBJECT
0031 
0032 public:
0033 
0034     explicit EnfuseBinary()
0035         : DBinaryIface(QLatin1String("enfuse"),
0036                        QLatin1String("3.2"),
0037                        QLatin1String("enfuse "),
0038                        0,
0039                        QLatin1String("Enblend"),
0040                        QLatin1String("https://sourceforge.net/projects/enblend/files/latest/download"),
0041                        QLatin1String("ExpoBlending"),
0042                        QStringList(QLatin1String("-V"))),
0043                        versionDouble(0)
0044     {
0045         setup();
0046     }
0047 
0048     ~EnfuseBinary() override
0049     {
0050     }
0051 
0052     double getVersion() const;
0053 
0054 Q_SIGNALS:
0055 
0056     void signalEnfuseVersion(double version);
0057 
0058 protected:
0059 
0060     bool parseHeader(const QString& output) override;
0061 
0062 private:
0063 
0064     double versionDouble;
0065 
0066 private:
0067 
0068     // Disable
0069     explicit EnfuseBinary(QObject*) = delete;
0070 };
0071 
0072 } // namespace DigikamGenericExpoBlendingPlugin
0073 
0074 #endif // DIGIKAM_ENFUSE_BINARY_H