An object has one of four levels of persistence:
No persistence. There is no mechanism for storage and retrieval of the object.
Simple persistence. A level of persistence that provides storage and retrieval of individual objects to and from a stream or file. Simple persistence does not preserve pointer relationships among the persisted objects.
Isomorphic persistence. A level of persistence that preserves the pointer relationships among the persisted objects.
Polymorphic persistence. The highest level of persistence. Polymorphic persistence preserves pointer relationships among the persisted objects and allows the restoring process to restore an object without prior knowledge of that object's type.
The Essential Tools Module Reference Guide indicates the level of persistence for each class. This section provides information about each level of persistence through descriptions, examples, and procedures for designing your own persistent classes.
The Essential Tools Module provides input and output classes that let you save and restore objects. These classes are:
RWFile -- RWFile lets you save and restore objects to a file;
To keep our explanations simple, we'll refer to all of these input and output classes as streams. For a discussion of the trade-offs in using RWvostream and RWvistream versus RWFile, see Chapter 5 and Chapter 11.
For your convenience, all examples listed in this section are provided on disk in the directory buildspace\examples\tools. Each of the examples in this chapter has the name persist*.cpp.
©2004 Copyright Quovadx, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Quovadx, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.