feature-line-distance.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_LINEDISTANCE_HH__
11 #define __SOT_FEATURE_LINEDISTANCE_HH__
12 
13 /* --------------------------------------------------------------------- */
14 /* --- INCLUDE --------------------------------------------------------- */
15 /* --------------------------------------------------------------------- */
16 
17 /* SOT */
21 /* --------------------------------------------------------------------- */
22 /* --- API ------------------------------------------------------------- */
23 /* --------------------------------------------------------------------- */
24 
25 #if defined(WIN32)
26 #if defined(feature_line_distance_EXPORTS)
27 #define SOTFEATURELINEDISTANCE_EXPORT __declspec(dllexport)
28 #else
29 #define SOTFEATURELINEDISTANCE_EXPORT __declspec(dllimport)
30 #endif
31 #else
32 #define SOTFEATURELINEDISTANCE_EXPORT
33 #endif
34 
35 /* --------------------------------------------------------------------- */
36 /* --- CLASS ----------------------------------------------------------- */
37 /* --------------------------------------------------------------------- */
38 
39 namespace dynamicgraph {
40 namespace sot {
41 namespace dg = dynamicgraph;
42 
48  : public FeatureAbstract {
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  /* --- SIGNALS ------------------------------------------------------------ */
56 public:
57  dg::SignalPtr<MatrixHomogeneous, int> positionSIN;
58  dg::SignalPtr<dg::Matrix, int> articularJacobianSIN;
59  dg::SignalPtr<dg::Vector, int> positionRefSIN;
60  dg::SignalPtr<dg::Vector, int> vectorSIN;
61  dg::SignalTimeDependent<dg::Vector, int> lineSOUT;
62 
66 
73 public:
74  FeatureLineDistance(const std::string &name);
75  virtual ~FeatureLineDistance(void) {}
76 
77  virtual unsigned int &getDimension(unsigned int &dim, int time);
78 
79  virtual dg::Vector &computeError(dg::Vector &res, int time);
80  virtual dg::Matrix &computeJacobian(dg::Matrix &res, int time);
81  dg::Vector &computeLineCoordinates(dg::Vector &cood, int time);
82 
83  virtual void display(std::ostream &os) const;
84 };
85 
86 } /* namespace sot */
87 } /* namespace dynamicgraph */
88 
89 #endif // #ifndef __SOT_FEATURE_LINEDISTANCE_HH__
90 
91 /*
92  * Local variables:
93  * c-basic-offset: 2
94  * End:
95  */
dynamicgraph::sot::FeatureAbstract::jacobianSOUT
SignalTimeDependent< dg::Matrix, int > jacobianSOUT
Jacobian of the error wrt the robot state: .
Definition: feature-abstract.hh:190
dynamicgraph::sot::FeatureLineDistance::~FeatureLineDistance
virtual ~FeatureLineDistance(void)
Definition: feature-line-distance.hh:75
dynamicgraph::sot::FeatureLineDistance::vectorSIN
dg::SignalPtr< dg::Vector, int > vectorSIN
Definition: feature-line-distance.hh:60
dynamicgraph
Definition: abstract-sot-external-interface.hh:17
dynamicgraph::sot::FeatureAbstract::errorSOUT
SignalTimeDependent< dg::Vector, int > errorSOUT
This signal returns the error between the desired value and the current value : .
Definition: feature-abstract.hh:182
feature-abstract.hh
dynamicgraph::sot::FeatureLineDistance::CLASS_NAME
static const std::string CLASS_NAME
Definition: feature-line-distance.hh:51
dynamicgraph::sot::FeatureAbstract
This class gives the abstract definition of a feature.
Definition: feature-abstract.hh:76
dynamicgraph::sot::FeatureLineDistance
Class that defines point-3d control feature.
Definition: feature-line-distance.hh:47
dynamicgraph::sot::FeatureLineDistance::positionSIN
dg::SignalPtr< MatrixHomogeneous, int > positionSIN
Definition: feature-line-distance.hh:57
SOTFEATURELINEDISTANCE_EXPORT
#define SOTFEATURELINEDISTANCE_EXPORT
Definition: feature-line-distance.hh:32
dynamicgraph::sot::FeatureLineDistance::DECLARE_NO_REFERENCE
DECLARE_NO_REFERENCE
Definition: feature-line-distance.hh:70
dynamicgraph::sot::FeatureLineDistance::articularJacobianSIN
dg::SignalPtr< dg::Matrix, int > articularJacobianSIN
Definition: feature-line-distance.hh:58
matrix-geometry.hh
exception-task.hh
dynamicgraph::sot::FeatureLineDistance::lineSOUT
dg::SignalTimeDependent< dg::Vector, int > lineSOUT
Definition: feature-line-distance.hh:61
dynamicgraph::sot::FeatureAbstract::selectionSIN
SignalPtr< Flags, int > selectionSIN
This vector specifies which dimension are used to perform the computation. For instance let us assume...
Definition: feature-abstract.hh:170
dynamicgraph::sot::FeatureLineDistance::getClassName
virtual const std::string & getClassName(void) const
Returns the name class.
Definition: feature-line-distance.hh:52
dynamicgraph::sot::FeatureLineDistance::positionRefSIN
dg::SignalPtr< dg::Vector, int > positionRefSIN
Definition: feature-line-distance.hh:59