pinocchio
2.1.3
liegroup.hpp
1
//
2
// Copyright (c) 2016-2018 CNRS
3
//
4
5
#ifndef __pinocchio_lie_group_hpp__
6
#define __pinocchio_lie_group_hpp__
7
8
#include "pinocchio/multibody/liegroup/vector-space.hpp"
9
#include "pinocchio/multibody/liegroup/cartesian-product.hpp"
10
#include "pinocchio/multibody/liegroup/special-orthogonal.hpp"
11
#include "pinocchio/multibody/liegroup/special-euclidean.hpp"
12
13
#include "pinocchio/multibody/joint/fwd.hpp"
14
15
namespace
pinocchio
16
{
17
struct
LieGroupMap
18
{
19
template
<
typename
Jo
int
Model>
20
struct
operation
21
{
22
typedef
VectorSpaceOperationTpl<JointModel::NQ,typename JointModel::Scalar, JointModel::Options>
type
;
23
};
24
};
25
26
template
<
typename
Jo
int
Model>
27
struct
LieGroup
28
{
29
typedef
typename
LieGroupMap::operation<JointModel>::type
type
;
30
};
31
32
template
<
typename
Scalar,
int
Options,
template
<
typename
S,
int
O>
class
JointCollectionTpl>
33
struct
LieGroupMap::operation
<
JointModelCompositeTpl
<Scalar,Options,JointCollectionTpl> >
34
{};
35
36
template
<
typename
Scalar,
int
Options>
37
struct
LieGroupMap::operation
<
JointModelSphericalTpl
<Scalar,Options> >
38
{
39
typedef
SpecialOrthogonalOperationTpl<3,Scalar,Options>
type
;
40
};
41
42
template
<
typename
Scalar,
int
Options>
43
struct
LieGroupMap::operation
<
JointModelFreeFlyerTpl
<Scalar,Options> >
44
{
45
typedef
SpecialEuclideanOperationTpl<3,Scalar,Options>
type
;
46
};
47
48
template
<
typename
Scalar,
int
Options>
49
struct
LieGroupMap::operation
<
JointModelPlanarTpl
<Scalar,Options> >
50
{
51
typedef
SpecialEuclideanOperationTpl<2,Scalar,Options>
type
;
52
};
53
54
template
<
typename
Scalar,
int
Options,
int
axis>
55
struct
LieGroupMap::operation
<
JointModelRevoluteUnboundedTpl
<Scalar,Options,axis> >
56
{
57
typedef
SpecialOrthogonalOperationTpl<2,Scalar,Options>
type
;
58
};
59
60
}
61
62
#endif // ifndef __pinocchio_lie_group_hpp__
pinocchio::JointModelPlanarTpl
Definition:
multibody/joint/fwd.hpp:62
pinocchio::SpecialEuclideanOperationTpl
Definition:
special-euclidean.hpp:22
pinocchio::JointModelRevoluteUnboundedTpl
Definition:
multibody/joint/fwd.hpp:32
pinocchio::LieGroup
Definition:
liegroup.hpp:27
pinocchio::LieGroupMap::operation
Definition:
liegroup.hpp:20
pinocchio::VectorSpaceOperationTpl
Definition:
vector-space.hpp:16
pinocchio::JointModelFreeFlyerTpl
Definition:
multibody/joint/fwd.hpp:56
pinocchio::SpecialOrthogonalOperationTpl
Definition:
special-orthogonal.hpp:17
pinocchio::JointModelSphericalTpl
Definition:
multibody/joint/fwd.hpp:35
pinocchio
Main pinocchio namespace.
Definition:
treeview.dox:24
pinocchio::LieGroupMap
Definition:
liegroup.hpp:17
pinocchio::JointModelCompositeTpl
Definition:
multibody/joint/fwd.hpp:78
src
multibody
liegroup
liegroup.hpp
Generated on Thu Jun 20 2019 10:05:50 for pinocchio by
1.8.11