#include <BALL/CONCEPT/textPersistenceManager.h>
Public Member Functions | |
Constructors and Destructors | |
TextPersistenceManager () | |
TextPersistenceManager (std::istream &is) | |
TextPersistenceManager (std::ostream &os) | |
TextPersistenceManager (std::istream &is, std::ostream &os) | |
Layer 0 methods | |
virtual void | writeHeader (const char *type_name, const char *name, LongSize ptr) |
virtual bool | checkHeader (const char *type_name, const char *name, LongSize &ptr) |
virtual void | writeTrailer (const char *name=0) |
virtual bool | checkTrailer (const char *name=0) |
virtual void | writeStreamHeader () |
virtual void | writeStreamTrailer () |
virtual bool | checkStreamHeader () |
virtual bool | checkStreamTrailer () |
virtual bool | getObjectHeader (String &type_name, LongSize &ptr) |
virtual void | writeName (const char *name) |
virtual bool | checkName (const char *name) |
virtual void | writeStorableHeader (const char *type_name, const char *name) |
virtual bool | checkStorableHeader (const char *type_name, const char *name) |
virtual void | writePrimitiveHeader (const char *type_name, const char *name) |
virtual bool | checkPrimitiveHeader (const char *type_name, const char *name) |
virtual void | writeStorableTrailer () |
virtual bool | checkStorableTrailer () |
virtual void | writePrimitiveTrailer () |
virtual bool | checkPrimitiveTrailer () |
virtual void | writeObjectPointerHeader (const char *type_name, const char *name) |
virtual bool | checkObjectPointerHeader (const char *type_name, const char *name) |
virtual void | writeObjectReferenceHeader (const char *type_name, const char *name) |
virtual bool | checkObjectReferenceHeader (const char *type_name, const char *name) |
virtual void | writeObjectPointerArrayHeader (const char *type_name, const char *name, Size size) |
virtual bool | checkObjectPointerArrayHeader (const char *type_name, const char *name, Size &size) |
virtual void | writeObjectPointerArrayTrailer () |
virtual bool | checkObjectPointerArrayTrailer () |
Put methods for primitive data types. | |
virtual void | put (const char c) |
virtual void | put (const Byte c) |
virtual void | put (const Index s) |
virtual void | put (const Size s) |
virtual void | put (const bool b) |
virtual void | put (const Real f) |
virtual void | put (const DoubleReal d) |
virtual void | put (const string &s) |
virtual void | put (const LongSize p) |
Get methods for primitive data types. | |
virtual void | get (char &c) |
virtual void | get (Byte &b) |
virtual void | get (Index &i) |
virtual void | get (Size &s) |
virtual void | get (bool &b) |
virtual void | get (Real &f) |
virtual void | get (DoubleReal &d) |
virtual void | get (string &s) |
virtual void | get (LongSize &p) |
Protected Member Functions | |
virtual bool | expect (const String &value) |
virtual const char * | indent () |
Private Attributes | |
Size | indent_depth_ |
Static Private Attributes | |
static const char * | INDENT_STRING |
static const Size | MAX_INDENT |
Text-format-based persistence manager. This class implements a persistnece manager that reads and writes its objects in a human-readable text format. This is slow and objects get huge , but the format is clear and comprehensible - the ideal format to debug persistence-related programs. For production use, the XDRPersistenceManager is preferred.
BALL::TextPersistenceManager::TextPersistenceManager | ( | ) |
Default constructor. Initializes just an internal variable.
BALL::TextPersistenceManager::TextPersistenceManager | ( | std::istream & | is | ) |
Detailed constructor with an input stream.
BALL::TextPersistenceManager::TextPersistenceManager | ( | std::ostream & | os | ) |
Detailed constructor with an output stream.
BALL::TextPersistenceManager::TextPersistenceManager | ( | std::istream & | is, | |
std::ostream & | os | |||
) |
Detailed constructor with an input stream and an output stream.
virtual bool BALL::TextPersistenceManager::checkHeader | ( | const char * | type_name, | |
const char * | name, | |||
LongSize & | ptr | |||
) | [virtual] |
Check for an an object header.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkName | ( | const char * | name | ) | [virtual] |
Check for variable/member name.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkObjectPointerArrayHeader | ( | const char * | type_name, | |
const char * | name, | |||
Size & | size | |||
) | [virtual] |
Check for header for an array of pointers to PersistentObjects.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkObjectPointerArrayTrailer | ( | ) | [virtual] |
Check for trailer for an array of pointers to PersistentObjects.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkObjectPointerHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Check for header for a pointer to a PersistentObject.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkObjectReferenceHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Check for header for a reference to a PersistentObject.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkPrimitiveHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Check for a type header and name for a primitive type.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkPrimitiveTrailer | ( | ) | [virtual] |
Check the trailer of a primitive type.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkStorableHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Check for storable object header.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkStorableTrailer | ( | ) | [virtual] |
Check for storable object trailer.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkStreamHeader | ( | ) | [virtual] |
Check for the start marker in the input stream.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkStreamTrailer | ( | ) | [virtual] |
Check for the end marker in the output stream.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::checkTrailer | ( | const char * | name = 0 |
) | [virtual] |
Check an object trailer. This method checks the trailer of an object.
name | the name of the object |
Implements BALL::PersistenceManager.
Check whether the streams contains a given string. This method reads the next string from the persistence manager's istream
and compares it to the value
given. If both strings are equal, true is returned.
value | the expected string |
virtual void BALL::TextPersistenceManager::get | ( | LongSize & | p | ) | [virtual] |
Read a pointer from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | string & | s | ) | [virtual] |
Read a string from the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | DoubleReal & | d | ) | [virtual] |
Read a double precision floating point number from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | Real & | f | ) | [virtual] |
Read a single precision floating point number from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | bool & | b | ) | [virtual] |
Read a boolean value from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | Size & | s | ) | [virtual] |
Read a Size or a Position from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | Index & | i | ) | [virtual] |
Read an Index from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | Byte & | b | ) | [virtual] |
Read an unsigned char from the input stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::get | ( | char & | c | ) | [virtual] |
Read a signed char from the input stream.
Implements BALL::PersistenceManager.
virtual bool BALL::TextPersistenceManager::getObjectHeader | ( | String & | type_name, | |
LongSize & | ptr | |||
) | [virtual] |
Get an (unknown) object header.
Implements BALL::PersistenceManager.
virtual const char* BALL::TextPersistenceManager::indent | ( | ) | [protected, virtual] |
Return a string for the current indentation level.
virtual void BALL::TextPersistenceManager::put | ( | const LongSize | p | ) | [virtual] |
Write a 64-bit pointer to the output.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const string & | s | ) | [virtual] |
Write a string to the output.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const DoubleReal | d | ) | [virtual] |
Write a double precision floating point number to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const Real | f | ) | [virtual] |
Write a single precision floating point number to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const bool | b | ) | [virtual] |
Write a boolean value to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const Size | s | ) | [virtual] |
Write a Size or a Position to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const Index | s | ) | [virtual] |
Write an Index to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const Byte | c | ) | [virtual] |
Write an unsigned char to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::put | ( | const char | c | ) | [virtual] |
Write a signed char to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeHeader | ( | const char * | type_name, | |
const char * | name, | |||
LongSize | ptr | |||
) | [virtual] |
Write an object header. This method write an object header. It starts with the current number of spaces needed for a correct indentation. If name
is a null pointer, the object is a base object of the current object. This method then writes the string BASEOBJECT
. If name
is a name or an empty string, OBJECT
is written.
type_name
is written, followed by a blank, the character "@" to indicate an address and then the object's this
pointer in decimal format. The last string in the line is either "-" (for a base object or an object without name) or the object's name
. BASEOBJECT BALL::Composite @ 1145254238 -
Example for a member object: BASEOBJECT BALL::Bond @ 2334208924 bond_
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeName | ( | const char * | name | ) | [virtual] |
Write a variable/member name.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeObjectPointerArrayHeader | ( | const char * | type_name, | |
const char * | name, | |||
Size | size | |||
) | [virtual] |
Write header for an array of pointers to PersistentObjects.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeObjectPointerArrayTrailer | ( | ) | [virtual] |
Write trailer for an array of pointers to PersistentObjects.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeObjectPointerHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Write header for a pointer to a PersistentObject.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeObjectReferenceHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Write header for a reference to a PersistentObject.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writePrimitiveHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Write type header and name for a primitive type.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writePrimitiveTrailer | ( | ) | [virtual] |
Write the trailer for a primitive type.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeStorableHeader | ( | const char * | type_name, | |
const char * | name | |||
) | [virtual] |
Write storable object header.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeStorableTrailer | ( | ) | [virtual] |
Write storable object trailer.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeStreamHeader | ( | ) | [virtual] |
Write a start marker to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeStreamTrailer | ( | ) | [virtual] |
Write a end marker to the output stream.
Implements BALL::PersistenceManager.
virtual void BALL::TextPersistenceManager::writeTrailer | ( | const char * | name = 0 |
) | [virtual] |
Write the trailer for an object.
name | the name of the object |
Implements BALL::PersistenceManager.
const char* BALL::TextPersistenceManager::INDENT_STRING [static, private] |
const Size BALL::TextPersistenceManager::MAX_INDENT [static, private] |