Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

ost::Engine Class Reference

Engine stream serialization of persistent classes. More...

#include <persist.h>

List of all members.

Public Types

enum  EngineMode { modeRead, modeWrite }
 These are the modes the Persistence::Engine can work in. More...


Public Methods

 Engine (std::iostream &stream, EngineMode mode) THROWS(PersistException)
 Constructs a Persistence::Engine with the specified stream in the given mode. More...

void sync ()
 This Flushes the buffers and closes the Persistence::Engine this must happen before the underlying stream is shut down. More...

virtual ~Engine ()
void write (const BaseObject &object) THROWS(PersistException)
 writes a BaseObject from a reference. More...

void write (const BaseObject *object) THROWS(PersistException)
 writes a BaseObject from a pointer. More...

void write (int8 i) THROWS(PersistException)
void write (uint8 i) THROWS(PersistException)
void write (int16 i) THROWS(PersistException)
void write (uint16 i) THROWS(PersistException)
void write (int32 i) THROWS(PersistException)
void write (uint32 i) THROWS(PersistException)
void write (float i) THROWS(PersistException)
void write (double i) THROWS(PersistException)
void write (const String &str) THROWS(PersistException)
void write (const std::string &str) THROWS(PersistException)
void writeBinary (const uint8 *data, const uint32 size) THROWS(PersistException)
void read (BaseObject &object) THROWS(PersistException)
 reads a BaseObject into a reference overwriting the object. More...

void read (BaseObject *&object) THROWS(PersistException)
 reads a BaseObject into a pointer allocating memory for the object if necessary. More...

void read (int8 &i) THROWS(PersistException)
void read (uint8 &i) THROWS(PersistException)
void read (int16 &i) THROWS(PersistException)
void read (uint16 &i) THROWS(PersistException)
void read (int32 &i) THROWS(PersistException)
void read (uint32 &i) THROWS(PersistException)
void read (float &i) THROWS(PersistException)
void read (double &i) THROWS(PersistException)
void read (String &str) THROWS(PersistException)
void read (std::string &str) THROWS(PersistException)
void readBinary (uint8 *data, uint32 size) THROWS(PersistException)

Related Functions

(Note that these are not member functions.)

__EXPORT Engine & operator>> (Engine &ar, BaseObject &ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, BaseObject *&ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, BaseObject const &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, BaseObject const *ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, int8 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, int8 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, uint8 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, uint8 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, int16 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, int16 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, uint16 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, uint16 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, int32 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, int32 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, uint32 &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, uint32 ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, float &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, float ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, double &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, double ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, String &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, String ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, std::string &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, std::string ob) THROWS(PersistException)
__EXPORT Engine & operator>> (Engine &ar, bool &ob) THROWS(PersistException)
__EXPORT Engine & operator<< (Engine &ar, bool ob) THROWS(PersistException)
template<class T> Engine & operator<< (Engine &ar, typename std::vector< T > const &ob) THROWS(PersistException)
 serialize a vector of some serializable content to the engine. More...

template<class T> Engine & operator>> (Engine &ar, typename std::vector< T > &ob) THROWS(PersistException)
 deserialize a vector of deserializable content from an engine. More...

template<class T> Engine & operator<< (Engine &ar, typename std::deque< T > const &ob) THROWS(PersistException)
 serialize a deque of some serializable content to the engine. More...

template<class T> Engine & operator>> (Engine &ar, typename std::deque< T > &ob) THROWS(PersistException)
 deserialize a deque of deserializable content from an engine. More...

template<class Key, class Value> Engine & operator<< (Engine &ar, typename std::map< Key, Value > const &ob) THROWS(PersistException)
 serialize a map with keys/values which both are serializeable to an engine. More...

template<class Key, class Value> Engine & operator>> (Engine &ar, typename std::map< Key, Value > &ob) THROWS(PersistException)
 deserialize a map with keys/values which both are serializeable from an engine. More...

template<class x, class y> Engine & operator<< (Engine &ar, std::pair< x, y > &ob) THROWS(PersistException)
 serialize a pair of some serializable content to the engine. More...

template<class x, class y> Engine & operator>> (Engine &ar, std::pair< x, y > &ob) THROWS(PersistException)
 deserialize a pair of some serializable content to the engine. More...


Detailed Description

Engine stream serialization of persistent classes.

This class constructs on a standard C++ STL stream and then operates in the mode specified. The stream passed into the constructor must be a binary mode to function properly.

Author:
Daniel Silverstone


Member Enumeration Documentation

enum ost::Engine::EngineMode
 

