ost::Engine Class Reference

Engine. 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 Member Functions

 Engine (std::iostream &stream, EngineMode mode) throw ( PersistException )
 Constructs a Persistence::Engine with the specified stream in the given mode.
void sync ()
 This Flushes the buffers and closes the Persistence::Engine this must happen before the underlying stream is shut down.
virtual ~Engine ()
void write (const BaseObject &object) throw ( PersistException )
 writes a BaseObject from a reference.
void write (const BaseObject *object) throw ( PersistException )
 writes a BaseObject from a pointer.
void write (int8 i) throw ( PersistException )
void write (uint8 i) throw ( PersistException )
void write (int16 i) throw ( PersistException )
void write (uint16 i) throw ( PersistException )
void write (int32 i) throw ( PersistException )
void write (uint32 i) throw ( PersistException )
void write (int64 i) throw ( PersistException )
void write (uint64 i) throw ( PersistException )
void write (float i) throw ( PersistException )
void write (double i) throw ( PersistException )
void write (const String &str) throw ( PersistException )
void write (const std::string &str) throw ( PersistException )
void writeBinary (const uint8 *data, const uint32 size) throw ( PersistException )
void read (BaseObject &object) throw ( PersistException )
 reads a BaseObject into a reference overwriting the object.
void read (BaseObject *&object) throw ( PersistException )
 reads a BaseObject into a pointer allocating memory for the object if necessary.
void read (int8 &i) throw ( PersistException )
void read (uint8 &i) throw ( PersistException )
void read (int16 &i) throw ( PersistException )
void read (uint16 &i) throw ( PersistException )
void read (int32 &i) throw ( PersistException )
void read (uint32 &i) throw ( PersistException )
void read (int64 &i) throw ( PersistException )
void read (uint64 &i) throw ( PersistException )
void read (float &i) throw ( PersistException )
void read (double &i) throw ( PersistException )
void read (String &str) throw ( PersistException )
void read (std::string &str) throw ( PersistException )
void readBinary (uint8 *data, uint32 size) throw ( PersistException )

Related Functions

(Note that these are not member functions.)



Engineoperator>> (Engine &ar, BaseObject &ob) throw(PersistException)
Engineoperator>> (Engine &ar, BaseObject *&ob) throw(PersistException)
Engineoperator<< (Engine &ar, BaseObject const &ob) throw(PersistException)
Engineoperator<< (Engine &ar, BaseObject const *ob) throw(PersistException)
Engineoperator>> (Engine &ar, int8 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, int8 ob) throw(PersistException)
Engineoperator>> (Engine &ar, uint8 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, uint8 ob) throw(PersistException)
Engineoperator>> (Engine &ar, int16 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, int16 ob) throw(PersistException)
Engineoperator>> (Engine &ar, uint16 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, uint16 ob) throw(PersistException)
Engineoperator>> (Engine &ar, int32 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, int32 ob) throw(PersistException)
Engineoperator>> (Engine &ar, uint32 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, uint32 ob) throw(PersistException)
Engineoperator>> (Engine &ar, int64 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, int64 ob) throw(PersistException)
Engineoperator>> (Engine &ar, uint64 &ob) throw(PersistException)
Engineoperator<< (Engine &ar, uint64 ob) throw(PersistException)
Engineoperator>> (Engine &ar, float &ob) throw(PersistException)
Engineoperator<< (Engine &ar, float ob) throw(PersistException)
Engineoperator>> (Engine &ar, double &ob) throw(PersistException)
Engineoperator<< (Engine &ar, double ob) throw(PersistException)
Engineoperator>> (Engine &ar, String &ob) throw(PersistException)
Engineoperator<< (Engine &ar, String ob) throw(PersistException)
Engineoperator>> (Engine &ar, std::string &ob) throw(PersistException)
Engineoperator<< (Engine &ar, std::string ob) throw(PersistException)
Engineoperator>> (Engine &ar, bool &ob) throw(PersistException)
Engineoperator<< (Engine &ar, bool ob) throw(PersistException)
template<class T >
Engineoperator<< (Engine &ar, typename std::vector< T > const &ob) throw(PersistException)
 The following are templated classes.
