20#if GTSAM_ENABLE_BOOST_SERIALIZATION
25#include <boost/serialization/array.hpp>
26#include <boost/serialization/nvp.hpp>
27#include <boost/serialization/split_free.hpp>
30namespace serialization {
33template <
class Archive>
34void save(Archive& ar,
const gtsam::Vector& v,
unsigned int ) {
35 const size_t size = v.size();
36 ar << BOOST_SERIALIZATION_NVP(size);
37 ar << make_nvp(
"data", make_array(v.data(), v.size()));
40template <
class Archive>
41void load(Archive& ar, gtsam::Vector& v,
unsigned int ) {
43 ar >> BOOST_SERIALIZATION_NVP(size);
45 ar >> make_nvp(
"data", make_array(v.data(), v.size()));
49template <
class Archive,
int D>
50void save(Archive& ar,
const Eigen::Matrix<double, D, 1>& v,
52 ar << make_nvp(
"data", make_array(v.data(), v.RowsAtCompileTime));
55template <
class Archive,
int D>
56void load(Archive& ar, Eigen::Matrix<double, D, 1>& v,
58 ar >> make_nvp(
"data", make_array(v.data(), v.RowsAtCompileTime));
64BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector)
65BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector2)
66BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector3)
67BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector6)
typedef and functions to augment Eigen's VectorXd
void save(const Matrix &A, const string &s, const string &filename)
save a matrix to file, which can be loaded by matlab
Definition Matrix.cpp:154