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