28 #include <boost/serialization/collections_load_imp.hpp> 37 namespace serialization
41 template <
class Archive,
class U>
42 inline void save(Archive& archive,
const QVector<U>& vector,
const uint version)
45 boost::serialization::stl::save_collection< Archive, QVector<U> >(archive, vector);
49 template <
class Archive,
class U>
50 inline void load(Archive& archive, QVector<U>& vector,
const uint version)
53 boost::serialization::stl::load_collection<
56 boost::serialization::stl::archive_input_seq<Archive, QVector<U> >,
57 boost::serialization::stl::no_reserve_imp< QVector<U> > >(archive, vector);
60 template<
class Archive,
class U >
61 inline void serialize(Archive& archive, QVector<U>& vector,
const uint version)
63 boost::serialization::split_free(archive, vector, version);
68 template <
class Archive,
class U>
69 inline void save(Archive& archive,
const QVector<QVector<U> >& table,
const uint version)
72 unsigned int count = table.count();
74 archive << boost::serialization::make_nvp(
"count", count);
76 for (
unsigned int i = 0; i < count; ++i)
77 archive << boost::serialization::make_nvp(
"vector", table.at(i));
81 template <
class Archive,
class U>
82 inline void load(Archive& archive, QVector<QVector<U> >& table,
const uint version)
85 unsigned int count = 0;
87 archive >> boost::serialization::make_nvp(
"count", count);
93 for (
unsigned int i = 0; i < count; ++i)
95 archive >> boost::serialization::make_nvp(
"vector", vector);
100 template<
class Archive,
class U >
101 inline void serialize(Archive& archive, QVector<QVector<U> >& table,
const uint version)
103 boost::serialization::split_free(archive, table, version);
109 BOOST_SERIALIZATION_COLLECTION_TRAITS(QVector)
#define MC_UNUSED(a)
Helper macro to avoid compiler warning about unused function parameters.