| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #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_
|