persistence/persistent_foursome.hpp
1: #ifndef STLPLUS_PERSISTENT_FOURSOME
2: #define STLPLUS_PERSISTENT_FOURSOME
3: ////////////////////////////////////////////////////////////////////////////////
4:
5: // Author: Andy Rushton
6: // Copyright: (c) Southampton University 1999-2004
7: // (c) Andy Rushton 2004-2008
8: // License: BSD License, see ../docs/license.html
9:
10: // Persistence of STL foursome
11:
12: ////////////////////////////////////////////////////////////////////////////////
13: #include "persistence_fixes.hpp"
14: #include "persistent_contexts.hpp"
15: #include "foursome.hpp"
16:
17: ////////////////////////////////////////////////////////////////////////////////
18:
19: namespace stlplus
20: {
21:
22: template<typename T1, typename T2, typename T3, typename T4, typename D1, typename D2, typename D3, typename D4>
23: void dump_foursome(dump_context&, const stlplus::foursome<T1,T2,T3,T4>& data,
24: D1 dump_fn1, D2 dump_fn2, D3 dump_fn3, D4 dump_fn4)
25: throw(persistent_dump_failed);
26:
27: template<typename T1, typename T2, typename T3, typename T4, typename R1, typename R2, typename R3, typename R4>
28: void restore_foursome(restore_context&, stlplus::foursome<T1,T2,T3,T4>& data,
29: R1 restore_fn1, R2 restore_fn2, R3 restore_fn3, R4 restore_fn4)
30: throw(persistent_restore_failed);
31:
32: } // end namespace stlplus
33:
34: ////////////////////////////////////////////////////////////////////////////////
35: #include "persistent_foursome.tpp"
36: #endif