template<class T >
Engineoperator>> (Engine &ar, typename std::vector< T > &ob) throw(PersistException)
template<class T >
Engineoperator<< (Engine &ar, typename std::deque< T > const &ob) throw(PersistException)
template<class T >
Engineoperator>> (Engine &ar, typename std::deque< T > &ob) throw(PersistException)
template<class Key , class Value >
Engineoperator<< (Engine &ar, typename std::map< Key, Value > const &ob) throw(PersistException)
template<class Key , class Value >
Engineoperator>> (Engine &ar, typename std::map< Key, Value > &ob) throw(PersistException)
template<class x , class y >
Engineoperator<< (Engine &ar, std::pair< x, y > &ob) throw(PersistException)
template<class x , class y >
Engineoperator>> (Engine &ar, std::pair< x, y > &ob) throw(PersistException)

Detailed Description

Engine.

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 stream serialization of persistent classes.

Member Enumeration Documentation

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

Enumerator:
modeRead 
modeWrite 

Constructor & Destructor Documentation

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

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.

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

Member Function Documentation

void ost::Engine::read ( std::string &  str  )  throw ( PersistException )
void ost::Engine::read ( String str  )  throw ( PersistException )
void ost::Engine::read ( double &  i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

void ost::Engine::read ( uint64 i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEREAD_REF.

void ost::Engine::read ( int64 i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

References CCXX_ENGINEREAD_REF.

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

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

void ost::Engine::read ( BaseObject object  )  throw ( PersistException )

reads a BaseObject into a reference overwriting the object.

void ost::Engine::readBinary ( uint8 data,
uint32  size 
) throw ( PersistException )
void ost::Engine::sync (  ) 

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  )  throw ( PersistException )
void ost::Engine::write ( const String str  )  throw ( PersistException )
void ost::Engine::write ( double  i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

void ost::Engine::write ( uint64  i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEWRITE_REF.

void ost::Engine::write ( int64  i  )  throw ( PersistException ) [inline]

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

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

References CCXX_ENGINEWRITE_REF.

void ost::Engine::write ( const BaseObject object  )  throw ( PersistException )

writes a BaseObject from a pointer.

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

writes a BaseObject from a reference.

References write().

Referenced by write().

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

Friends And Related Function Documentation

template<class x , class y >
Engine & operator<< ( Engine ar,
std::pair< x, y > &  ob 
) throw(PersistException) [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 
) throw(PersistException) [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 
) throw(PersistException) [related]

serialize a deque of some serializable content to the engine

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

The following are templated classes.

serialize a vector of some serializable content to the engine

Engine & operator<< ( Engine ar,
bool  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
std::string  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
String  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
double  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
float  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
uint64  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
int64  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
uint32  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
int32  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
uint16  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
int16  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
uint8  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
int8  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
BaseObject const *  ob 
) throw(PersistException) [related]
Engine & operator<< ( Engine ar,
BaseObject const &  ob 
) throw(PersistException) [related]
template<class x , class y >
Engine & operator>> ( Engine ar,
std::pair< x, y > &  ob 
) throw(PersistException) [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 
) throw(PersistException) [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 
) throw(PersistException) [related]

deserialize a deque of deserializable content from an engine.

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

deserialize a vector of deserializable content from an engine.

Engine & operator>> ( Engine ar,
bool &  ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
std::string &  ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
String ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
double &  ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
float &  ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
uint64 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
int64 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
uint32 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
int32 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
uint16 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
int16 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
uint8 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
int8 ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
BaseObject *&  ob 
) throw(PersistException) [related]
Engine & operator>> ( Engine ar,
BaseObject ob 
) throw(PersistException) [related]

The documentation for this class was generated from the following file:
Generated on Mon Jul 12 02:49:44 2010 for GNU CommonC++ by  doxygen 1.6.3