TVM  0.9.4
OneStepToZero.h
Go to the documentation of this file.
1 /*
2  * Copyright 2017-2021 CNRS-AIST JRL and CNRS-UM LIRMM
3  */
4 
5 #pragma once
6 
8 
9 namespace tvm
10 {
11 
12 namespace task_dynamics
13 {
14 
21 {
22 public:
23  static void checkParam(Order d, double dt);
24 
26  {
27  public:
28  Impl(FunctionPtr f, constraint::Type t, const Eigen::VectorXd & rhs, Order d, double dt);
29  void updateValue() override;
30 
31  ~Impl() override = default;
32 
33  private:
34  double dt_;
35  };
36 
37  OneStepToZero(Order d, double dt);
38 
39 protected:
40  std::unique_ptr<abstract::TaskDynamicsImpl> impl_(FunctionPtr f,
42  const Eigen::VectorXd & rhs) const override;
43  Order order_() const override;
44 
46 
47 private:
48  Order d_;
49  double dt_;
50 };
51 
52 } // namespace task_dynamics
53 
54 } // namespace tvm
#define TASK_DYNAMICS_DERIVED_FACTORY(...)
Definition: TaskDynamics.h:62
#define TVM_DLLAPI
Definition: api.h:35
Definition: OneStepToZero.h:26
Impl(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs, Order d, double dt)
Definition: OneStepToZero.h:21
Order order_() const override
std::unique_ptr< abstract::TaskDynamicsImpl > impl_(FunctionPtr f, constraint::Type t, const Eigen::VectorXd &rhs) const override
static void checkParam(Order d, double dt)
OneStepToZero(Order d, double dt)
Definition: TaskDynamicsImpl.h:33
Definition: TaskDynamics.h:37
Type
Definition: enums.h:15
Order
Definition: enums.h:14
Definition: Clock.h:12
std::shared_ptr< function::abstract::Function > FunctionPtr
Definition: defs.h:57