TVM  0.9.4
CoMInConvexFunction.h
Go to the documentation of this file.
1 
3 #pragma once
4 
5 #include <tvm/Robot.h>
6 #include <tvm/geometry/Plane.h>
7 
9 
10 #include <RBDyn/CoM.h>
11 
12 namespace tvm
13 {
14 
15 namespace robot
16 {
17 
24 {
25 public:
26  SET_UPDATES(CoMInConvexFunction, Value, Velocity, Jacobian, NormalAcceleration)
27 
28 
34 
43  void addPlane(geometry::PlanePtr plane);
44 
46  void reset();
47 
48 protected:
49  void updateValue();
50  void updateVelocity();
51  void updateJacobian();
52  void updateNormalAcceleration();
53 
54  RobotPtr robot_;
55 
57  std::vector<geometry::PlanePtr> planes_;
58 
60  rbd::CoMJacobian jac_;
61  Eigen::Vector3d comSpeed_;
62 };
63 
64 } // namespace robot
65 
66 } // namespace tvm
#define SET_UPDATES(SelfT,...)
Definition: AbstractNode.h:138
#define TVM_DLLAPI
Definition: api.h:35
Definition: Function.h:45
Definition: CoMInConvexFunction.h:24
Definition: AffineExprDetail.h:95
Definition: probe.h:44
std::shared_ptr< Plane > PlanePtr
Definition: Plane.h:133
Definition: Clock.h:12
std::shared_ptr< Robot > RobotPtr
Definition: defs.h:62