OGRE  1.9.0
Ogre::Serializer Class Reference

Generic class for serialising data to / from binary stream-based files. More...

#include <OgreSerializer.h>

Inheritance diagram for Ogre::Serializer:

Public Types

enum  Endian { ENDIAN_NATIVE , ENDIAN_BIG , ENDIAN_LITTLE }
 The endianness of written files. More...
 

Public Member Functions

 Serializer ()
 
virtual ~Serializer ()
 
void operator delete (void *ptr)
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, const char *, int, const char *)
 
void operator delete (void *ptr, const char *, int, const char *)
 
void operator delete (void *ptr, void *)
 
void operator delete (void *ptr, void *)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
void * operator new (size_t sz)
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
 
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
 
void * operator new (size_t sz, void *ptr)
 placement operator new
 
void * operator new (size_t sz, void *ptr)
 placement operator new
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
 
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
 

Protected Member Functions

virtual void determineEndianness (DataStreamPtr &stream)
 Determine the endianness of the incoming stream compared to native.
 
virtual void determineEndianness (Endian requestedEndian)
 Determine the endianness to write with based on option.
 
virtual void flipFromLittleEndian (void *pData, size_t size, size_t count=1)
 
virtual void flipToLittleEndian (void *pData, size_t size, size_t count=1)
 
void readBools (DataStreamPtr &stream, bool *pDest, size_t count)
 
virtual unsigned short readChunk (DataStreamPtr &stream)
 
virtual void readFileHeader (DataStreamPtr &stream)
 
void readFloats (DataStreamPtr &stream, double *pDest, size_t count)
 
void readFloats (DataStreamPtr &stream, float *pDest, size_t count)
 
void readInts (DataStreamPtr &stream, uint32 *pDest, size_t count)
 
void readObject (DataStreamPtr &stream, Quaternion &pDest)
 
void readObject (DataStreamPtr &stream, Vector3 &pDest)
 
void readShorts (DataStreamPtr &stream, uint16 *pDest, size_t count)
 
String readString (DataStreamPtr &stream)
 
String readString (DataStreamPtr &stream, size_t numChars)
 
void writeBools (const bool *const pLong, size_t count)
 
virtual void writeChunkHeader (uint16 id, size_t size)
 
void writeData (const void *const buf, size_t size, size_t count)
 
virtual void writeFileHeader (void)
 Default to native endian, derive from header.
 
void writeFloats (const double *const pfloat, size_t count)
 
void writeFloats (const float *const pfloat, size_t count)
 
void writeInts (const uint32 *const pInt, size_t count)
 
void writeObject (const Quaternion &q)
 
void writeObject (const Vector3 &vec)
 
void writeShorts (const uint16 *const pShort, size_t count)
 
void writeString (const String &string)
 

Protected Attributes

uint32 mCurrentstreamLen
 
bool mFlipEndian
 
DataStreamPtr mStream
 
String mVersion
 

Detailed Description

Generic class for serialising data to / from binary stream-based files.

Remarks
This class provides a number of useful methods for exporting / importing data from stream-oriented binary files (e.g. .mesh and .skeleton).

Definition at line 50 of file OgreSerializer.h.

Member Enumeration Documentation

◆ Endian

The endianness of written files.

Enumerator
ENDIAN_NATIVE 

Use the platform native endian.

ENDIAN_BIG 

Use big endian (0x1000 is serialised as 0x10 0x00)

ENDIAN_LITTLE 

Use little endian (0x1000 is serialised as 0x00 0x10)

Definition at line 57 of file OgreSerializer.h.

Constructor & Destructor Documentation

◆ Serializer()

Ogre::Serializer::Serializer ( )

◆ ~Serializer()

virtual Ogre::Serializer::~Serializer ( )
virtual

Member Function Documentation

◆ determineEndianness() [1/2]

virtual void Ogre::Serializer::determineEndianness ( DataStreamPtr & stream)
protectedvirtual

Determine the endianness of the incoming stream compared to native.

◆ determineEndianness() [2/2]

virtual void Ogre::Serializer::determineEndianness ( Endian requestedEndian)
protectedvirtual

Determine the endianness to write with based on option.

◆ flipFromLittleEndian()

virtual void Ogre::Serializer::flipFromLittleEndian ( void * pData,
size_t size,
size_t count = 1 )
protectedvirtual

◆ flipToLittleEndian()

virtual void Ogre::Serializer::flipToLittleEndian ( void * pData,
size_t size,
size_t count = 1 )
protectedvirtual

