summaryrefslogtreecommitdiffstats
path: root/api/logic/minecraft/ProfileUtils.h
blob: 351c36cb4f38f0d0dee5e428ba8fac1cb8a6b087 (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
#pragma once
#include "Library.h"
#include "VersionFile.h"

namespace ProfileUtils
{
typedef QStringList PatchOrder;

/// Read and parse a OneSix format order file
bool readOverrideOrders(QString path, PatchOrder &order);

/// Write a OneSix format order file
bool writeOverrideOrders(QString path, const PatchOrder &order);


/// Parse a version file in JSON format
VersionFilePtr parseJsonFile(const QFileInfo &fileInfo, const bool requireOrder);

/// Save a JSON file (in any format)
bool saveJsonFile(const QJsonDocument doc, const QString & filename);

/// Parse a version file in binary JSON format
VersionFilePtr parseBinaryJsonFile(const QFileInfo &fileInfo);

/// Remove LWJGL from a patch file. This is applied to all Mojang-like profile files.
void removeLwjglFromPatch(VersionFilePtr patch);

}