class c4_Storage
  Manager for persistent storage of view structures.

Public members
| c4_Storage (); Construct streaming-only storage object
| c4_Storage (c4_Strategy& strategy_, bool owned_ =false); Construct a storage using the specified strategy handler
| c4_Storage (const char* filename_, const char* description_); Construct a storage object for given file and format
| c4_Storage (const char* filename_, bool canModify_); Construct a storage object, keeping the current structure
| c4_Storage (const c4_Storage&); Copy constructor
| ~c4_Storage (); Destructor, usually closes file, but does not commit by default
c4_Storage& | operator= (const c4_Storage&); Assignment of storage implements reference semantics
void | AutoCommit (); Set storage up to always call Commit in the destructor
c4_RowRef | Contents () const; Give access to the stored data as a single row
c4_Strategy& | Strategy () const; Return the strategy object associated with this storage
c4_HandlerSeq& | RootTable () const; Return the root table entry
const char* | Description (const char* name_ =0); Return a description of the view structure (default is all)
bool | Commit (); Flush pending changes to file right now
bool | Rollback (); (Re)initialize for on-demand loading
c4_ViewRef | View (const char* name_); Get or set a named view in this storage object
c4_View | GetAs (const char* description_); Get a named view, redefining it to match the given structure
c4_View | Store (const char* name_, const c4_View& view_); Attach a view using specified name in this storage object
void | LoadFrom (c4_Stream& stream_); Load contents from the specified input stream
void | SaveTo (c4_Stream& stream_); Save contents to the specified output stream

Header file | "mk4.h" -- Dec 9, 1999