5#ifndef __pinocchio_serialization_inertia_hpp__ 6#define __pinocchio_serialization_inertia_hpp__ 8#include "pinocchio/spatial/inertia.hpp" 9#include "pinocchio/serialization/fwd.hpp" 10#include "pinocchio/serialization/symmetric3.hpp" 12#include <boost/serialization/split_free.hpp> 13#include <boost/serialization/vector.hpp> 17 namespace serialization
20 template<
class Archive,
typename Scalar,
int Options>
23 const pinocchio::InertiaTpl<Scalar, Options> & I,
26 const Scalar mass = I.mass();
27 ar & make_nvp(
"mass", mass);
28 ar & make_nvp(
"lever", make_array(I.lever().data(), 3));
29 ar & make_nvp(
"inertia", I.inertia());
32 template<
class Archive,
typename Scalar,
int Options>
34 load(Archive & ar, pinocchio::InertiaTpl<Scalar, Options> & I,
const unsigned int )
36 ar >> make_nvp(
"mass", I.mass());
37 ar >> make_nvp(
"lever", make_array(I.lever().data(), 3));
38 ar >> make_nvp(
"inertia", I.inertia());
41 template<
class Archive,
typename Scalar,
int Options>
43 serialize(Archive & ar, pinocchio::InertiaTpl<Scalar, Options> & I,
const unsigned int version)
45 split_free(ar, I, version);