ost::Engine Class Reference

Enginestream 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 Member Functions

 Engine (std::iostream &stream, EngineMode mode) THROWS(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) THROWS(PersistException)
 writes a BaseObject from a reference.
void write (const BaseObject *object) THROWS(PersistException)
 writes a BaseObject from a pointer.
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 (int64 i) THROWS(PersistException)
void write (uint64 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.
void read (BaseObject *&object) THROWS(PersistException)
 reads a BaseObject into a pointer allocating memory for the object if necessary.
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 (int64 &i) THROWS(PersistException)
void read (uint64 &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.)

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


Detailed Description

Enginestream 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.

Enumerator:
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.

virtual 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 uint64 i  )  [inline]
 

void ost::Engine::read int64 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  ) 
 

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 uint64  i  )  [inline]
 

void ost::Engine::write int64  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

Engine & operator<< Engine ar,
bool  ob
[related]
 

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

Engine & operator<< Engine ar,
String  ob
[related]
 

Engine & operator<< Engine ar,
double  ob
[related]
 

Engine & operator<< Engine ar,
float  ob
[related]
 

Engine & operator<< Engine ar,
uint64  ob
[related]
 

Engine & operator<< Engine ar,
int64  ob
[related]
 

Engine & operator<< Engine ar,
uint32  ob
[related]
 

Engine & operator<< Engine ar,
int32  ob
[related]
 

Engine & operator<< Engine ar,
uint16  ob
[related]
 

Engine & operator<< Engine ar,
int16  ob
[related]
 

Engine & operator<< Engine ar,
uint8  ob
[related]
 

Engine & operator<< Engine ar,
int8  ob
[related]
 

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

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.

Engine & operator>> Engine ar,
bool &  ob
[related]
 

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

Engine & operator>> Engine ar,
String ob
[related]
 

Engine & operator>> Engine ar,
double &  ob
[related]
 

Engine & operator>> Engine ar,
float &  ob
[related]
 

Engine & operator>> Engine ar,
uint64 ob
[related]
 

Engine & operator>> Engine ar,
int64 ob
[related]
 

Engine & operator>> Engine ar,
uint32 ob
[related]
 

Engine & operator>> Engine ar,
int32 ob
[related]
 

Engine & operator>> Engine ar,
uint16 ob
[related]
 

Engine & operator>> Engine ar,
int16 ob
[related]
 

Engine & operator>> Engine ar,
uint8 ob
[related]
 

Engine & operator>> Engine ar,
int8 ob
[related]
 

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

Engine & operator>> Engine ar,
BaseObject ob
[related]
 


The documentation for this class was generated from the following file:
Generated on Thu Apr 6 09:03:04 2006 for Bayonne Framework by  doxygen 1.4.6