File indexing completed on 2025-03-09 03:57:01
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2013-11-28 0007 * Description : a command line tool to get list of files format supported by ExifTool 0008 * 0009 * SPDX-FileCopyrightText: 2012-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 // Qt includes 0016 0017 #include <QString> 0018 #include <QCoreApplication> 0019 #include <QVariant> 0020 0021 // Local includes 0022 0023 #include "digikam_debug.h" 0024 #include "exiftoolparser.h" 0025 0026 using namespace Digikam; 0027 0028 int main(int argc, char** argv) 0029 { 0030 QCoreApplication app(argc, argv); 0031 0032 // Create ExifTool parser instance. 0033 0034 ExifToolParser* const parser = new ExifToolParser(qApp); 0035 QString ext; 0036 QString desc; 0037 ExifToolParser::ExifToolData parsed; 0038 QStringList lst; 0039 0040 if (parser->readableFormats()) 0041 { 0042 parsed = parser->currentData(); 0043 lst = parsed.find(QLatin1String("READ_FORMATS")).value()[0].toStringList(); 0044 qCDebug(DIGIKAM_TESTS_LOG) << "Readable file formats:"; 0045 0046 for (int i = 0 ; i < lst.size() ; i += 2) 0047 { 0048 ext = lst[i]; 0049 desc = lst[i + 1]; 0050 qCDebug(DIGIKAM_TESTS_LOG) << ext << desc; 0051 } 0052 } 0053 0054 if (parser->writableFormats()) 0055 { 0056 parsed = parser->currentData(); 0057 lst = parsed.find(QLatin1String("WRITE_FORMATS")).value()[0].toStringList(); 0058 qCDebug(DIGIKAM_TESTS_LOG) << "Writable file formats:"; 0059 0060 for (int i = 0 ; i < lst.size() ; i += 2) 0061 { 0062 ext = lst[i]; 0063 desc = lst[i + 1]; 0064 qCDebug(DIGIKAM_TESTS_LOG) << ext << desc; 0065 } 0066 } 0067 0068 return 0; 0069 }