12 #ifndef DtSerialize_H_
13 #define DtSerialize_H_
95 #include <boost/preprocessor/stringize.hpp>
96 #include <boost/serialization/nvp.hpp>
102 namespace MAKBoost_1_63 {}
namespace boost = MAKBoost_1_63;
namespace MAKBoost_1_63
111 class binary_oarchive;
112 class binary_iarchive;
116 namespace serialization
123 #define DT_DECLARE_serialize_FUNCTIONS\
124 friend class boost::serialization::access;\
125 void serialize(boost::archive::xml_oarchive&, const unsigned int version = 0);\
126 void serialize(boost::archive::xml_iarchive&, const unsigned int version = 0);\
127 void serialize(boost::archive::binary_oarchive&, const unsigned int version = 0);\
128 void serialize(boost::archive::binary_iarchive&, const unsigned int version = 0);\
129 void serialize(boost::archive::text_oarchive&, const unsigned int version = 0);\
130 void serialize(boost::archive::text_iarchive&, const unsigned int version = 0);
132 #define DT_DECLARE_PORTABLE_serialize_FUNCTIONS\
133 friend class boost::serialization::access;\
134 void serialize(portable_binary_oarchive&, const unsigned int version = 0);\
135 void serialize(portable_binary_iarchive&, const unsigned int version = 0);
137 #define DT_DECLARE_ALL_serialize_FUNCTIONS\
138 friend class boost::serialization::access;\
139 void serialize(boost::archive::xml_oarchive&, const unsigned int version = 0);\
140 void serialize(boost::archive::xml_iarchive&, const unsigned int version = 0);\
141 void serialize(boost::archive::binary_oarchive&, const unsigned int version = 0);\
142 void serialize(boost::archive::binary_iarchive&, const unsigned int version = 0);\
143 void serialize(boost::archive::text_oarchive&, const unsigned int version = 0);\
144 void serialize(boost::archive::text_iarchive&, const unsigned int version = 0);\
145 void serialize(portable_binary_oarchive&, const unsigned int version = 0);\
146 void serialize(portable_binary_iarchive&, const unsigned int version = 0);
150 #define DT_SERIALIZE(NAME)\
151 boost::serialization::make_nvp(BOOST_PP_STRINGIZE(NAME),NAME)
156 #define DT_SERIALIZE_REMOVE_PREFIX(NAME,PREFIX_SIZE)\
157 boost::serialization::make_nvp(BOOST_PP_STRINGIZE(NAME) + PREFIX_SIZE,NAME)
161 #define DT_SERIALIZE_MEMBER(NAME) DT_SERIALIZE_REMOVE_PREFIX(NAME,2)
164 #define DT_SERIALIZE_BASE(BASE_CLASS) BOOST_SERIALIZATION_BASE_OBJECT_NVP(BASE_CLASS)
Definition: portable_binary_oarchive.hpp:77
Definition: portable_binary_iarchive.hpp:73