persist.h(3cc)

persist.h3cc

Persistence library classes.

Usage

#include <cc++/config.h>
#include <cc++/persist.h>
#include <iostream>
#include <string>
#include <vector>
#include <deque>
#include <map>

Compounds

class BaseObject
BaseObject Base class for classes that will be persistent. class Engine
Engine stream serialization of persistent classes. class Exception
If problems happen which are fatal - expect one of these thrown at you. class PersistException
class Registration
This manages a registration to the typemanager - attempting to remove problems with the optimisers. class TypeManager
This class manages the types for generation of the persistent objects. Type manager for persistence engine.

Defines

#define NO_COMPRESSION
#define DECLARE_PERSISTENCE(ClassType)
#define IMPLEMENT_PERSISTENCE(ClassType, FullyQualifiedName)
#define CCXX_ENGINEWRITE_REF(valref) writeBinary((const uint8*)&valref,sizeof(valref))
#define CCXX_ENGINEREAD_REF(valref) readBinary((uint8*)&valref,sizeof(valref))

Typedefs

typedef BaseObject *(* NewBaseObjectFunction )(void)

Functions

BaseObject &ob THROWS (Engine::Exception)

Detailed description

Persistence library classes.

Define documentation

#define CCXX_ENGINEREAD_REF(valref) readBinary((uint8*)&valref,sizeof(valref))

#define CCXX_ENGINEWRITE_REF(valref) writeBinary((const uint8*)&valref,sizeof(valref))

#define DECLARE_PERSISTENCE(ClassType)

Value:

public:                                                                  friend Engine& operator>>(Engine& ar, ClassType *&ob);                  friend Engine& operator<<(Engine& ar, ClassType const &ob);     friend BaseObject *createNew##ClassType();                              virtual const char* getPersistenceID() const;                           static TypeManager::Registration registrationFor##ClassType;

#define IMPLEMENT_PERSISTENCE(ClassType, FullyQualifiedName)

Value:

BaseObject *createNew##ClassType() { return new ClassType; }                  const char* ClassType::getPersistenceID() const {return FullyQualifiedName;}   Engine& operator>>(Engine& ar, ClassType &ob)                           { ar >> (BaseObject &) ob; return ar; }                                     Engine& operator>>(Engine& ar, ClassType *&ob)                                  { ar >> (BaseObject *&) ob; return ar; }                                    Engine& operator<<(Engine& ar, ClassType const &ob)                             { ar << (BaseObject const *)&ob; return ar; }                               TypeManager::Registration                                                           ClassType::registrationFor##ClassType(FullyQualifiedName,                                                           createNew##ClassType);

#define NO_COMPRESSION

Typedef documentation

typedef class BaseObject*(* NewBaseObjectFunction)(void)

Function documentation

bool ob THROWS (Engine::Exception)

Author

Generated automatically by Doxygen for CommonC++ from the source code.

From libcommoncpp2-dev 1.0.13-5 in Debian 3.1 (Sarge). Parsed by carta from the page's man source.