include
pinocchio
multibody
visitor
fusion.hpp
Go to the documentation of this file.
1
//
2
// Copyright (c) 2015-2019 CNRS INRIA
3
//
4
5
#ifndef __pinocchio_multibody_visitior_fusion_hpp__
6
#define __pinocchio_multibody_visitior_fusion_hpp__
7
8
#define BOOST_FUSION_INVOKE_MAX_ARITY 10
9
10
#include "pinocchio/deprecated.hpp"
11
12
#include <boost/variant/static_visitor.hpp>
13
#include <boost/fusion/include/invoke.hpp>
14
#include <boost/fusion/container/generation/make_vector.hpp>
15
16
namespace
boost
17
{
18
namespace
fusion
19
{
20
22
template
<
typename
T,
typename
V>
23
typename
result_of::push_front<V const, T>::type
24
append
(
T
const
&
t
,V
const
&
v
)
25
{
26
return
push_front(
v
,
t
);
27
}
28
30
template
<
typename
T1,
typename
T2,
typename
V>
31
typename
result_of::push_front<typename result_of::push_front<V const, T2>::type
const
, T1>
::type
32
append
(T1
const
& t1,T2
const
& t2,V
const
&
v
)
33
{
34
return
push_front(push_front(
v
,t2),t1);
35
}
36
39
template
<
typename
T1,
typename
T2,
typename
V>
40
PINOCCHIO_DEPRECATED
41
typename
result_of::push_front<typename result_of::push_front<V const, T2>::type
const
, T1>
::type
42
append2
(T1
const
& t1,T2
const
& t2,V
const
&
v
)
43
{
44
return
append2
(t1,t2,
v
);
45
}
46
48
template
<
typename
T1,
typename
T2,
typename
T3,
typename
V>
49
typename
result_of::push_front<
50
typename
result_of::push_front<
51
typename
result_of::push_front<V const,T3>::type
const
,T2>
::type
const
,T1>
::type
52
append
(T1
const
& t1, T2
const
& t2, T3
const
& t3, V
const
&
v
)
53
{
54
return
push_front(push_front(push_front(
v
,t3),t2),t1);
55
}
56
58
template
<
typename
T1,
typename
T2,
typename
T3,
typename
T4,
typename
V>
59
typename
result_of::push_front<
60
typename
result_of::push_front<
61
typename
result_of::push_front<
62
typename
result_of::push_front<V const,T4>::type
const
,T3>
::type
const
,T2>
::type
const
,T1>
::type
63
append
(T1
const
& t1, T2
const
& t2, T3
const
& t3, T4
const
& t4, V
const
&
v
)
64
{
65
return
push_front(push_front(push_front(push_front(
v
,t4),t3),t2),t1);
66
}
67
69
template
<
typename
T1,
typename
T2,
typename
T3,
typename
T4,
typename
T5,
typename
V>
70
typename
result_of::push_front<
71
typename
result_of::push_front<
72
typename
result_of::push_front<
73
typename
result_of::push_front<
74
typename
result_of::push_front<V const,T5>::type
const
,T4>
::type
const
,T3>
::type
const
,T2>
::type
const
,T1>
::type
75
append
(T1
const
& t1, T2
const
& t2, T3
const
& t3, T4
const
& t4, T5
const
& t5, V
const
&
v
)
76
{
77
return
push_front(push_front(push_front(push_front(push_front(
v
,t5),t4),t3),t2),t1);
78
}
79
80
}
81
}
82
83
#endif // ifndef __pinocchio_multibody_visitior_fusion_hpp__
boost::fusion::append2
PINOCCHIO_DEPRECATED result_of::push_front< typename result_of::push_front< V const, T2 >::type const, T1 >::type append2(T1 const &t1, T2 const &t2, V const &v)
Append the elements T1 and T2 at the front of boost fusion vector V.
Definition:
fusion.hpp:42
simulation-pendulum.T
int T
Definition:
simulation-pendulum.py:113
boost
forward-dynamics-derivatives.v
v
Definition:
forward-dynamics-derivatives.py:22
simulation-pendulum.type
type
Definition:
simulation-pendulum.py:14
boost::fusion::append
result_of::push_front< V const, T >::type append(T const &t, V const &v)
Append the element T at the front of boost fusion vector V.
Definition:
fusion.hpp:24
t
Transform3f t
pinocchio
Author(s):
autogenerated on Tue Feb 13 2024 03:43:58