pollymc/logic/VersionFactory.h

24 lines
575 B
C
Raw Normal View History

2013-07-22 05:31:56 +05:30
#pragma once
#include <QtCore>
2013-08-28 08:08:29 +05:30
struct OneSixVersion;
2013-07-27 15:11:45 +05:30
class Rule;
2013-07-22 05:31:56 +05:30
class FullVersionFactory
{
public:
enum Error
{
AllOK, // all parsed OK
ParseError, // the file was corrupted somehow
UnsupportedVersion // the file was meant for a launcher version we don't support (yet)
} m_error;
QString error_string;
public:
FullVersionFactory();
2013-08-28 08:08:29 +05:30
QSharedPointer<OneSixVersion> parse(QByteArray data);
2013-07-22 05:31:56 +05:30
private:
2013-08-28 08:08:29 +05:30
QSharedPointer<OneSixVersion> parse4(QJsonObject root, QSharedPointer<OneSixVersion> product);
2013-07-27 15:11:45 +05:30
QList<QSharedPointer<Rule> > parse4rules(QJsonObject & baseObj);
2013-07-22 05:31:56 +05:30
};