10 #ifndef CROCODDYL_CORE_FWD_HPP_
11 #define CROCODDYL_CORE_FWD_HPP_
13 #include "crocoddyl/core/pch.hpp"
17 inline bool& enableMultithreading() {
18 static bool enable =
true;
22 enum AssignmentOp { setto, addto, rmfrom };
24 inline bool is_a_AssignmentOp(AssignmentOp op) {
25 return (op == setto || op == addto || op == rmfrom);
29 template <
typename Scalar>
30 class ActionModelAbstractTpl;
32 template <
typename Scalar>
33 struct ActionDataAbstractTpl;
35 template <
typename Scalar>
36 class ActionModelUnicycleTpl;
37 template <
typename Scalar>
38 struct ActionDataUnicycleTpl;
40 template <
typename Scalar>
41 class ActionModelLQRTpl;
42 template <
typename Scalar>
43 struct ActionDataLQRTpl;
46 template <
typename Scalar>
47 class DifferentialActionModelAbstractTpl;
48 template <
typename Scalar>
49 struct DifferentialActionDataAbstractTpl;
51 template <
typename Scalar>
52 class DifferentialActionModelLQRTpl;
53 template <
typename Scalar>
54 struct DifferentialActionDataLQRTpl;
57 template <
typename Scalar>
58 class IntegratedActionModelAbstractTpl;
59 template <
typename Scalar>
60 struct IntegratedActionDataAbstractTpl;
62 template <
typename Scalar>
63 class IntegratedActionModelEulerTpl;
64 template <
typename Scalar>
65 struct IntegratedActionDataEulerTpl;
67 template <
typename Scalar>
68 class IntegratedActionModelRKTpl;
69 template <
typename Scalar>
70 struct IntegratedActionDataRKTpl;
73 template <
typename Scalar>
74 class ResidualModelAbstractTpl;
75 template <
typename Scalar>
76 struct ResidualDataAbstractTpl;
79 template <
typename Scalar>
80 struct ActivationBoundsTpl;
81 template <
typename Scalar>
82 class ActivationModelQuadraticBarrierTpl;
83 template <
typename Scalar>
84 struct ActivationDataQuadraticBarrierTpl;
86 template <
typename Scalar>
87 class ActivationModelWeightedQuadraticBarrierTpl;
89 template <
typename Scalar>
90 class ActivationModelQuadTpl;
92 template <
typename Scalar>
93 class ActivationModelQuadFlatExpTpl;
94 template <
typename Scalar>
95 struct ActivationDataQuadFlatExpTpl;
97 template <
typename Scalar>
98 class ActivationModelQuadFlatLogTpl;
99 template <
typename Scalar>
100 struct ActivationDataQuadFlatLogTpl;
102 template <
typename Scalar>
103 class ActivationModelWeightedQuadTpl;
104 template <
typename Scalar>
105 struct ActivationDataWeightedQuadTpl;
107 template <
typename Scalar>
108 class ActivationModelSmooth1NormTpl;
109 template <
typename Scalar>
110 struct ActivationDataSmooth1NormTpl;
112 template <
typename Scalar>
113 class ActivationModelSmooth2NormTpl;
114 template <
typename Scalar>
117 template <
typename Scalar>
119 template <
typename Scalar>
122 template <
typename Scalar>
124 template <
typename Scalar>
128 template <
typename Scalar>
131 template <
typename Scalar>
135 template <
typename Scalar>
137 template <
typename Scalar>
140 template <
typename Scalar>
143 template <
typename Scalar>
145 template <
typename Scalar>
148 template <
typename Scalar>
150 template <
typename Scalar>
154 template <
typename Scalar>
156 template <
typename Scalar>
159 template <
typename Scalar>
161 template <
typename Scalar>
165 template <
typename Scalar>
167 template <
typename Scalar>
170 template <
typename Scalar>
174 template <
typename Scalar>
178 template <
typename Scalar>
181 template <
typename Scalar>
184 template <
typename Scalar>
187 template <
typename Scalar>
191 template <
typename Scalar>
193 template <
typename Scalar>
196 template <
typename Scalar>
198 template <
typename Scalar>
201 template <
typename Scalar>
203 template <
typename Scalar>
207 template <
typename Scalar>
209 template <
typename Scalar>
212 template <
typename Scalar>
214 template <
typename Scalar>
216 template <
typename Scalar>
219 template <
typename Scalar>
221 template <
typename Scalar>
225 template <
typename Scalar>
227 template <
typename Scalar>
230 template <
typename Scalar>
232 template <
typename Scalar>
234 template <
typename Scalar>
237 template <
typename Scalar>
239 template <
typename Scalar>
243 template <
typename Scalar>
247 template <
typename Scalar>
249 template <
typename Scalar>
252 template <
typename Scalar>
254 template <
typename Scalar>
257 template <
typename Scalar>
259 template <
typename Scalar>
262 template <
typename Scalar>
264 template <
typename Scalar>
267 template <
typename Scalar>
269 template <
typename Scalar>
272 template <
typename Scalar>
274 template <
typename Scalar>
277 template <
typename Scalar>
280 template <
typename Scalar>
282 template <
typename Scalar>
285 template <
typename Scalar>
287 template <
typename Scalar>
290 template <
typename Scalar>
293 template <
typename Scalar>
343 "Use ActivationModelSmooth1Norm",
346 "Use ActivationDataSmooth1Norm",
Abstract class for action model.
Linear-quadratic regulator (LQR) action model.
This class computes the numerical differentiation of an action model.
2-norm barrier activation
Quadratic-flat-log activation.
Abstract class for the actuation-mapping model.
This class computes the numerical differentiation of an actuation model.
Abstract class for constraint models.
Manage the individual constraint models.
This class computes the numerical differentiation of a constraint model.
Residual-based constraint.
Abstract class for the control trajectory parametrization.
A polynomial function of time of degree one, that is a linear function.
A polynomial function of time of degree two, that is a quadratic function.
A polynomial function of time of degree zero, that is a constant.
Abstract class for cost models.
Summation of individual cost models.
Abstract class for differential action model.
Linear-quadratic regulator (LQR) differential action model.
This class computes the numerical differentiation of a differential action model.
Abstract class for an integrated action model.
Symplectic Euler integrator.
Abstract class for residual models.
Define a control residual.
Define a joint-acceleration residual.
Define a joint-effort residual.
This class computes the numerical differentiation of a residual model.
This class encapsulates a shooting problem.
Abstract class for the state representation.