joints-data.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2019-2020 INRIA
3 //
4 
5 #ifndef __pinocchio_serialization_joints_data_hpp__
6 #define __pinocchio_serialization_joints_data_hpp__
7 
8 namespace pinocchio
9 {
10  template<typename Scalar, int Options, template<typename S, int O> class JointCollectionTpl>
11  struct Serialize<JointDataCompositeTpl<Scalar, Options, JointCollectionTpl>>
12  {
13  template<typename Archive>
14  static void
16  {
18 
19  ar & make_nvp("joints", joint_data.joints);
20  ar & make_nvp("iMlast", joint_data.iMlast);
21  ar & make_nvp("pjMi", joint_data.pjMi);
22 
23  ar & make_nvp("S", joint_data.S);
24  ar & make_nvp("M", joint_data.M);
25  ar & make_nvp("v", joint_data.v);
26  ar & make_nvp("c", joint_data.c);
27 
28  ar & make_nvp("U", joint_data.U);
29  ar & make_nvp("Dinv", joint_data.Dinv);
30  ar & make_nvp("UDinv", joint_data.UDinv);
31  ar & make_nvp("StU", joint_data.StU);
32  }
33  };
34 } // namespace pinocchio
35 
36 namespace boost
37 {
38  namespace serialization
39  {
40 
41  // For some older version of gcc, we have to rely on an additional namespace
42  // to avoid ambiguous call to boost::serialization::serialize
43  namespace fix
44  {
45  template<class Archive, typename Derived>
46  void serialize(
47  Archive & ar,
49  const unsigned int /*version*/)
50  {
51  ar & make_nvp("joint_q", joint_data.joint_q());
52  ar & make_nvp("joint_v", joint_data.joint_v());
53 
54  ar & make_nvp("S", joint_data.S());
55  ar & make_nvp("M", joint_data.M());
56  ar & make_nvp("v", joint_data.v());
57  ar & make_nvp("c", joint_data.c());
58 
59  ar & make_nvp("U", joint_data.U());
60  ar & make_nvp("Dinv", joint_data.Dinv());
61  ar & make_nvp("UDinv", joint_data.UDinv());
62  ar & make_nvp("StU", joint_data.StU());
63  }
64 
65  template<
66  class Archive,
67  typename Scalar,
68  int Options,
69  template<typename, int> class JointCollection>
70  void serialize(
71  Archive & ar,
73  joint_data,
74  const unsigned int /*version*/)
75  {
76  ar & make_nvp("joint_q", joint_data.joint_q());
77  ar & make_nvp("joint_v", joint_data.joint_v());
78 
79  ar & make_nvp("S", joint_data.S());
80  }
81 
82  } // namespace fix
83 
84  template<class Archive, typename Scalar, int Options, int axis>
85  void serialize(
86  Archive & ar,
88  const unsigned int version)
89  {
92  }
93 
94  template<class Archive, typename Scalar, int Options, int axis>
95  void serialize(
96  Archive & ar,
98  const unsigned int version)
99  {
101  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
102  }
103 
104  template<class Archive, typename Scalar, int Options, int axis>
105  void serialize(
106  Archive & ar,
108  const unsigned int version)
109  {
111  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
112  }
113 
114  template<class Archive, typename Scalar, int Options, int axis>
115  void serialize(
116  Archive & ar,
118  const unsigned int version)
119  {
121  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
122  }
123 
124  template<class Archive, typename Scalar, int Options>
125  void serialize(
126  Archive & ar,
128  const unsigned int version)
129  {
131  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
132  }
133 
134  template<class Archive, typename Scalar, int Options>
135  void serialize(
136  Archive & ar,
138  const unsigned int version)
139  {
141  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
142  }
143 
144  template<class Archive, typename Scalar, int Options>
145  void serialize(
146  Archive & ar,
148  const unsigned int version)
149  {
151  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
152  }
153 
154  template<class Archive, typename Scalar, int Options>
155  void serialize(
156  Archive & ar,
158  const unsigned int version)
159  {
161  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
162  }
163 
164  template<class Archive, typename Scalar, int Options>
165  void serialize(
166  Archive & ar,
168  const unsigned int version)
169  {
171  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
172  }
173 
174  template<class Archive, typename Scalar, int Options>
175  void serialize(
176  Archive & ar,
178  const unsigned int version)
179  {
181  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
182  }
183 
184  template<class Archive, typename Scalar, int Options>
185  void serialize(
186  Archive & ar,
188  const unsigned int version)
189  {
191  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
192  }
193 
194  template<class Archive, typename Scalar, int Options>
195  void serialize(
196  Archive & ar,
198  const unsigned int version)
199  {
201  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
202  }
203 
204  template<class Archive, typename Scalar, int Options>
205  void serialize(
206  Archive & ar,
208  const unsigned int version)
209  {
211  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
212  }
213 
214  template<class Archive, typename Scalar, int Options>
215  void serialize(
216  Archive & ar,
218  const unsigned int version)
219  {
221  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
222  }
223 
224  template<
225  class Archive,
226  typename Scalar,
227  int Options,
228  template<typename S, int O> class JointCollectionTpl>
229  void serialize(
230  Archive & ar,
232  const unsigned int version)
233  {
235  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
237  }
238 
239  template<
240  class Archive,
241  typename Scalar,
242  int Options,
243  template<typename S, int O> class JointCollectionTpl>
244  void serialize(
245  Archive & ar,
247  const unsigned int /*version*/)
248  {
250  ar & make_nvp("base_variant", base_object<JointDataVariant>(joint));
251  }
252 
253  template<
254  class Archive,
255  typename Scalar,
256  int Options,
257  template<typename S, int O> class JointCollectionTpl>
258  void serialize(
259  Archive & ar,
261  const unsigned int version)
262  {
263  ar & make_nvp("jdata", joint.jdata());
264 
265  ar & make_nvp("m_q_transform", joint.q_transformed());
266  ar & make_nvp("m_v_transform", joint.v_transformed());
267 
269  fix::serialize(ar, static_cast<pinocchio::JointDataBase<JointType> &>(joint), version);
270  }
271 
272  } // namespace serialization
273 } // namespace boost
274 
275 #endif // ifndef __pinocchio_serialization_joints_data_hpp__
pinocchio::Serialize::run
static void run(Archive &ar, T &object)
pinocchio::JointDataBase::v
MotionTypeConstRef v() const
Definition: joint-data-base.hpp:211
pinocchio::Serialize
Definition: serialization/fwd.hpp:18
pinocchio::JointDataFreeFlyerTpl
Definition: multibody/joint/fwd.hpp:114
boost::serialization::fix::serialize
void serialize(Archive &ar, pinocchio::JointDataBase< Derived > &joint_data, const unsigned int)
Definition: joints-data.hpp:46
boost::serialization::serialize
void serialize(Archive &ar, Eigen::Map< PlainObjectBase, MapOptions, StrideType > &m, const unsigned int version)
Definition: serialization/eigen.hpp:222
pinocchio::JointDataRevoluteUnalignedTpl
Definition: multibody/joint/fwd.hpp:42
pinocchio::JointDataCompositeTpl::c
Bias_t c
Definition: joint-composite.hpp:137
pinocchio::Options
Options
Definition: joint-configuration.hpp:1082
pinocchio::JointDataPrismaticTpl
Definition: multibody/joint/fwd.hpp:91
pinocchio::JointDataMimicTpl::q_transformed
ConfigVector_t & q_transformed()
Definition: joint-mimic.hpp:500
pinocchio::JointDataBase
Definition: joint-data-base.hpp:161
pinocchio::JointDataCompositeTpl::joints
JointDataVector joints
Vector of joints.
Definition: joint-composite.hpp:123
pinocchio::JointDataBase::M
TansformTypeConstRef M() const
Definition: joint-data-base.hpp:203
version
Definition: version.py:1
pinocchio::JointDataHelicalUnalignedTpl
Definition: multibody/joint/fwd.hpp:69
pinocchio::JointDataHelicalTpl
Definition: multibody/joint/fwd.hpp:62
boost
pinocchio::JointDataTpl
Definition: multibody/joint/fwd.hpp:176
pinocchio::JointDataCompositeTpl::U
U_t U
Definition: joint-composite.hpp:140
boost::serialization::make_nvp
const nvp< pinocchio::container::aligned_vector< T > > make_nvp(const char *name, pinocchio::container::aligned_vector< T > &t)
Definition: serialization/aligned-vector.hpp:37
pinocchio::JointDataCompositeTpl::StU
D_t StU
Definition: joint-composite.hpp:143
pinocchio::JointDataMimicTpl::v_transformed
TangentVector_t & v_transformed()
Definition: joint-mimic.hpp:517
pinocchio::Serialize< JointDataCompositeTpl< Scalar, Options, JointCollectionTpl > >::run
static void run(Archive &ar, JointDataCompositeTpl< Scalar, Options, JointCollectionTpl > &joint_data)
Definition: joints-data.hpp:15
pinocchio::JointDataPlanarTpl
Definition: multibody/joint/fwd.hpp:122
pinocchio::JointDataTranslationTpl
Definition: multibody/joint/fwd.hpp:130
pinocchio::JointDataBase::S
ConstraintTypeConstRef S() const
Definition: joint-data-base.hpp:195
Options
@ Options
Definition: timings-cppad-jit.cpp:35
pinocchio::JointDataRevoluteTpl
Definition: multibody/joint/fwd.hpp:35
pinocchio::JointDataCompositeTpl::Dinv
D_t Dinv
Definition: joint-composite.hpp:141
pinocchio::JointDataBase::StU
DTypeConstRef StU() const
Definition: joint-data-base.hpp:252
pinocchio::JointDataBase::U
UTypeConstRef U() const
Definition: joint-data-base.hpp:228
pinocchio::JointDataBase::Dinv
DTypeConstRef Dinv() const
Definition: joint-data-base.hpp:236
pinocchio::JointDataSphericalTpl
Definition: multibody/joint/fwd.hpp:77
pinocchio::JointDataCompositeTpl::M
Transformation_t M
Definition: joint-composite.hpp:135
pinocchio::JointDataCompositeTpl::UDinv
UD_t UDinv
Definition: joint-composite.hpp:142
pinocchio::JointDataSphericalZYXTpl
Definition: multibody/joint/fwd.hpp:85
pinocchio::JointDataBase::joint_q
ConfigVectorTypeConstRef joint_q() const
Definition: joint-data-base.hpp:177
serialization
Definition: serialization.py:1
pinocchio::JointDataRevoluteUnboundedUnalignedTpl
Definition: multibody/joint/fwd.hpp:50
pinocchio::JointDataBase::UDinv
UDTypeConstRef UDinv() const
Definition: joint-data-base.hpp:244
pinocchio::JointDataCompositeTpl
Definition: multibody/joint/fwd.hpp:148
pinocchio::JointDataVariant
JointCollectionDefault::JointDataVariant JointDataVariant
Definition: joint-collection.hpp:202
pinocchio::JointDataUniversalTpl
Definition: multibody/joint/fwd.hpp:106
pinocchio::JointDataCompositeTpl::v
Motion_t v
Definition: joint-composite.hpp:136
pinocchio::JointDataMimicTpl
Definition: multibody/joint/fwd.hpp:162
pinocchio::JointDataCompositeTpl::S
Constraint_t S
Definition: joint-composite.hpp:134
pinocchio::JointDataMimicTpl::jdata
const RefJointData & jdata() const
Definition: joint-mimic.hpp:482
pinocchio::JointDataBase::joint_v
TangentVectorTypeConstRef joint_v() const
Definition: joint-data-base.hpp:186
Scalar
double Scalar
Definition: timings-cppad-jit.cpp:37
pinocchio::JointDataPrismaticUnalignedTpl
Definition: multibody/joint/fwd.hpp:98
pinocchio::JointDataBase::c
BiasTypeConstRef c() const
Definition: joint-data-base.hpp:219
pinocchio::JointDataRevoluteUnboundedTpl
Definition: multibody/joint/fwd.hpp:57
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:33


pinocchio
Author(s):
autogenerated on Thu Apr 10 2025 02:42:20