// // Created by martin on 9/17/18. // #ifndef LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H #define LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H #include <boost/serialization/base_object.hpp> #include <boost/archive/text_oarchive.hpp> #include <boost/archive/text_iarchive.hpp> #include <boost/serialization/export.hpp> #include "ConnectionFunctionIdentity.h" #include "ConnectionFunctionGeneralSerialization.h" BOOST_CLASS_EXPORT_KEY(ConnectionFunctionIdentity); struct ConnectionFunctionIdentity :: access { template <class Archive> static void serialize(Archive &ar, ConnectionFunctionIdentity& c, const unsigned int version) { ar & boost::serialization::base_object<ConnectionFunctionGeneral>(c); ar & c.is_unitary; ar & c.param_idx; } }; namespace boost { namespace serialization { /** * Serialization function * @tparam Archive Boost library template * @param ar Boost parameter - filled automatically during serialization! * @param n ConnectionFunctionIdentity instance * @param version Boost parameter - filled automatically during serialization! */ template<class Archive> void serialize(Archive & ar, ConnectionFunctionIdentity& c, const unsigned int version) { ConnectionFunctionIdentity::access::serialize(ar, c, version); } } // namespace serialization } // namespace boost #endif //LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H