V-Gears 0
Free Final Fantasy VII engine.
VGears::WalkmeshFileSerializer Class Reference

Handles the serialization of walkmesh files. More...

#include <FF7WalkmeshFileSerializer.h>

Inheritance diagram for VGears::WalkmeshFileSerializer:
Collaboration diagram for VGears::WalkmeshFileSerializer:

Classes

struct  Access
 Defines the access to a triangle. More...
 
struct  Triangle
 A walkmesh triangle. More...
 

Public Types

enum  { VERTEX_PADDING_COUNT = 1 , VERTEX_COMPONENT_COUNT = 3 + VERTEX_PADDING_COUNT , ACCESS_COMPONENT_COUNT = 3 }
 
typedef WalkmeshFile::Triangle WalkmeshTriangle
 
typedef WalkmeshFile::TriangleList WalkmeshTriangleList
 
typedef std::vector< TriangleTriangleList
 
typedef std::vector< AccessAccessList
 

Public Member Functions

 WalkmeshFileSerializer ()
 Constructor. More...
 
virtual ~WalkmeshFileSerializer ()
 Destructor. More...
 
virtual void ImportWalkmeshFile (Ogre::DataStreamPtr &stream, WalkmeshFile *dest)
 Imports a walkmesh file. More...
 
- Public Member Functions inherited from VGears::Serializer
 Serializer ()
 Constructor. More...
 
virtual ~Serializer ()
 Destructor. More...
 

Protected Member Functions

virtual void readObject (Ogre::DataStreamPtr &stream, Triangle &dest)
 Reads an object as a walkmesh triangle. More...
 
virtual void readObject (Ogre::DataStreamPtr &stream, Ogre::Vector3 &dest)
 Reads an object as a 3-dimensional vector. More...
 
virtual void readObject (Ogre::DataStreamPtr &stream, Access &dest)
 Reads an object as a triangle access point. More...
 
template<typename ValueType >
void ReadVector (Ogre::DataStreamPtr &stream, std::vector< ValueType > &dest, size_t count)
 Reads an object as a vector. More...
 
void readObject (Ogre::DataStreamPtr &stream, Ogre::Vector2 &dest)
 Reads an object as a 2 dimensional vector. More...
 
void readObject (Ogre::DataStreamPtr &stream, Ogre::Vector3 &dest)
 Reads an object as a 3 dimensional vector. More...
 
void readObject (Ogre::DataStreamPtr &stream, Ogre::AxisAlignedBox &dest)
 Reads an object as an axis aligned box. More...
 
void readObject (Ogre::DataStreamPtr &stream, Pixel &dest)
 Reads an object as a pixel. More...
 
- Protected Member Functions inherited from VGears::Serializer
void readObject (Ogre::DataStreamPtr &stream, Ogre::Vector2 &dest)
 Reads an object as a 2 dimensional vector. More...
 
void readObject (Ogre::DataStreamPtr &stream, Ogre::Vector3 &dest)
 Reads an object as a 3 dimensional vector. More...
 
void readObject (Ogre::DataStreamPtr &stream, Ogre::AxisAlignedBox &dest)
 Reads an object as an axis aligned box. More...
 
void readObject (Ogre::DataStreamPtr &stream, Pixel &dest)
 Reads an object as a pixel. More...
 
void ReadChars (Ogre::DataStreamPtr &stream, char *dest, size_t count)
 Reads a stream as text. More...
 
void Read1ByteBool (Ogre::DataStreamPtr &stream, bool &dest)
 Reads one byte from a stream and evaluates it as a boolean. More...
 
void Read2ByteBool (Ogre::DataStreamPtr &stream, bool &dest)
 Reads two bytes from a stream and evaluates them as a boolean. More...
 
void ReadShort (Ogre::DataStreamPtr &stream, uint16 &dest)
 Reads 16 bytes from a stream and evaluates as an unsigned short. More...
 
void ReadInt16 (Ogre::DataStream &stream, sint16 &dest)
 Reads 16 bytes from a stream and evaluates as a signed integer. More...
 
void ReadUInt16 (Ogre::DataStream &stream, uint16 &dest)
 Reads 16 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadInt16 (Ogre::DataStreamPtr &stream, sint16 &dest)
 Reads 16 bytes from a stream and evaluates as a signed integer. More...
 
void ReadUInt16 (Ogre::DataStreamPtr &stream, uint16 &dest)
 Reads 16 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadUInt32 (Ogre::DataStreamPtr &stream, uint32 &dest)
 Reads 32 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadSInt32 (Ogre::DataStreamPtr &stream, sint32 &dest)
 Reads 32 bytes from a stream and evaluates as a signed int. More...
 
