23#include <boost/serialization/array.hpp>
24#include <boost/serialization/nvp.hpp>
25#include <boost/serialization/split_free.hpp>
28namespace serialization {
31template <
class Archive>
32void save(Archive& ar,
const gtsam::Vector& v,
unsigned int ) {
33 const size_t size = v.size();
34 ar << BOOST_SERIALIZATION_NVP(size);
35 ar << make_nvp(
"data", make_array(v.data(), v.size()));
38template <
class Archive>
39void load(Archive& ar, gtsam::Vector& v,
unsigned int ) {
41 ar >> BOOST_SERIALIZATION_NVP(size);
43 ar >> make_nvp(
"data", make_array(v.data(), v.size()));
47template <
class Archive,
int D>
48void save(Archive& ar,
const Eigen::Matrix<double, D, 1>& v,
50 ar << make_nvp(
"data", make_array(v.data(), v.RowsAtCompileTime));
53template <
class Archive,
int D>
54void load(Archive& ar, Eigen::Matrix<double, D, 1>& v,
56 ar >> make_nvp(
"data", make_array(v.data(), v.RowsAtCompileTime));
62BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector)
63BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector2)
64BOOST_SERIALIZATION_SPLIT_FREE(gtsam::Vector3)
65BOOST_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:167