]> Dogcows Code - chaz/yoink/blob - src/stlplus/persistence/persistent.hpp
testing new non-autotools build system
[chaz/yoink] / src / stlplus / persistence / persistent.hpp
1 #ifndef STLPLUS_PERSISTENT
2 #define STLPLUS_PERSISTENT
3 ////////////////////////////////////////////////////////////////////////////////
4
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
9
10 // Interface class inherited by classes using the interface approach to polymorphism
11
12 ////////////////////////////////////////////////////////////////////////////////
13
14 #include "persistence_fixes.hpp"
15 #include "persistent_exceptions.hpp"
16
17 ////////////////////////////////////////////////////////////////////////////////
18
19 namespace stlplus
20 {
21
22 class dump_context;
23 class restore_context;
24
25 class persistent
26 {
27 public:
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) {}
32 };
33
34 } // end namespace stlplus
35
36 ////////////////////////////////////////////////////////////////////////////////
37 #endif
This page took 0.034009 seconds and 4 git commands to generate.