yacreader/YACReaderLibrary/libraries_update_coordinator.h
2023-08-13 10:33:24 +02:00

35 lines
710 B
C++

#ifndef LIBRARIES_UPDATE_COORDINATOR_H
#define LIBRARIES_UPDATE_COORDINATOR_H
#include <QtCore>
class YACReaderLibraries;
class LibrariesUpdateCoordinator : public QObject
{
Q_OBJECT
public:
LibrariesUpdateCoordinator(QSettings *settings, YACReaderLibraries &libraries, QObject *parent = 0);
void updateLibraries();
signals:
void updateStarted();
void updateEnded();
private slots:
void checkUpdatePolicy();
void startUpdate();
void updateLibrary(const QString &path);
private:
QSettings *settings;
YACReaderLibraries &libraries;
QTimer *timer;
QElapsedTimer elapsedTimer;
std::future<void> updateFuture;
};
#endif // LIBRARIES_UPDATE_COORDINATOR_H