Toggle main menu visibility
Loading...
Searching...
No Matches
spatial.hpp
Go to the documentation of this file.
1
// Copyright (c) 2015-2018, CNRS
2
// Authors: Justin Carpentier <jcarpent@laas.fr>
3
4
#ifndef __multicontact_api_serialization_spatial_hpp__
5
#define __multicontact_api_serialization_spatial_hpp__
6
7
#include <boost/serialization/split_free.hpp>
8
#include <boost/serialization/vector.hpp>
9
#include <pinocchio/spatial/force.hpp>
10
#include <pinocchio/spatial/se3.hpp>
11
12
namespace
boost
{
13
14
namespace
serialization
{
15
16
template
<
class
Archive,
typename
_Scalar,
int
_Options>
17
void
save
(Archive& ar,
const
pinocchio::SE3Tpl<_Scalar, _Options>& M,
18
const
unsigned
int
/*version*/
) {
19
ar& make_nvp(
"translation"
, make_array(M.translation().data(), 3));
20
ar& make_nvp(
"rotation"
, make_array(M.rotation().data(), 9));
21
}
22
23
template
<
class
Archive,
typename
_Scalar,
int
_Options>
24
void
load
(Archive& ar, pinocchio::SE3Tpl<_Scalar, _Options>& M,
25
const
unsigned
int
/*version*/
) {
26
ar >> make_nvp(
"translation"
, make_array(M.translation().data(), 3));
27
ar >> make_nvp(
"rotation"
, make_array(M.rotation().data(), 9));
28
}
29
30
template
<
class
Archive,
typename
_Scalar,
int
_Options>
31
void
serialize
(Archive& ar, pinocchio::SE3Tpl<_Scalar, _Options>& M,
32
const
unsigned
int
version) {
33
split_free(ar, M, version);
34
}
35
36
template
<
class
Archive,
typename
_Scalar,
int
_Options>
37
void
save
(Archive& ar,
const
pinocchio::ForceTpl<_Scalar, _Options>& f,
38
const
unsigned
int
/*version*/
) {
39
ar& make_nvp(
"linear"
, make_array(f.linear().data(), 3));
40
ar& make_nvp(
"angular"
, make_array(f.angular().data(), 3));
41
}
42
43
template
<
class
Archive,
typename
_Scalar,
int
_Options>
44
void
load
(Archive& ar, pinocchio::ForceTpl<_Scalar, _Options>& f,
45
const
unsigned
int
/*version*/
) {
46
ar >> make_nvp(
"linear"
, make_array(f.linear().data(), 3));
47
ar >> make_nvp(
"angular"
, make_array(f.angular().data(), 3));
48
}
49
50
template
<
class
Archive,
typename
_Scalar,
int
_Options>
51
void
serialize
(Archive& ar, pinocchio::ForceTpl<_Scalar, _Options>& f,
52
const
unsigned
int
version) {
53
split_free(ar, f, version);
54
}
55
56
}
// namespace serialization
57
58
}
// namespace boost
59
60
#endif
// ifndef __multicontact_api_serialization_spatial_hpp__
boost::serialization
boost::serialization::load
void load(Archive &ar, Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > &m, const unsigned int)
boost::serialization::save
void save(Archive &ar, const Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > &m, const unsigned int)
boost::serialization::serialize
void serialize(Archive &ar, Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > &m, const unsigned int version)
boost
include
multicontact-api
serialization
spatial.hpp
Generated by
1.17.0