void ReadUInt32 (Ogre::DataStream &stream, uint32 &dest)
 Reads 32 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadUInt8 (Ogre::DataStream &stream, uint8 &dest)
 Reads 8 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadUInt8 (Ogre::DataStreamPtr &stream, uint8 &dest)
 Reads 8 bytes from a stream and evaluates as an unsigned int. More...
 
void ReadFloat (Ogre::DataStreamPtr &stream, float &dest)
 Reads bytes from a stream and evaluates them as a float. More...
 
void ReadEndString (Ogre::DataStreamPtr &stream, const String &end_text)
 
String GetLine (Ogre::DataStreamPtr &stream) const
 

Additional Inherited Members

- Static Protected Attributes inherited from VGears::Serializer
static const String TAG_COMMENT
 A comment tag. More...
 

Detailed Description

Handles the serialization of walkmesh files.

Member Typedef Documentation

◆ AccessList

◆ TriangleList

◆ WalkmeshTriangle

◆ WalkmeshTriangleList

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Todo:
Understand and document.
Enumerator
VERTEX_PADDING_COUNT 
Todo:
Understand and document.
VERTEX_COMPONENT_COUNT 
Todo:
Understand and document.
ACCESS_COMPONENT_COUNT 
Todo:
Understand and document.

Constructor & Destructor Documentation

◆ WalkmeshFileSerializer()

VGears::WalkmeshFileSerializer::WalkmeshFileSerializer ( )

Constructor.

◆ ~WalkmeshFileSerializer()

VGears::WalkmeshFileSerializer::~WalkmeshFileSerializer ( )
virtual

Destructor.

Member Function Documentation

◆ ImportWalkmeshFile()

void VGears::WalkmeshFileSerializer::ImportWalkmeshFile ( Ogre::DataStreamPtr &  stream,
WalkmeshFile dest 
)
virtual

Imports a walkmesh file.

Parameters
[in]streamThe contents of the walkmesh file.
[out]destThe formed walkmesh file.

◆ readObject() [1/7]

void VGears::WalkmeshFileSerializer::readObject ( Ogre::DataStreamPtr &  stream,
WalkmeshFileSerializer::Access dest 
)
protectedvirtual

Reads an object as a triangle access point.

Parameters
[in]streamInput data.
[out]destThe formed access point data.

◆ readObject() [2/7]

void VGears::Serializer::readObject ( Ogre::DataStreamPtr &  stream,
Ogre::AxisAlignedBox &  dest 
)
protected

Reads an object as an axis aligned box.

Can be used for bounding boxes.

Parameters
[in]streamInput data.
[out]destThe formed box data.

◆ readObject() [3/7]

void VGears::Serializer::readObject ( Ogre::DataStreamPtr &  stream,
Ogre::Vector2 &  dest 
)
protected

Reads an object as a 2 dimensional vector.

Parameters
[in]streamInput data.
[out]destThe formed vector data.

◆ readObject() [4/7]

void VGears::WalkmeshFileSerializer::readObject ( Ogre::DataStreamPtr &  stream,
Ogre::Vector3 &  dest 
)
protectedvirtual

Reads an object as a 3-dimensional vector.

Parameters
[in]streamInput data.
[out]destThe formed vector data.

◆ readObject() [5/7]

void VGears::Serializer::readObject ( Ogre::DataStreamPtr &  stream,
Ogre::Vector3 &  dest 
)
protected

Reads an object as a 3 dimensional vector.

Parameters
[in]streamInput data.
[out]destThe formed vector data.

◆ readObject() [6/7]

void VGears::Serializer::readObject ( Ogre::DataStreamPtr &  stream,
Pixel dest 
)
protected

Reads an object as a pixel.

Parameters
[in]streamInput data.
[out]destThe formed pixel data.

◆ readObject() [7/7]

void VGears::WalkmeshFileSerializer::readObject ( Ogre::DataStreamPtr &  stream,
WalkmeshFileSerializer::Triangle dest 
)
protectedvirtual

Reads an object as a walkmesh triangle.

Parameters
[in]streamInput data.
[out]destThe formed triangle data.

◆ ReadVector()

template<typename ValueType >
void VGears::WalkmeshFileSerializer::ReadVector ( Ogre::DataStreamPtr &  stream,
std::vector< ValueType > &  dest,
size_t  count 
)
protected

Reads an object as a vector.

Parameters
[in]streamInput data.
[out]destThe formed vector data.
[in]countThe size of the data to read.

The documentation for this class was generated from the following files: