5#ifndef __pinocchio_serialization_joints_motion_subspace_hpp__ 6#define __pinocchio_serialization_joints_motion_subspace_hpp__ 8#include "pinocchio/serialization/fwd.hpp" 10#include <boost/serialization/split_free.hpp> 11#include <boost/serialization/vector.hpp> 15 namespace serialization
18 template<
class Archive,
typename Scalar,
int Options,
int axis>
21 pinocchio::JointMotionSubspaceRevoluteTpl<Scalar, Options, axis> & ,
26 template<
class Archive,
typename Scalar,
int Options,
int axis>
29 pinocchio::JointMotionSubspacePrismaticTpl<Scalar, Options, axis> & ,
34 template<
class Archive,
typename Scalar,
int Options,
int axis>
37 pinocchio::JointMotionSubspaceHelicalTpl<Scalar, Options, axis> & S,
40 ar & make_nvp(
"h", S.h());
43 template<
class Archive,
typename Scalar,
int Options>
46 pinocchio::JointMotionSubspaceSphericalTpl<Scalar, Options> & ,
51 template<
class Archive,
typename Scalar,
int Options>
54 pinocchio::JointMotionSubspaceTranslationTpl<Scalar, Options> & ,
59 template<
class Archive,
typename Scalar,
int Options>
62 pinocchio::JointMotionSubspaceIdentityTpl<Scalar, Options> & ,
67 template<
class Archive,
typename Scalar,
int Options>
70 pinocchio::JointMotionSubspaceRevoluteUnalignedTpl<Scalar, Options> & S,
73 ar & make_nvp(
"axis", S.axis());
76 template<
class Archive,
typename Scalar,
int Options>
79 pinocchio::JointMotionSubspacePrismaticUnalignedTpl<Scalar, Options> & S,
82 ar & make_nvp(
"axis", S.axis());
85 template<
class Archive,
typename Scalar,
int Options>
88 pinocchio::JointMotionSubspaceHelicalUnalignedTpl<Scalar, Options> & S,
91 ar & make_nvp(
"axis", S.axis());
92 ar & make_nvp(
"h", S.h());
95 template<
class Archive,
typename Scalar,
int Options>
98 pinocchio::JointMotionSubspaceUniversalTpl<Scalar, Options> & S,
101 ar & make_nvp(
"angularSubspace", S.angularSubspace());
104 template<
class Archive,
int Dim,
typename Scalar,
int Options,
int MaxDim>
107 pinocchio::JointMotionSubspaceTpl<Dim, Scalar, Options, MaxDim> & S,
110 ar & make_nvp(
"matrix", S.matrix());
113 template<
class Archive,
typename Scalar,
int Options,
int MaxDim>
116 pinocchio::ScaledJointMotionSubspaceTpl<Scalar, Options, MaxDim> & S,
119 ar & make_nvp(
"scaling", S.scaling());
120 ar & make_nvp(
"constraint", S.constraint());
123 template<
class Archive,
typename Scalar,
int Options>
126 pinocchio::JointMotionSubspacePlanarTpl<Scalar, Options> & ,
131 template<
class Archive,
typename Scalar,
int Options>
134 pinocchio::JointMotionSubspaceSphericalZYXTpl<Scalar, Options> & S,
137 ar & make_nvp(
"angularSubspace", S.angularSubspace());
140 template<
class Archive,
typename Scalar,
int Options>
143 pinocchio::JointMotionSubspaceEllipsoidTpl<Scalar, Options> & S,
146 ar & make_nvp(
"S", S.S);