summaryrefslogtreecommitdiffstats
path: root/api/logic/minecraft/VersionFilterData.h
blob: f7d4ebe7c45780a49ff58d152803da18d05e55e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#pragma once
#include <QMap>
#include <QString>
#include <QSet>
#include <QDateTime>

#include "multimc_logic_export.h"

struct FMLlib
{
	QString filename;
	QString checksum;
	bool ours;
};

struct VersionFilterData
{
	VersionFilterData();
	// mapping between minecraft versions and FML libraries required
	QMap<QString, QList<FMLlib>> fmlLibsMapping;
	// set of minecraft versions for which using forge installers is blacklisted
	QSet<QString> forgeInstallerBlacklist;
	// set of 'legacy' versions that will not show up in the version lists.
	QSet<QString> legacyBlacklist;
	// no new versions below this date will be accepted from Mojang servers
	QDateTime legacyCutoffDate;
	// Libraries that belong to LWJGL
	QSet<QString> lwjglWhitelist;
	// Currently recommended minecraft version
	QString recommendedMinecraftVersion;
};
extern VersionFilterData MULTIMC_LOGIC_EXPORT g_VersionFilterData;