File indexing completed on 2024-04-14 04:43:59

0001 /*
0002    SPDX-FileCopyrightText: 2015 (c) Matthieu Gallien <matthieu_gallien@yahoo.fr>
0003 
0004    SPDX-License-Identifier: LGPL-3.0-or-later
0005  */
0006 
0007 #include "config-upnp-qt.h"
0008 
0009 #include "musiclistenersmanager.h"
0010 #include "elisaimportapplication.h"
0011 #include "elisa_settings.h"
0012 
0013 #include <QCoreApplication>
0014 #include <QCommandLineParser>
0015 #include <QStandardPaths>
0016 
0017 int main(int argc, char *argv[])
0018 {
0019     QCoreApplication app(argc, argv);
0020 
0021     qRegisterMetaType<QHash<QString,QUrl>>("QHash<QString,QUrl>");
0022     qRegisterMetaType<QVector<qulonglong>>("QVector<qulonglong>");
0023     qRegisterMetaType<QHash<qulonglong,int>>("QHash<qulonglong,int>");
0024     qRegisterMetaType<QMap<QString, int>>();
0025     qRegisterMetaType<QMap<QString,int>>("QMap<QString,int>");
0026     qRegisterMetaType<QHash<QUrl,QDateTime>>("QHash<QUrl,QDateTime>");
0027     qRegisterMetaType<DataTypes::ListTrackDataType>("DataTypes::ListTrackDataType");
0028 
0029     QCommandLineParser parser;
0030     parser.addHelpOption();
0031     parser.addVersionOption();
0032     parser.process(app);
0033 
0034     auto configurationFileName = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
0035     configurationFileName += QStringLiteral("/elisarc");
0036     Elisa::ElisaConfiguration::instance(configurationFileName);
0037     Elisa::ElisaConfiguration::self()->load();
0038     Elisa::ElisaConfiguration::self()->save();
0039 
0040     MusicListenersManager myMusicManager;
0041     ElisaImportApplication myApplication;
0042 
0043     QObject::connect(&myMusicManager, &MusicListenersManager::indexerBusyChanged,
0044             &myApplication, &ElisaImportApplication::indexingChanged);
0045 
0046     return app.exec();
0047 }
0048