1
Fork 0
mirror of https://github.com/redstrate/Astra.git synced 2025-04-20 19:57:45 +00:00
astra/include/assetupdater.h

45 lines
1,022 B
C++

#pragma once
#include <QObject>
#include <QTemporaryDir>
class LauncherCore;
class QNetworkReply;
struct ProfileSettings;
class AssetUpdater : public QObject {
Q_OBJECT
public:
AssetUpdater(LauncherCore& launcher);
void update(const ProfileSettings& profile);
void finishDownload(QNetworkReply* reply);
void beginInstall();
void checkIfDalamudAssetsDone();
void checkIfFinished();
signals:
void finishedUpdating();
private:
LauncherCore& launcher;
const ProfileSettings* currentSettings = nullptr;
QString remoteDalamudVersion;
QString remoteRuntimeVersion;
QTemporaryDir tempDir;
bool doneDownloadingDalamud = true;
bool doneDownloadingNativelauncher = true;
bool doneDownloadingRuntimeCore = true;
bool doneDownloadingRuntimeDesktop = true;
bool needsRuntimeInstall = false;
bool needsDalamudInstall = false;
bool needsNativeInstall = false;
int remoteDalamudAssetVersion;
QList<QString> dalamudAssetNeededFilenames;
};