Types of Streams
At its lowest level, the streams architecture handles streams of various character types, such as ASCII, 8-bit binary, wide character, and Unicode. The next level handles the streaming of data. Data in this case means C++ primitive types such as int. The highest level handles object serialization.
Object serialization differs from other types of data streaming in that it must preserve not only the data, but relationships between parts of the data. These relationships include:
Polymorphic typing, guaranteeing that when an object of a particular type is streamed, it is correctly set to the same type when restored
Object identity, guaranteeing that references between objects are properly maintained
The streams architecture supplies macros for building serialization capability into your classes, and for serializing objects over which you have no control, such as third-party components.
For a detailed description of the Rogue Wave® streams architecture, see the Advanced Tools Module User’s Guide. For concrete examples of how to use XML streams, see Chapters 3 through 6 in this manual.