sot-core  4.11.2
Hierarchical task solver plug-in for dynamic-graph.
feature-visual-point.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_VISUALPOINT_HH__
11 #define __SOT_FEATURE_VISUALPOINT_HH__
12 
13 /* --------------------------------------------------------------------- */
14 /* --- INCLUDE --------------------------------------------------------- */
15 /* --------------------------------------------------------------------- */
16 
17 /* SOT */
20 
21 /* --------------------------------------------------------------------- */
22 /* --- API ------------------------------------------------------------- */
23 /* --------------------------------------------------------------------- */
24 
25 #if defined(WIN32)
26 #if defined(feature_visual_point_EXPORTS)
27 #define SOTFEATUREVISUALPOINT_EXPORT __declspec(dllexport)
28 #else
29 #define SOTFEATUREVISUALPOINT_EXPORT __declspec(dllimport)
30 #endif
31 #else
32 #define SOTFEATUREVISUALPOINT_EXPORT
33 #endif
34 
35 /* --------------------------------------------------------------------- */
36 /* --- CLASS ----------------------------------------------------------- */
37 /* --------------------------------------------------------------------- */
38 
39 namespace dynamicgraph {
40 namespace sot {
41 
47  : public FeatureAbstract,
48  public FeatureReferenceHelper<FeatureVisualPoint> {
49 
50 public:
51  static const std::string CLASS_NAME;
52  virtual const std::string &getClassName(void) const { return CLASS_NAME; }
53 
54 protected:
55  dynamicgraph::Matrix L;
56 
57  /* --- SIGNALS ------------------------------------------------------------ */
58 public:
59  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> xySIN;
62  dynamicgraph::SignalPtr<double, int> ZSIN;
63  dynamicgraph::SignalPtr<dynamicgraph::Matrix, int> articularJacobianSIN;
64 
68 
70 
71 public:
72  FeatureVisualPoint(const std::string &name);
73  virtual ~FeatureVisualPoint(void) {}
74 
75  virtual unsigned int &getDimension(unsigned int &dim, int time);
76 
77  virtual dynamicgraph::Vector &computeError(dynamicgraph::Vector &res,
78  int time);
79  virtual dynamicgraph::Matrix &computeJacobian(dynamicgraph::Matrix &res,
80  int time);
81 
83  inline static Flags selectX(void) { return Flags("10"); }
84  inline static Flags selectY(void) { return Flags("01"); }
85 
86  virtual void display(std::ostream &os) const;
87 };
88 
89 } /* namespace sot */
90 } /* namespace dynamicgraph */
91 
92 #endif // #ifndef __SOT_FEATURE_VISUALPOINT_HH__
93 
94 /*
95  * Local variables:
96  * c-basic-offset: 2
97  * End:
98  */
static const std::string CLASS_NAME
Definition: feature-visual-point.hh:51
virtual const std::string & getClassName(void) const
Returns the name class.
Definition: feature-visual-point.hh:52
dynamicgraph::SignalPtr< dynamicgraph::Matrix, int > articularJacobianSIN
Definition: feature-visual-point.hh:63
SignalPtr< Flags, int > selectionSIN
This vector specifies which dimension are used to perform the computation. For instance let us assume...
Definition: feature-abstract.hh:172
Definition: feature-abstract.hh:227
static Flags selectY(void)
Definition: feature-visual-point.hh:84
dynamicgraph::Matrix L
Definition: feature-visual-point.hh:55
SignalTimeDependent< dynamicgraph::Matrix, int > jacobianSOUT
Jacobian of the error wrt the robot state: .
Definition: feature-abstract.hh:192
static Flags selectX(void)
Definition: feature-visual-point.hh:83
Class that defines 2D visualPoint visual feature.
Definition: feature-visual-point.hh:46
dynamicgraph::SignalPtr< double, int > ZSIN
Definition: feature-visual-point.hh:62
#define SOTFEATUREVISUALPOINT_EXPORT
Definition: feature-visual-point.hh:32
Definition: flags.hh:32
This class gives the abstract definition of a feature.
Definition: feature-abstract.hh:75
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > xySIN
Definition: feature-visual-point.hh:59
#define DECLARE_REFERENCE_FUNCTIONS(FeatureSpecialized)
Definition: feature-abstract.hh:249
SignalTimeDependent< dynamicgraph::Vector, int > errorSOUT
This signal returns the error between the desired value and the current value : . ...
Definition: feature-abstract.hh:184
virtual ~FeatureVisualPoint(void)
Definition: feature-visual-point.hh:73
Definition: abstract-sot-external-interface.hh:17