UCommon
|
Stream serialization of persistent classes. More...
#include <persist.h>
Public Types | |
enum | EngineMode { modeRead, modeWrite } |
These are the modes the Persistence::Engine can work in. | |
Public Member Functions | |
PersistEngine (std::iostream &stream, EngineMode mode) throw (PersistException) | |
Constructs a Persistence::Engine with the specified stream in the given mode. More... | |
void | read (bool &i) throw (PersistException) |
void | read (double &i) throw (PersistException) |
void | read (float &i) throw (PersistException) |
void | read (int16_t &i) throw (PersistException) |
void | read (int32_t &i) throw (PersistException) |
void | read (int8_t &i) throw (PersistException) |
void | read (PersistObject &object) throw (PersistException) |
reads a PersistObject into a reference overwriting the object. | |
void | read (PersistObject *&object) throw (PersistException) |
reads a PersistObject into a pointer allocating memory for the object if necessary. | |
void | read (std::string &str) throw (PersistException) |
void | read (uint16_t &i) throw (PersistException) |
void | read (uint32_t &i) throw (PersistException) |
void | read (uint8_t &i) throw (PersistException) |
void | readBinary (uint8_t *data, uint32_t size) throw (PersistException) |
void | write (bool i) throw (PersistException) |
void | write (const PersistObject &object) throw (PersistException) |
writes a PersistObject from a reference. | |
void | write (const PersistObject *object) throw (PersistException) |
writes a PersistObject from a pointer. | |
void | write (const std::string &str) throw (PersistException) |
void | write (double i) throw (PersistException) |
void | write (float i) throw (PersistException) |
void | write (int16_t i) throw (PersistException) |
void | write (int32_t i) throw (PersistException) |
void | write (int8_t i) throw (PersistException) |
void | write (uint16_t i) throw (PersistException) |
void | write (uint32_t i) throw (PersistException) |
void | write (uint8_t i) throw (PersistException) |
void | writeBinary (const uint8_t *data, const uint32_t size) throw (PersistException) |
Related Functions | |
(Note that these are not member functions.) | |
PersistEngine & | operator<< (PersistEngine &ar, bool ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, double ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, float ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, int16_t ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, int32_t ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, int8_t ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, PersistObject const &ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, PersistObject const *ob) throw(PersistException) |
template<class x , class y > | |
PersistEngine & | operator<< (PersistEngine &ar, std::pair< x, y > &ob) throw(PersistException) |
serialize a pair of some serializable content to the engine. | |
PersistEngine & | operator<< (PersistEngine &ar, std::string ob) throw(PersistException) |
template<class T > | |
PersistEngine & | operator<< (PersistEngine &ar, typename std::deque< T > const &ob) throw(PersistException) |
serialize a deque of some serializable content to the engine | |
template<class Key , class Value > | |
PersistEngine & | operator<< (PersistEngine &ar, typename std::map< Key, Value > const &ob) throw(PersistException) |
serialize a map with keys/values which both are serializeable to an engine. | |
template<class T > | |
PersistEngine & | operator<< (PersistEngine &ar, typename std::vector< T > const &ob) throw(PersistException) |
The following are template classes. More... | |
PersistEngine & | operator<< (PersistEngine &ar, uint16_t ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, uint32_t ob) throw(PersistException) |
PersistEngine & | operator<< (PersistEngine &ar, uint8_t ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, bool &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, double &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, float &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, int16_t &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, int32_t &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, int8_t &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, PersistObject &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, PersistObject *&ob) throw(PersistException) |
template<class x , class y > | |
PersistEngine & | operator>> (PersistEngine &ar, std::pair< x, y > &ob) throw(PersistException) |
deserialize a pair of some serializable content to the engine. | |
PersistEngine & | operator>> (PersistEngine &ar, std::string &ob) throw(PersistException) |
template<class T > | |
PersistEngine & | operator>> (PersistEngine &ar, typename std::deque< T > &ob) throw(PersistException) |
deserialize a deque of deserializable content from an engine. | |
template<class Key , class Value > | |
PersistEngine & | operator>> (PersistEngine &ar, typename std::map< Key, Value > &ob) throw(PersistException) |
deserialize a map with keys/values which both are serializeable from an engine. | |
template<class T > | |
PersistEngine & | operator>> (PersistEngine &ar, typename std::vector< T > &ob) throw(PersistException) |
deserialize a vector of deserializable content from an engine. | |
PersistEngine & | operator>> (PersistEngine &ar, uint16_t &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, uint32_t &ob) throw(PersistException) |
PersistEngine & | operator>> (PersistEngine &ar, uint8_t &ob) throw(PersistException) |
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.
ost::PersistEngine::PersistEngine | ( | std::iostream & | stream, |
EngineMode | mode | ||
) | |||
throw | ( | PersistException | |
) |
Constructs a Persistence::Engine with the specified stream in the given mode.
The stream must be initialized properly prior to this call or problems will ensue.
|
related |