sot-core  4.11.2
Hierarchical task solver plug-in for dynamic-graph.
joint-limitator.hh
Go to the documentation of this file.
1 /*
2  * Copyright 2010,
3  * François Bleibel,
4  * Olivier Stasse,
5  *
6  * CNRS/AIST
7  *
8  */
9 
10 #ifndef SOT_FEATURE_JOINTLIMITS_HH
11 #define SOT_FEATURE_JOINTLIMITS_HH
12 // Matrix
13 #include <dynamic-graph/linear-algebra.h>
14 
15 // SOT
16 #include <dynamic-graph/all-signals.h>
17 #include <dynamic-graph/entity.h>
19 
20 #if defined(WIN32)
21 #if defined(joint_limitator_EXPORTS)
22 #define SOTJOINTLIMITATOR_EXPORT __declspec(dllexport)
23 #else
24 #define SOTJOINTLIMITATOR_EXPORT __declspec(dllimport)
25 #endif
26 #else
27 #define SOTJOINTLIMITATOR_EXPORT
28 #endif
29 
30 namespace dynamicgraph {
31 namespace sot {
32 
37 class SOTJOINTLIMITATOR_EXPORT JointLimitator : public dynamicgraph::Entity {
38  DYNAMIC_GRAPH_ENTITY_DECL();
39 
40 public:
41  JointLimitator(const std::string &name);
42  virtual ~JointLimitator() {}
43 
44  virtual dynamicgraph::Vector &computeControl(dynamicgraph::Vector &res,
45  int time);
46  dynamicgraph::Vector &computeWidthJl(dynamicgraph::Vector &res,
47  const int &time);
48 
49  virtual void display(std::ostream &os) const;
50 
53  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> jointSIN;
54  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> upperJlSIN;
55  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> lowerJlSIN;
56  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> controlSIN;
57  dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> controlSOUT;
58  dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> widthJlSINTERN;
60 };
61 } // end of namespace sot.
62 } // namespace dynamicgraph
63 
64 #endif
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > upperJlSIN
Definition: joint-limitator.hh:54
#define SOTJOINTLIMITATOR_EXPORT
Definition: joint-limitator.hh:27
dynamicgraph::SignalTimeDependent< dynamicgraph::Vector, int > widthJlSINTERN
Definition: joint-limitator.hh:58
virtual ~JointLimitator()
Definition: joint-limitator.hh:42
Filter control vector to avoid exceeding joint maximum values.
Definition: joint-limitator.hh:37
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > jointSIN
Definition: joint-limitator.hh:53
dynamicgraph::SignalTimeDependent< dynamicgraph::Vector, int > controlSOUT
Definition: joint-limitator.hh:57
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > controlSIN
Definition: joint-limitator.hh:56
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > lowerJlSIN
Definition: joint-limitator.hh:55
Definition: abstract-sot-external-interface.hh:17