Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

ost::BaseObject Class Reference

BaseObject Base class for classes that will be persistent. More...

#include <persist.h>

List of all members.

Public Methods

 BaseObject ()
 This constructor is used in serialisation processes. More...

virtual ~BaseObject ()
 Default destructor. More...

virtual const char* getPersistenceID () const
 This returns the ID of the persistent object (Its type). More...

virtual bool write (Engine &archive) const
 This method is used to write to the Persistence::Engine It is not equivalent to the << operator as it writes only the data and not the object type etc. More...

virtual bool read (Engine &archive)
 This method is used to read from a Persistence::Engine It is not equivalent to the >> operator as it does no typesafety or anything. More...


Detailed Description

BaseObject Base class for classes that will be persistent.

This object is the base for all Persistent data which is not natively serialised by the Persistence::Engine

It registers itself with the Persistence::TypeManager using a global constructor function. A matching deregister call is made in a global destructor, to allow DLL's to use the Persistence::Engine in a main executable.

Persistable objects must never maintain bad pointers. If a pointer doesn't point to something valid, it must be NULL. This is so the persistence engine knows whether to allocate memory for an object or whether the memory has been pre-allocated.

Author:
Daniel Silverstone


Constructor & Destructor Documentation

ost::BaseObject::BaseObject ( )
 

This constructor is used in serialisation processes.

It is called in CreateNewInstance in order to create an instance of the class to have Read() called on it.

ost::BaseObject::~BaseObject ( ) [virtual]
 

Default destructor.


Member Function Documentation

const char * ost::BaseObject::getPersistenceID ( ) const [virtual]
 

This returns the ID of the persistent object (Its type).

bool ost::BaseObject::read ( Engine & archive ) [virtual]
 

This method is used to read from a Persistence::Engine It is not equivalent to the >> operator as it does no typesafety or anything.

bool ost::BaseObject::write ( Engine & archive ) const [virtual]
 

This method is used to write to the Persistence::Engine It is not equivalent to the << operator as it writes only the data and not the object type etc.


The documentation for this class was generated from the following file:
Generated at Fri May 30 14:51:02 2008 for GNU CommonC++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001