◆ operator delete() [1/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr)
inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [2/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr)
inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [3/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr,
const char * ,
int ,
const char *  )
inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [4/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr,
const char * ,
int ,
const char *  )
inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [5/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr,
void *  )
inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [6/6]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete ( void * ptr,
void *  )
inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [1/4]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete[] ( void * ptr)
inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [2/4]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete[] ( void * ptr)
inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [3/4]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete[] ( void * ptr,
const char * ,
int ,
const char *  )
inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

◆ operator delete[]() [4/4]

void Ogre::AllocatedObject< GeneralAllocPolicy >::operator delete[] ( void * ptr,
const char * ,
int ,
const char *  )
inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

◆ operator new() [1/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz)
inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

◆ operator new() [2/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz)
inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

◆ operator new() [3/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz,
const char * file,
int line,
const char * func )
inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

◆ operator new() [4/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz,
const char * file,
int line,
const char * func )
inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

◆ operator new() [5/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz,
void * ptr )
inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

◆ operator new() [6/6]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new ( size_t sz,
void * ptr )
inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [1/4]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new[] ( size_t sz)
inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [2/4]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new[] ( size_t sz)
inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [3/4]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new[] ( size_t sz,
const char * file,
int line,
const char * func )
inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

◆ operator new[]() [4/4]

void * Ogre::AllocatedObject< GeneralAllocPolicy >::operator new[] ( size_t sz,
const char * file,
int line,
const char * func )
inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

◆ readBools()

void Ogre::Serializer::readBools ( DataStreamPtr & stream,
bool * pDest,
size_t count )
protected

◆ readChunk()

virtual unsigned short Ogre::Serializer::readChunk ( DataStreamPtr & stream)
protectedvirtual

◆ readFileHeader()

virtual void Ogre::Serializer::readFileHeader ( DataStreamPtr & stream)
protectedvirtual

Reimplemented in Ogre::SkeletonSerializer.

◆ readFloats() [1/2]

void Ogre::Serializer::readFloats ( DataStreamPtr & stream,
double * pDest,
size_t count )
protected

◆ readFloats() [2/2]

void Ogre::Serializer::readFloats ( DataStreamPtr & stream,
float * pDest,
size_t count )
protected

◆ readInts()

void Ogre::Serializer::readInts ( DataStreamPtr & stream,
uint32 * pDest,
size_t count )
protected

◆ readObject() [1/2]

void Ogre::Serializer::readObject ( DataStreamPtr & stream,
Quaternion & pDest )
protected

◆ readObject() [2/2]

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

◆ readShorts()

void Ogre::Serializer::readShorts ( DataStreamPtr & stream,
uint16 * pDest,
size_t count )
protected

◆ readString() [1/2]

String Ogre::Serializer::readString ( DataStreamPtr & stream)
protected

◆ readString() [2/2]

String Ogre::Serializer::readString ( DataStreamPtr & stream,
size_t numChars )
protected

◆ writeBools()

void Ogre::Serializer::writeBools ( const bool *const pLong,
size_t count )
protected

◆ writeChunkHeader()

virtual void Ogre::Serializer::writeChunkHeader ( uint16 id,
size_t size )
protectedvirtual

◆ writeData()

void Ogre::Serializer::writeData ( const void *const buf,
size_t size,
size_t count )
protected

◆ writeFileHeader()

virtual void Ogre::Serializer::writeFileHeader ( void )
protectedvirtual

Default to native endian, derive from header.

◆ writeFloats() [1/2]

void Ogre::Serializer::writeFloats ( const double *const pfloat,
size_t count )
protected

◆ writeFloats() [2/2]

void Ogre::Serializer::writeFloats ( const float *const pfloat,
size_t count )
protected

◆ writeInts()

void Ogre::Serializer::writeInts ( const uint32 *const pInt,
size_t count )
protected

◆ writeObject() [1/2]

void Ogre::Serializer::writeObject ( const Quaternion & q)
protected

◆ writeObject() [2/2]

void Ogre::Serializer::writeObject ( const Vector3 & vec)
protected

◆ writeShorts()

void Ogre::Serializer::writeShorts ( const uint16 *const pShort,
size_t count )
protected

◆ writeString()

void Ogre::Serializer::writeString ( const String & string)
protected

Member Data Documentation

◆ mCurrentstreamLen

uint32 Ogre::Serializer::mCurrentstreamLen
protected

Definition at line 70 of file OgreSerializer.h.

◆ mFlipEndian

bool Ogre::Serializer::mFlipEndian
protected

Definition at line 73 of file OgreSerializer.h.

◆ mStream

DataStreamPtr Ogre::Serializer::mStream
protected

Definition at line 71 of file OgreSerializer.h.

◆ mVersion

String Ogre::Serializer::mVersion
protected

Definition at line 72 of file OgreSerializer.h.


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