aboutsummaryrefslogtreecommitdiff
path: root/launcher/minecraft/OneSixVersionFormat.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2021-07-25 19:11:59 +0200
committerPetr Mrázek <peterix@gmail.com>2021-07-25 19:50:44 +0200
commit20b9f2b42a3b58b6081af271774fbcc34025dccb (patch)
tree064fa59facb3357139b47bd4e60bfc8edb35ca11 /launcher/minecraft/OneSixVersionFormat.h
parentdd133680858351e3e07690e286882327a4f42ba5 (diff)
downloadPrismLauncher-20b9f2b42a3b58b6081af271774fbcc34025dccb.tar.gz
PrismLauncher-20b9f2b42a3b58b6081af271774fbcc34025dccb.tar.bz2
PrismLauncher-20b9f2b42a3b58b6081af271774fbcc34025dccb.zip
NOISSUE Flatten gui and logic libraries into MultiMC
Diffstat (limited to 'launcher/minecraft/OneSixVersionFormat.h')
-rw-r--r--launcher/minecraft/OneSixVersionFormat.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/launcher/minecraft/OneSixVersionFormat.h b/launcher/minecraft/OneSixVersionFormat.h
new file mode 100644
index 00000000..1a091d88
--- /dev/null
+++ b/launcher/minecraft/OneSixVersionFormat.h
@@ -0,0 +1,30 @@
+#pragma once
+
+#include <minecraft/VersionFile.h>
+#include <minecraft/PackProfile.h>
+#include <minecraft/Library.h>
+#include <QJsonDocument>
+#include <ProblemProvider.h>
+
+class OneSixVersionFormat
+{
+public:
+ // version files / profile patches
+ static VersionFilePtr versionFileFromJson(const QJsonDocument &doc, const QString &filename, const bool requireOrder);
+ static QJsonDocument versionFileToJson(const VersionFilePtr &patch);
+
+ // libraries
+ static LibraryPtr libraryFromJson(ProblemContainer & problems, const QJsonObject &libObj, const QString &filename);
+ static QJsonObject libraryToJson(Library *library);
+
+ // DEPRECATED: old 'plus' jar mods generated by the application
+ static LibraryPtr plusJarModFromJson(ProblemContainer & problems, const QJsonObject &libObj, const QString &filename, const QString &originalName);
+
+ // new jar mods derived from libraries
+ static LibraryPtr jarModFromJson(ProblemContainer & problems, const QJsonObject &libObj, const QString &filename);
+ static QJsonObject jarModtoJson(Library * jarmod);
+
+ // mods, also derived from libraries
+ static LibraryPtr modFromJson(ProblemContainer & problems, const QJsonObject &libObj, const QString &filename);
+ static QJsonObject modtoJson(Library * jarmod);
+};