BALL
1.4.79
|
Classes | |
class | BALL::Client |
class | BALL::Client::InvalidClient |
class | BALL::Client::NoPersistentObject |
class | BALL::MolecularInformation |
class | BALL::MoleculeObjectCreator |
class | BALL::PersistenceManager |
class | BALL::PersistentObject |
class | BALL::TextPersistenceManager |
class | BALL::XDRPersistenceManager |
Enumerations | |
enum | BALL::Client::Command { BALL::Client::COMMAND__UNKOWN = 0, BALL::Client::COMMAND__SEND_OBJECT = 1, BALL::Client::NUMBER_OF_COMMANDS } |
Ball provides support for the serialization and deserialization of objects and their platform-independent storage.
All persistent objects have to be derived from PersistentObject. The management, serialization, and deserialization is performed by the PersistenceManager class. A persistence manager possess an input stream and an output stream ( persistent streams ). It can write objects to the output stream, thereby converting them to a portable format and serializing all dependend objects, too. It can also read objects from the input stream, create the corresponding objects dynamically and demangle pointers and references.
There are two main problems related with this trivial persistence concept:
Command enums for the Client and Server. These enums specify the commands the server is able to understand (at the moment).
Enumerator | |
---|---|
COMMAND__UNKOWN |
unknown command. |
COMMAND__SEND_OBJECT |
sent command. This command will be used for indicating a new object that is about to be received |
NUMBER_OF_COMMANDS |
next free command. |
Type. This types are possible.
Enumerator | |
---|---|
TYPE__UNKNOWN |
Unkown type. This value will be set in clear. |
TYPE__SYSTEM |
System type. |
TYPE__PROTEIN |
Protein type. |
TYPE__MOLECULE |
Molecule type. |
TYPE__CHAIN |
Chain type. |
TYPE__FRAGMENT |
Fragment type. |
TYPE__RESIDUE |
Residue type. |
TYPE__SECONDARY_STRUCTURE |
SecondaryStructure type. |
TYPE__ATOM |
Atom type. |
TYPE__BOND |
Bond type. |
Definition at line 32 of file molecularInformation.h.