hpp-pinocchio  5.0.0
Wrapping of the kinematic/dynamic chain Pinocchio for HPP.
liegroup.hh
Go to the documentation of this file.
1 // Copyright (c) 2017, Joseph Mirabel
2 // Authors: Joseph Mirabel (joseph.mirabel@laas.fr)
3 //
4 
5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are
7 // met:
8 //
9 // 1. Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 //
12 // 2. Redistributions in binary form must reproduce the above copyright
13 // notice, this list of conditions and the following disclaimer in the
14 // documentation and/or other materials provided with the distribution.
15 //
16 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 // HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
27 // DAMAGE.
28 
29 #ifndef HPP_PINOCCHIO_LIEGROUP_HH
30 #define HPP_PINOCCHIO_LIEGROUP_HH
31 
32 #include <pinocchio/multibody/joint/fwd.hpp>
33 // #include <pinocchio/multibody/liegroup/liegroup.hpp>
34 
40 
41 namespace hpp {
42 namespace pinocchio {
43 typedef ::pinocchio::JointModelCompositeTpl<value_type, 0, JointCollectionTpl>
45 
53  template <typename JointModel>
54  struct operation {};
55 };
56 
64  template <typename JointModel>
65  struct operation {};
66 };
67 
69 //---------------- RnxSOnLieGroupMap -------------------------------//
70 // JointModelRevolute, JointModelRevoluteUnbounded, JointModelRevoluteUnaligned,
71 // JointModelRevoluteUnboundedUnaligned
72 template <typename Scalar, int Options, int Axis>
74  ::pinocchio::JointModelRevoluteTpl<Scalar, Options, Axis> > {
76 };
77 template <typename Scalar, int Options, int Axis>
79  ::pinocchio::JointModelRevoluteUnboundedTpl<Scalar, Options, Axis> > {
81 };
82 template <typename Scalar, int Options>
84  ::pinocchio::JointModelRevoluteUnalignedTpl<Scalar, Options> > {
86 };
87 #if PINOCCHIO_VERSION_AT_LEAST(2, 1, 5)
88 template <typename Scalar, int Options>
90  ::pinocchio::JointModelRevoluteUnboundedUnalignedTpl<Scalar, Options> > {
92 };
93 #endif
94 
95 // JointModelPrismaticTpl, JointModelPrismaticUnaligned, JointModelTranslation
96 template <typename Scalar, int Options, int Axis>
98  ::pinocchio::JointModelPrismaticTpl<Scalar, Options, Axis> > {
100 };
101 template <typename Scalar, int Options>
103  ::pinocchio::JointModelPrismaticUnalignedTpl<Scalar, Options> > {
105 };
106 template <typename Scalar, int Options>
108  ::pinocchio::JointModelTranslationTpl<Scalar, Options> > {
110 };
111 
112 // JointModelSpherical, JointModelSphericalZYX,
113 template <typename Scalar, int Options>
115  ::pinocchio::JointModelSphericalTpl<Scalar, Options> > {
117 };
118 template <typename Scalar, int Options>
120  ::pinocchio::JointModelSphericalZYXTpl<Scalar, Options> > {
122 };
123 
124 // JointModelFreeFlyer, JointModelPlanar
125 template <typename Scalar, int Options>
127  ::pinocchio::JointModelFreeFlyerTpl<Scalar, Options> > {
131  type;
132 };
133 template <typename Scalar, int Options>
135  ::pinocchio::JointModelPlanarTpl<Scalar, Options> > {
139  type;
140 };
141 
142 //---------------- DefaultLieGroupMap ------------------------------------//
143 
144 // JointModelRevolute, JointModelRevoluteUnbounded, JointModelRevoluteUnaligned,
145 // JointModelRevoluteUnboundedUnaligned
146 template <typename Scalar, int Options, int Axis>
148  ::pinocchio::JointModelRevoluteTpl<Scalar, Options, Axis> > {
150 };
151 template <typename Scalar, int Options, int Axis>
153  ::pinocchio::JointModelRevoluteUnboundedTpl<Scalar, Options, Axis> > {
155 };
156 template <typename Scalar, int Options>
158  ::pinocchio::JointModelRevoluteUnalignedTpl<Scalar, Options> > {
160 };
161 #if PINOCCHIO_VERSION_AT_LEAST(2, 1, 5)
162 template <typename Scalar, int Options>
164  ::pinocchio::JointModelRevoluteUnboundedUnalignedTpl<Scalar, Options> > {
166 };
167 #endif
168 
169 // JointModelPrismaticTpl, JointModelPrismaticUnaligned, JointModelTranslation
170 template <typename Scalar, int Options, int Axis>
172  ::pinocchio::JointModelPrismaticTpl<Scalar, Options, Axis> > {
174 };
175 template <typename Scalar, int Options>
177  ::pinocchio::JointModelPrismaticUnalignedTpl<Scalar, Options> > {
179 };
180 template <typename Scalar, int Options>
182  ::pinocchio::JointModelTranslationTpl<Scalar, Options> > {
184 };
185 
186 // JointModelSpherical, JointModelSphericalZYX,
187 template <typename Scalar, int Options>
189  ::pinocchio::JointModelSphericalTpl<Scalar, Options> > {
191 };
192 template <typename Scalar, int Options>
194  ::pinocchio::JointModelSphericalZYXTpl<Scalar, Options> > {
196 };
197 
198 // JointModelFreeFlyer, JointModelPlanar
199 template <typename Scalar, int Options>
201  ::pinocchio::JointModelFreeFlyerTpl<Scalar, Options> > {
203 };
204 template <typename Scalar, int Options>
206  ::pinocchio::JointModelPlanarTpl<Scalar, Options> > {
208 };
210 } // namespace pinocchio
211 } // namespace hpp
212 
213 #endif // HPP_PINOCCHIO_LIEGROUP_HH
Utility functions.
Definition: body.hh:39
Definition: cartesian-product.hh:39
::pinocchio::JointModelCompositeTpl< value_type, 0, JointCollectionTpl > JointModelComposite
Definition: liegroup.hh:44
Definition: liegroup.hh:63
Definition: collision-object.hh:40
Definition: special-orthogonal.hh:38
Definition: liegroup.hh:52
Definition: special-euclidean.hh:38