These are the modes the Persistence::Engine can work in.

Enumeration values:
modeRead  
modeWrite  


Constructor & Destructor Documentation

ost::Engine::Engine ( std::iostream & stream,
EngineMode mode )
 

Constructs a Persistence::Engine with the specified stream in the given mode.

The stream must be initialised properly prior to this call or problems will ensue.

ost::Engine::~Engine ( ) [virtual]
 


Member Function Documentation

void ost::Engine::read ( std::string & str )
 

void ost::Engine::read ( String & str )
 

void ost::Engine::read ( double & i ) [inline]
 

void ost::Engine::read ( float & i ) [inline]
 

void ost::Engine::read ( uint32 & i ) [inline]
 

void ost::Engine::read ( int32 & i ) [inline]
 

void ost::Engine::read ( uint16 & i ) [inline]
 

void ost::Engine::read ( int16 & i ) [inline]
 

void ost::Engine::read ( uint8 & i ) [inline]
 

void ost::Engine::read ( int8 & i ) [inline]
 

void ost::Engine::read ( BaseObject *& object )
 

reads a BaseObject into a pointer allocating memory for the object if necessary.

void ost::Engine::read ( BaseObject & object )
 

reads a BaseObject into a reference overwriting the object.

void ost::Engine::readBinary ( uint8 * data,
uint32 size )
 

void ost::Engine::sync ( void )
 

This Flushes the buffers and closes the Persistence::Engine this must happen before the underlying stream is shut down.

void ost::Engine::write ( const std::string & str )
 

void ost::Engine::write ( const String & str )
 

void ost::Engine::write ( double i ) [inline]
 

void ost::Engine::write ( float i ) [inline]
 

void ost::Engine::write ( uint32 i ) [inline]
 

void ost::Engine::write ( int32 i ) [inline]
 

void ost::Engine::write ( uint16 i ) [inline]
 

void ost::Engine::write ( int16 i ) [inline]
 

void ost::Engine::write ( uint8 i ) [inline]
 

void ost::Engine::write ( int8 i ) [inline]
 

void ost::Engine::write ( const BaseObject * object )
 

writes a BaseObject from a pointer.

void ost::Engine::write ( const BaseObject & object ) [inline]
 

writes a BaseObject from a reference.

void ost::Engine::writeBinary ( const uint8 * data,
const uint32 size )
 


Friends And Related Function Documentation

template<class x, class y>
Engine & operator<< ( Engine & ar,
std::pair< x, y > & ob ) [related]
 

serialize a pair of some serializable content to the engine.

template<class Key, class Value>
Engine & operator<< ( Engine & ar,
typename std::map< Key, Value > const & ob ) [related]
 

serialize a map with keys/values which both are serializeable to an engine.

template<class T>
Engine & operator<< ( Engine & ar,
typename std::deque< T > const & ob ) [related]
 

serialize a deque of some serializable content to the engine.

template<class T>
Engine & operator<< ( Engine & ar,
typename std::vector< T > const & ob ) [related]
 

serialize a vector of some serializable content to the engine.

__EXPORT Engine & operator<< ( Engine & ar,
bool ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
std::string ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
String ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
double ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
float ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
uint32 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
int32 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
uint16 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
int16 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
uint8 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
int8 ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
BaseObject const * ob ) [related]
 

__EXPORT Engine & operator<< ( Engine & ar,
BaseObject const & ob ) [related]
 

template<class x, class y>
Engine & operator>> ( Engine & ar,
std::pair< x, y > & ob ) [related]
 

deserialize a pair of some serializable content to the engine.

template<class Key, class Value>
Engine & operator>> ( Engine & ar,
typename std::map< Key, Value > & ob ) [related]
 

deserialize a map with keys/values which both are serializeable from an engine.

template<class T>
Engine & operator>> ( Engine & ar,
typename std::deque< T > & ob ) [related]
 

deserialize a deque of deserializable content from an engine.

template<class T>
Engine & operator>> ( Engine & ar,
typename std::vector< T > & ob ) [related]
 

deserialize a vector of deserializable content from an engine.

__EXPORT Engine & operator>> ( Engine & ar,
bool & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
std::string & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
String & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
double & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
float & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
uint32 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
int32 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
uint16 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
int16 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
uint8 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
int8 & ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
BaseObject *& ob ) [related]
 

__EXPORT Engine & operator>> ( Engine & ar,
BaseObject & ob ) [related]
 


The documentation for this class was generated from the following file:
Generated at Fri May 30 14:51:02 2008 for GNU CommonC++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001