.TH "ost::Engine" 3 "Sun Dec 27 2020" "GNU CommonC++" \" -*- nroff -*- .ad l .nh .SH NAME ost::Engine \- \fBEngine\fP\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .SS "Public Types" .in +1c .ti -1c .RI "enum \fBEngineMode\fP { \fBmodeRead\fP, \fBmodeWrite\fP }" .br .RI "These are the modes the Persistence::Engine can work in\&. " .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBEngine\fP (std::iostream &stream, \fBEngineMode\fP mode, bool compress=true) \fBTHROWS\fP(PersistException)" .br .RI "Constructs a Persistence::Engine with the specified stream in the given mode\&. " .ti -1c .RI "void \fBsync\fP ()" .br .RI "This Flushes the buffers and closes the Persistence::Engine this must happen before the underlying stream is shut down\&. " .ti -1c .RI "bool \fBmore\fP ()" .br .RI "This says there are more objects to deserialize\&. " .ti -1c .RI "virtual \fB~Engine\fP ()" .br .ti -1c .RI "void \fBwrite\fP (const \fBBaseObject\fP &object) \fBTHROWS\fP(PersistException)" .br .RI "writes a \fBBaseObject\fP from a reference\&. " .ti -1c .RI "void \fBwrite\fP (const \fBBaseObject\fP *object) \fBTHROWS\fP(PersistException)" .br .RI "writes a \fBBaseObject\fP from a pointer\&. " .ti -1c .RI "void \fBwrite\fP (\fBint8\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (\fBuint8\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (\fBint16\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (\fBuint16\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (\fBint32\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (\fBuint32\fP i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (float i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (double i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (const \fBString\fP &str) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwrite\fP (const std::string &str) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBwriteBinary\fP (const \fBuint8\fP *data, const \fBuint32\fP size) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBBaseObject\fP &object) \fBTHROWS\fP(PersistException)" .br .RI "reads a \fBBaseObject\fP into a reference overwriting the object\&. " .ti -1c .RI "void \fBread\fP (\fBBaseObject\fP *&object) \fBTHROWS\fP(PersistException)" .br .RI "reads a \fBBaseObject\fP into a pointer allocating memory for the object if necessary\&. " .ti -1c .RI "void \fBread\fP (\fBint8\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBuint8\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBint16\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBuint16\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBint32\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBuint32\fP &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (float &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (double &i) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (\fBString\fP &str) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBread\fP (std::string &str) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "void \fBreadBinary\fP (\fBuint8\fP *data, \fBuint32\fP size) \fBTHROWS\fP(PersistException)" .br .in -1c .SS "Related Functions" (Note that these are not member functions\&.) .in +1c .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBBaseObject\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBBaseObject\fP *&ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBBaseObject\fP const &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBBaseObject\fP const *ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBint8\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBint8\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBuint8\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBuint8\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBint16\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBint16\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBuint16\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBuint16\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBint32\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBint32\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBuint32\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBuint32\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, float &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, float ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, double &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, double ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, \fBString\fP &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, \fBString\fP ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, std::string &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, std::string ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, bool &ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "\fB__EXPORT\fP \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, bool ob) \fBTHROWS\fP(PersistException)" .br .ti -1c .RI "template \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, typename std::vector< T > const &ob) \fBTHROWS\fP(PersistException)" .br .RI "The following are templated classes\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, typename std::vector< T > &ob) \fBTHROWS\fP(PersistException)" .br .RI "deserialize a vector of deserializable content from an engine\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, typename std::deque< T > const &ob) \fBTHROWS\fP(PersistException)" .br .RI "serialize a deque of some serializable content to the engine " .ti -1c .RI "template \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, typename std::deque< T > &ob) \fBTHROWS\fP(PersistException)" .br .RI "deserialize a deque of deserializable content from an engine\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, typename std::map< Key, Value > const &ob) \fBTHROWS\fP(PersistException)" .br .RI "serialize a map with keys/values which both are serializeable to an engine\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, typename std::map< Key, Value > &ob) \fBTHROWS\fP(PersistException)" .br .RI "deserialize a map with keys/values which both are serializeable from an engine\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator<<\fP (\fBEngine\fP &ar, std::pair< x, y > &ob) \fBTHROWS\fP(PersistException)" .br .RI "serialize a pair of some serializable content to the engine\&. " .ti -1c .RI "template \fBEngine\fP & \fBoperator>>\fP (\fBEngine\fP &ar, std::pair< x, y > &ob) \fBTHROWS\fP(PersistException)" .br .RI "deserialize a pair of some serializable content to the engine\&. " .in -1c .SH "Detailed Description" .PP \fBEngine\fP\&. 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\&. .PP \fBAuthor\fP .RS 4 Daniel Silverstone .RE .PP stream serialization of persistent classes\&. .SH "Member Enumeration Documentation" .PP .SS "enum \fBost::Engine::EngineMode\fP" .PP These are the modes the Persistence::Engine can work in\&. .PP \fBEnumerator\fP .in +1c .TP \fB\fImodeRead \fP\fP .TP \fB\fImodeWrite \fP\fP .SH "Constructor & Destructor Documentation" .PP .SS "ost::Engine::Engine (std::iostream & stream, \fBEngineMode\fP mode, bool compress = \fCtrue\fP)" .PP 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\&. If built using zlib compress can be used to enable compression .SS "virtual ost::Engine::~Engine ()\fC [virtual]\fP" .SH "Member Function Documentation" .PP .SS "bool ost::Engine::more ()" .PP This says there are more objects to deserialize\&. .SS "void ost::Engine::read (\fBBaseObject\fP & object)" .PP reads a \fBBaseObject\fP into a reference overwriting the object\&. .SS "void ost::Engine::read (\fBBaseObject\fP *& object)" .PP reads a \fBBaseObject\fP into a pointer allocating memory for the object if necessary\&. .SS "void ost::Engine::read (double & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (float & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (\fBint16\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (\fBint32\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (\fBint8\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (std::string & str)" .SS "void ost::Engine::read (\fBString\fP & str)" .SS "void ost::Engine::read (\fBuint16\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (\fBuint32\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::read (\fBuint8\fP & i)\fC [inline]\fP" .PP References CCXX_ENGINEREAD_REF\&. .SS "void ost::Engine::readBinary (\fBuint8\fP * data, \fBuint32\fP size)" .SS "void ost::Engine::sync ()" .PP This Flushes the buffers and closes the Persistence::Engine this must happen before the underlying stream is shut down\&. .SS "void ost::Engine::write (const \fBBaseObject\fP & object)\fC [inline]\fP" .PP writes a \fBBaseObject\fP from a reference\&. .SS "void ost::Engine::write (const \fBBaseObject\fP * object)" .PP writes a \fBBaseObject\fP from a pointer\&. .SS "void ost::Engine::write (const std::string & str)" .SS "void ost::Engine::write (const \fBString\fP & str)" .SS "void ost::Engine::write (double i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (float i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBint16\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBint32\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBint8\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBuint16\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBuint32\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::write (\fBuint8\fP i)\fC [inline]\fP" .PP References CCXX_ENGINEWRITE_REF\&. .SS "void ost::Engine::writeBinary (const \fBuint8\fP * data, const \fBuint32\fP size)" .SH "Friends And Related Function Documentation" .PP .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBBaseObject\fP const & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBBaseObject\fP const * ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, bool ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, double ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, float ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBint16\fP ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBint32\fP ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBint8\fP ob)\fC [related]\fP" .SS "template \fBEngine\fP & operator<< (\fBEngine\fP & ar, std::pair< x, y > & ob)\fC [related]\fP" .PP serialize a pair of some serializable content to the engine\&. .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, std::string ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBString\fP ob)\fC [related]\fP" .SS "template \fBEngine\fP & operator<< (\fBEngine\fP & ar, typename std::deque< T > const & ob)\fC [related]\fP" .PP serialize a deque of some serializable content to the engine .SS "template \fBEngine\fP & operator<< (\fBEngine\fP & ar, typename std::map< Key, Value > const & ob)\fC [related]\fP" .PP serialize a map with keys/values which both are serializeable to an engine\&. .SS "template \fBEngine\fP & operator<< (\fBEngine\fP & ar, typename std::vector< T > const & ob)\fC [related]\fP" .PP The following are templated classes\&. serialize a vector of some serializable content to the engine .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBuint16\fP ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBuint32\fP ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator<< (\fBEngine\fP & ar, \fBuint8\fP ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBBaseObject\fP & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBBaseObject\fP *& ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, bool & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, double & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, float & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBint16\fP & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBint32\fP & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBint8\fP & ob)\fC [related]\fP" .SS "template \fBEngine\fP & operator>> (\fBEngine\fP & ar, std::pair< x, y > & ob)\fC [related]\fP" .PP deserialize a pair of some serializable content to the engine\&. .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, std::string & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBString\fP & ob)\fC [related]\fP" .SS "template \fBEngine\fP & operator>> (\fBEngine\fP & ar, typename std::deque< T > & ob)\fC [related]\fP" .PP deserialize a deque of deserializable content from an engine\&. .SS "template \fBEngine\fP & operator>> (\fBEngine\fP & ar, typename std::map< Key, Value > & ob)\fC [related]\fP" .PP deserialize a map with keys/values which both are serializeable from an engine\&. .SS "template \fBEngine\fP & operator>> (\fBEngine\fP & ar, typename std::vector< T > & ob)\fC [related]\fP" .PP deserialize a vector of deserializable content from an engine\&. .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBuint16\fP & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBuint32\fP & ob)\fC [related]\fP" .SS "\fB__EXPORT\fP \fBEngine\fP & operator>> (\fBEngine\fP & ar, \fBuint8\fP & ob)\fC [related]\fP" .SH "Author" .PP Generated automatically by Doxygen for GNU CommonC++ from the source code\&.