crocoddyl  1.5.0
Contact RObot COntrol by Differential DYnamic programming Library (Crocoddyl)
fwd.hpp
1 // BSD 3-Clause License
3 //
4 // Copyright (C) 2018-2020, LAAS-CNRS, University of Edinburgh
5 // Copyright note valid unless otherwise stated in individual files.
6 // All rights reserved.
8 
9 #ifndef CROCODDYL_MULTIBODY_FWD_HPP_
10 #define CROCODDYL_MULTIBODY_FWD_HPP_
11 
12 namespace crocoddyl {
13 
14 // actuation
15 template <typename Scalar>
16 class ActuationModelFloatingBaseTpl;
17 
18 template <typename Scalar>
19 class ActuationModelFullTpl;
20 
21 template <typename Scalar>
22 class ActuationModelMultiCopterBaseTpl;
23 
24 // contact
25 template <typename Scalar>
26 class ContactModelAbstractTpl;
27 template <typename Scalar>
28 struct ContactDataAbstractTpl;
29 
30 // action
31 template <typename Scalar>
32 class ActionModelImpulseFwdDynamicsTpl;
33 template <typename Scalar>
34 struct ActionDataImpulseFwdDynamicsTpl;
35 
36 // differential action
37 template <typename Scalar>
38 class DifferentialActionModelFreeFwdDynamicsTpl;
39 template <typename Scalar>
40 struct DifferentialActionDataFreeFwdDynamicsTpl;
41 
42 template <typename Scalar>
43 class DifferentialActionModelContactFwdDynamicsTpl;
44 template <typename Scalar>
45 struct DifferentialActionDataContactFwdDynamicsTpl;
46 
47 // numdiff
48 template <typename Scalar>
50 template <typename Scalar>
52 
53 template <typename Scalar>
55 template <typename Scalar>
57 
58 // frame
59 template <typename Scalar>
60 struct FrameTranslationTpl;
61 
62 template <typename Scalar>
63 struct FrameRotationTpl;
64 
65 template <typename Scalar>
66 struct FramePlacementTpl;
67 
68 template <typename Scalar>
69 struct FrameMotionTpl;
70 
71 template <typename Scalar>
72 struct FrameForceTpl;
73 
74 template <typename Scalar>
76 
77 template <typename Scalar>
78 struct FrameWrenchConeTpl;
79 
80 template <typename Scalar>
81 struct FrameCoPSupportTpl;
82 
83 // cost
84 template <typename Scalar>
86 template <typename Scalar>
87 struct CostDataAbstractTpl;
88 
89 template <typename Scalar>
91 template <typename Scalar>
93 
94 template <typename Scalar>
95 struct CostItemTpl;
96 template <typename Scalar>
97 class CostModelSumTpl;
98 template <typename Scalar>
99 struct CostDataSumTpl;
100 
101 template <typename Scalar>
103 template <typename Scalar>
105 
106 template <typename Scalar>
108 template <typename Scalar>
110 
111 template <typename Scalar>
113 template <typename Scalar>
115 
116 template <typename Scalar>
118 template <typename Scalar>
119 struct CostDataImpulseCoMTpl;
120 
121 template <typename Scalar>
122 class CostModelStateTpl;
123 template <typename Scalar>
124 struct CostDataStateTpl;
125 
126 template <typename Scalar>
128 template <typename Scalar>
130 
131 template <typename Scalar>
133 template <typename Scalar>
135 
136 template <typename Scalar>
138 template <typename Scalar>
140 
141 template <typename Scalar>
143 template <typename Scalar>
145 
146 template <typename Scalar>
148 template <typename Scalar>
150 
151 template <typename Scalar>
152 class CostModelControlTpl;
153 
154 template <typename Scalar>
156 template <typename Scalar>
158 
159 template <typename Scalar>
161 template <typename Scalar>
163 
164 template <typename Scalar>
166 template <typename Scalar>
168 
169 template <typename Scalar>
171 template <typename Scalar>
173 
174 template <typename Scalar>
176 template <typename Scalar>
178 
179 // impulse
180 template <typename Scalar>
182 template <typename Scalar>
184 
185 // contact
186 template <typename Scalar>
187 struct ContactItemTpl;
188 template <typename Scalar>
190 template <typename Scalar>
192 
193 template <typename Scalar>
194 class ContactModel2DTpl;
195 template <typename Scalar>
196 struct ContactData2DTpl;
197 
198 template <typename Scalar>
199 class ContactModel3DTpl;
200 template <typename Scalar>
201 struct ContactData3DTpl;
202 
203 template <typename Scalar>
204 class ContactModel6DTpl;
205 template <typename Scalar>
206 struct ContactData6DTpl;
207 
208 // friction
209 template <typename Scalar>
210 class FrictionConeTpl;
211 template <typename Scalar>
213 
214 // state
215 template <typename Scalar>
217 
218 // data collector
219 template <typename Scalar>
221 
222 template <typename Scalar>
224 
225 template <typename Scalar>
227 
228 template <typename Scalar>
230 
231 template <typename Scalar>
233 
234 template <typename Scalar>
236 
237 template <typename Scalar>
239 
240 // impulse
241 template <typename Scalar>
243 template <typename Scalar>
245 
246 template <typename Scalar>
248 template <typename Scalar>
250 
251 template <typename Scalar>
253 template <typename Scalar>
255 template <typename Scalar>
257 
258 /*******************************Template Instantiation**************************/
259 
263 
266 
269 
274 
279 
282 
291 
329 
331 
334 
335 enum ContactType { Contact2D, Contact3D, Contact6D, ContactUndefined };
336 enum ImpulseType { Impulse3D, Impulse6D, ImpulseUndefined };
337 
347 
349 
357 
365 
366 } // namespace crocoddyl
367 
368 #endif // CROCODDYL_MULTIBODY_FWD_HPP_
Define a stack of contact models.
This class encapsulates a wrench cone.
Definition: fwd.hpp:212
Define a contact impulse cost function.
Define a contact force cost function.
Define the multi-impulse data.
Definition: fwd.hpp:256
Define the multi-contact data.
Define a stack of impulse models.
Definition: fwd.hpp:254
Define a center of pressure cost function.