mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-19 20:24:49 +00:00
43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
#pragma once
|
|
#ifndef _TAML_BINARYPARSER_H_
|
|
|
|
#ifndef _TAML_PARSER_H_
|
|
#include "persistence/taml/tamlParser.h"
|
|
#endif
|
|
|
|
#ifndef _TAML_VISITOR_H_
|
|
#include "persistence/taml/tamlVisitor.h"
|
|
#endif
|
|
|
|
#ifndef _STREAM_H_
|
|
#include "core/stream/stream.h"
|
|
#endif
|
|
|
|
#ifndef _FILESTREAM_H_
|
|
#include "core/stream/fileStream.h"
|
|
#endif
|
|
|
|
class TamlBinaryParser : public TamlParser
|
|
{
|
|
public:
|
|
TamlBinaryParser() {}
|
|
virtual ~TamlBinaryParser() {}
|
|
|
|
/// Whether the parser can change a property or not.
|
|
bool canChangeProperty(void) override { return false; }
|
|
|
|
/// Accept visitor.
|
|
bool accept(const char* pFilename, TamlVisitor& visitor) override;
|
|
|
|
private:
|
|
bool parseElement(Stream& stream, TamlVisitor& visitor, const U32 versionId);
|
|
void parseAttributes(Stream& stream, TamlVisitor& visitor, const U32 versionId, TamlVisitor::PropertyState& state);
|
|
void parseChildren(Stream& stream, TamlVisitor& visitor, const U32 versionId);
|
|
void parseCustomElements(Stream& stream, TamlVisitor& visitor, const U32 versionId);
|
|
bool parseCustomNode(Stream& stream, TamlVisitor& visitor, const U32 versionId, TamlVisitor::PropertyState& state);
|
|
|
|
bool isRoot;
|
|
};
|
|
|
|
#endif // !_TAML_BINARYPARSER_H_
|