V-Gears 0
Free Final Fantasy VII engine.
VGearsMapFileXMLSerializer.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 The V-Gears Team
3 *
4 * This file is part of V-Gears
5 *
6 * V-Gears is free software: you can redistribute it and/or modify it under
7 * terms of the GNU General Public License as published by the Free Software
8 * Foundation, version 3.0 (GPLv3) of the License.
9 *
10 * V-Gears is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 */
15
16#pragma once
17
18#include "common/TypeDefine.h"
20#include "VGearsMapFile.h"
21
22namespace VGears{
23
28
29 public:
30
35
39 virtual ~MapFileXMLSerializer();
40
47 virtual void ImportMapFile(Ogre::DataStreamPtr &stream, MapFile *dest);
48
50
52
54
56
57 protected:
58
64 virtual void ReadHeader(TiXmlNode *node);
65
72 virtual void ReadScript(TiXmlNode &node, MapFile *dest);
73
80 virtual void ReadBackground2D(TiXmlNode &node, MapFile *dest);
81
88 virtual void ReadTexts(TiXmlNode &node, MapFile *dest);
89
96 virtual void ReadWalkmesh(TiXmlNode &node, MapFile *dest);
97
104 virtual void ReadForwardDirection(TiXmlNode &node, MapFile *dest);
105
112 virtual void ReadEntities(TiXmlNode &node, MapFile *dest);
113
120 virtual void readObject(TiXmlNode &node, Point &dest);
121
128 virtual void readObject(TiXmlNode &node, Trigger &dest);
129
137 template<typename ValueType> void ReadEntities(
138 TiXmlNode &node, const String &tag, std::vector<ValueType> &dest
139 );
140
141 };
142}
143
An entity point.
Definition: EntityPoint.h:22
An entity trigger.
Definition: EntityTrigger.h:25
Handles the serialization of map XML files.
Definition: VGearsMapFileXMLSerializer.h:27
MapFile::TriggerList TriggerList
Definition: VGearsMapFileXMLSerializer.h:55
virtual void ReadScript(TiXmlNode &node, MapFile *dest)
Reads the script file location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:51
virtual void readObject(TiXmlNode &node, Point &dest)
Reads an object from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:105
MapFile::PointList PointList
Definition: VGearsMapFileXMLSerializer.h:51
virtual void ReadWalkmesh(TiXmlNode &node, MapFile *dest)
Reads the walkmesh file location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:78
MapFile::Point Point
Definition: VGearsMapFileXMLSerializer.h:49
MapFile::Trigger Trigger
Definition: VGearsMapFileXMLSerializer.h:53
virtual void ReadForwardDirection(TiXmlNode &node, MapFile *dest)
Reads the field forward direction location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:87
virtual void ReadBackground2D(TiXmlNode &node, MapFile *dest)
Reads the backgrouns file location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:60
virtual void ImportMapFile(Ogre::DataStreamPtr &stream, MapFile *dest)
Imports a map file.
Definition: VGearsMapFileXMLSerializer.cpp:36
MapFileXMLSerializer()
Constructor.
Definition: VGearsMapFileXMLSerializer.cpp:22
virtual void ReadTexts(TiXmlNode &node, MapFile *dest)
Reads the text file location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:69
virtual void ReadHeader(TiXmlNode *node)
Reads a file header from an XML node and sets the instance data.
Definition: VGearsMapFileXMLSerializer.cpp:26
virtual void ReadEntities(TiXmlNode &node, MapFile *dest)
Reads the entities location from the field XML file.
Definition: VGearsMapFileXMLSerializer.cpp:98
virtual ~MapFileXMLSerializer()
Destructor.
Definition: VGearsMapFileXMLSerializer.cpp:24
Handles map files.
Definition: VGearsMapFile.h:27
std::vector< Trigger > TriggerList
Definition: VGearsMapFile.h:66
std::vector< Point > PointList
Definition: VGearsMapFile.h:62
Handles the serialization of XML files.
Definition: VGearsXMLSerializer.h:44
Definition: FF7NameLookup.h:24
Ogre::String String
Definition: TypeDefine.h:37