V-Gears 0
Free Final Fantasy VII engine.
FF7ModelListFileSerializer.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
21#include "FF7ModelListFile.h"
22
23namespace VGears{
24
29
30 public:
31
36
41
48 virtual void ImportModelListFile(Ogre::DataStreamPtr &stream, ModelListFile *dest);
49
51
53
57 enum {
58
63
67 SCALE_LENGTH = 4
68 };
69
70 protected:
71
78 virtual void readObject(Ogre::DataStreamPtr &stream, AnimationDescription &dest);
79
86 virtual void readObject(Ogre::DataStreamPtr &stream, ModelDescription &dest);
87
89
97 template<typename ValueType> void ReadVector(
98 Ogre::DataStreamPtr &stream, std::vector<ValueType> &dest, size_t count
99 );
100
101 };
102}
Handles the serialization of model list files.
Definition: FF7ModelListFileSerializer.h:28
virtual void ImportModelListFile(Ogre::DataStreamPtr &stream, ModelListFile *dest)
Imports a model list file.
Definition: FF7ModelListFileSerializer.cpp:38
void ReadVector(Ogre::DataStreamPtr &stream, std::vector< ValueType > &dest, size_t count)
Reads an object as a vector.
Definition: FF7ModelListFileSerializer.cpp:26
ModelListFileSerializer()
Constructor.
Definition: FF7ModelListFileSerializer.cpp:22
@ HRC_NAME_LENGTH
Length of the name of the HRC file assigned to a model.
Definition: FF7ModelListFileSerializer.h:62
@ SCALE_LENGTH
Scale data length.
Definition: FF7ModelListFileSerializer.h:67
virtual void readObject(Ogre::DataStreamPtr &stream, AnimationDescription &dest)
Reads an object as an animation description.
Definition: FF7ModelListFileSerializer.cpp:69
virtual ~ModelListFileSerializer()
Destructor.
Definition: FF7ModelListFileSerializer.cpp:24
ModelListFile::AnimationDescription AnimationDescription
Definition: FF7ModelListFileSerializer.h:50
ModelListFile::ModelDescription ModelDescription
Definition: FF7ModelListFileSerializer.h:52
Handles model list files.
Definition: FF7ModelListFile.h:26
Handles file serialization.
Definition: VGearsSerializer.h:30
void readObject(Ogre::DataStreamPtr &stream, Ogre::Vector2 &dest)
Reads an object as a 2 dimensional vector.
Definition: VGearsSerializer.cpp:32
Definition: FF7NameLookup.h:24
An animation description.
Definition: FF7ModelListFile.h:67
A model.
Definition: FF7ModelListFile.h:106