TVM  0.9.4
CoMFunction.h
Go to the documentation of this file.
1 
3 #pragma once
4 
5 #include <tvm/Robot.h>
6 
8 
9 #include <RBDyn/CoM.h>
10 
11 namespace tvm
12 {
13 
14 namespace robot
15 {
16 
19 {
20 public:
21  SET_UPDATES(CoMFunction, Value, Velocity, Jacobian, NormalAcceleration, JDot)
22 
23 
29 
31  void reset();
32 
34  inline const Eigen::Vector3d & com() const { return com_; }
35 
37  inline void com(const Eigen::Vector3d & com) { com_ = com; }
38 
39 protected:
40  void updateValue();
44  void updateJDot();
45 
47 
49  Eigen::Vector3d com_;
50 
52  rbd::CoMJacobian jac_;
53 };
54 
55 } // namespace robot
56 
57 } // namespace tvm
#define SET_UPDATES(SelfT,...)
Definition: AbstractNode.h:138
#define TVM_DLLAPI
Definition: api.h:35
Definition: Function.h:45
Definition: CoMFunction.h:19
rbd::CoMJacobian jac_
Definition: CoMFunction.h:52
Eigen::Vector3d com_
Definition: CoMFunction.h:49
void com(const Eigen::Vector3d &com)
Definition: CoMFunction.h:37
RobotPtr robot_
Definition: CoMFunction.h:46
Definition: AffineExprDetail.h:95
Definition: Clock.h:12
std::shared_ptr< Robot > RobotPtr
Definition: defs.h:62