1 #ifndef STLPLUS_PERSISTENT
2 #define STLPLUS_PERSISTENT
3 ////////////////////////////////////////////////////////////////////////////////
5 // Author: Andy Rushton
6 // Copyright: (c) Southampton University 1999-2004
7 // (c) Andy Rushton 2004-2009
8 // License: BSD License, see ../docs/license.html
10 // Interface class inherited by classes using the interface approach to polymorphism
12 ////////////////////////////////////////////////////////////////////////////////
14 #include "persistence_fixes.hpp"
15 #include "persistent_exceptions.hpp"
17 ////////////////////////////////////////////////////////////////////////////////
23 class restore_context
;
28 virtual void dump(dump_context
&) const throw(persistent_dump_failed
) = 0;
29 virtual void restore(restore_context
&) throw(persistent_restore_failed
) = 0;
30 virtual persistent
* clone(void) const = 0;
31 virtual ~persistent(void) {}
34 } // end namespace stlplus
36 ////////////////////////////////////////////////////////////////////////////////