src/parser.h

changeset 176
cd9d6bf6f649
parent 153
2f79053c2e9a
child 200
ca23936b455b
equal deleted inserted replaced
174:3016b494685c 176:cd9d6bf6f649
27 { 27 {
28 Q_OBJECT 28 Q_OBJECT
29 public: 29 public:
30 enum { EndOfModel = -1 }; 30 enum { EndOfModel = -1 };
31 Parser(QIODevice& device, QObject* parent = nullptr); 31 Parser(QIODevice& device, QObject* parent = nullptr);
32 LDHeader parseHeader(Winding& winding);
33 void parseBody(Model &model); 32 void parseBody(Model &model);
34 static std::unique_ptr<ldraw::Object> parseFromString(QString line); 33 static std::unique_ptr<ldraw::Object> parseFromString(QString line);
35 private: 34 private:
36 enum HeaderParseResult {ParseSuccess, ParseFailure, StopParsing};
37 QString readLine(); 35 QString readLine();
38 HeaderParseResult parseHeaderLine(LDHeader& header, Winding& winding, const QString& line);
39 QIODevice& device; 36 QIODevice& device;
40 QStringList bag;
41 }; 37 };

mercurial