sot-core  4.11.8
Hierarchical task solver plug-in for dynamic-graph.
task-unilateral.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_TASKUNILATERAL_H__
11 #define __SOT_TASKUNILATERAL_H__
12 
13 /* --------------------------------------------------------------------- */
14 /* --- INCLUDE --------------------------------------------------------- */
15 /* --------------------------------------------------------------------- */
16 
17 /* Matrix */
18 #include <dynamic-graph/linear-algebra.h>
19 
20 /* STD */
21 #include <string>
22 
23 /* SOT */
26 #include <sot/core/flags.hh>
27 #include <sot/core/task.hh>
28 
29 /* --------------------------------------------------------------------- */
30 /* --- API ------------------------------------------------------------- */
31 /* --------------------------------------------------------------------- */
32 
33 #if defined(WIN32)
34 #if defined(task_unilateral_EXPORTS)
35 #define SOTTASKUNILATERAL_EXPORT __declspec(dllexport)
36 #else
37 #define SOTTASKUNILATERAL_EXPORT __declspec(dllimport)
38 #endif
39 #else
40 #define SOTTASKUNILATERAL_EXPORT
41 #endif
42 
43 /* --------------------------------------------------------------------- */
44 /* --- CLASS ----------------------------------------------------------- */
45 /* --------------------------------------------------------------------- */
46 
47 namespace dynamicgraph {
48 namespace sot {
49 
51  protected:
52  std::list<FeatureAbstract *> featureList;
53 
54  public:
55  static const std::string CLASS_NAME;
56  virtual const std::string &getClassName(void) const { return CLASS_NAME; }
57 
58  public:
59  TaskUnilateral(const std::string &n);
60 
61  /* --- COMPUTATION --- */
63 
64  /* --- SIGNALS ------------------------------------------------------------ */
65  public:
66  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> positionSIN;
67  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> referenceInfSIN;
68  dynamicgraph::SignalPtr<dynamicgraph::Vector, int> referenceSupSIN;
69  dynamicgraph::SignalPtr<double, int> dtSIN;
70 
71  /* --- DISPLAY ------------------------------------------------------------ */
72  void display(std::ostream &os) const;
73 };
74 
75 } /* namespace sot */
76 } /* namespace dynamicgraph */
77 
78 #endif /* #ifndef __SOT_TASKUNILATERAL_H__ */
Definition: task-unilateral.hh:50
void display(std::ostream &os) const
virtual const std::string & getClassName(void) const
Definition: task-unilateral.hh:56
static const std::string CLASS_NAME
Definition: task-unilateral.hh:55
dynamicgraph::SignalPtr< double, int > dtSIN
Definition: task-unilateral.hh:69
VectorMultiBound & computeTaskUnilateral(VectorMultiBound &res, int time)
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > referenceSupSIN
Definition: task-unilateral.hh:68
std::list< FeatureAbstract * > featureList
Definition: task-unilateral.hh:52
TaskUnilateral(const std::string &n)
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > positionSIN
Definition: task-unilateral.hh:66
dynamicgraph::SignalPtr< dynamicgraph::Vector, int > referenceInfSIN
Definition: task-unilateral.hh:67
Class that defines the basic elements of a task.
Definition: task.hh:72
std::vector< MultiBound > VectorMultiBound
Definition: multi-bound.hh:71
Definition: abstract-sot-external-interface.hh:17
#define SOTTASKUNILATERAL_EXPORT
Definition: task-unilateral.hh:40