GCC Code Coverage Report


Directory: ./
File: include/sot/core/joint-limitator.hh
Date: 2024-08-13 12:13:25
Exec Total Coverage
Lines: 0 2 0.0%
Branches: 0 0 -%

Line Branch Exec Source
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>
18
19 #include <sot/core/exception-task.hh>
20
21 #if defined(WIN32)
22 #if defined(joint_limitator_EXPORTS)
23 #define SOTJOINTLIMITATOR_EXPORT __declspec(dllexport)
24 #else
25 #define SOTJOINTLIMITATOR_EXPORT __declspec(dllimport)
26 #endif
27 #else
28 #define SOTJOINTLIMITATOR_EXPORT
29 #endif
30
31 namespace dynamicgraph {
32 namespace sot {
33
34 /// \brief Filter control vector to avoid exceeding joint maximum values.
35 ///
36 /// This must be plugged between the entity producing the command
37 /// (i.e. usually the sot) and the entity executing it (the device).
38 class SOTJOINTLIMITATOR_EXPORT JointLimitator : public dynamicgraph::Entity {
39 DYNAMIC_GRAPH_ENTITY_DECL();
40
41 public:
42 JointLimitator(const std::string &name);
43 virtual ~JointLimitator() {}
44
45 virtual dynamicgraph::Vector &computeControl(dynamicgraph::Vector &res,
46 int time);
47 dynamicgraph::Vector &computeWidthJl(dynamicgraph::Vector &res,
48 const int &time);
49
50 virtual void display(std::ostream &os) const;
51
52 /// \name Signals
53 /// \{
54 dynamicgraph::SignalPtr<dynamicgraph::Vector, int> jointSIN;
55 dynamicgraph::SignalPtr<dynamicgraph::Vector, int> upperJlSIN;
56 dynamicgraph::SignalPtr<dynamicgraph::Vector, int> lowerJlSIN;
57 dynamicgraph::SignalPtr<dynamicgraph::Vector, int> controlSIN;
58 dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> controlSOUT;
59 dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> widthJlSINTERN;
60 /// \}
61 };
62 } // end of namespace sot.
63 } // namespace dynamicgraph
64
65 #endif //! SOT_FEATURE_JOINTLIMITS_HH
66