src/serialization/se3.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2019 INRIA
3 //
4 
5 #ifndef __pinocchio_serialization_se3_hpp__
6 #define __pinocchio_serialization_se3_hpp__
7 
8 #include "pinocchio/spatial/se3.hpp"
9 #include "pinocchio/serialization/fwd.hpp"
10 
11 #include <boost/serialization/split_free.hpp>
12 #include <boost/serialization/vector.hpp>
13 
14 namespace boost
15 {
16  namespace serialization
17  {
18 
19  template <class Archive, typename Scalar, int Options>
20  void save(Archive & ar,
22  const unsigned int /*version*/)
23  {
24  ar & make_nvp("translation",make_array(M.translation().data(),3));
25  ar & make_nvp("rotation",make_array(M.rotation().data(),9));
26  }
27 
28  template <class Archive, typename Scalar, int Options>
29  void load(Archive & ar,
31  const unsigned int /*version*/)
32  {
33  ar >> make_nvp("translation",make_array(M.translation().data(),3));
34  ar >> make_nvp("rotation",make_array(M.rotation().data(),9));
35  }
36 
37  template <class Archive, typename Scalar, int Options>
38  void serialize(Archive & ar,
40  const unsigned int version)
41  {
42  split_free(ar,M,version);
43  }
44 
45  }
46 }
47 
48 #endif // ifndef __pinocchio_serialization_se3_hpp__
void save(Archive &ar, const Eigen::Matrix< Scalar, Rows, Cols, Options, MaxRows, MaxCols > &m, const unsigned int)
ConstLinearRef translation() const
Definition: se3-base.hpp:38
const nvp< typename pinocchio::container::aligned_vector< T >::vector_base > make_nvp(const char *name, pinocchio::container::aligned_vector< T > &t)
void load(Archive &ar, Eigen::Matrix< Scalar, Rows, Cols, Options, MaxRows, MaxCols > &m, const unsigned int)
void serialize(Archive &ar, pinocchio::container::aligned_vector< T > &v, const unsigned int version)
ConstAngularRef rotation() const
Definition: se3-base.hpp:37


pinocchio
Author(s):
autogenerated on Tue Jun 1 2021 02:45:04