EEROS  1.0.0.0
API for the EEROS Real-Time Robotics Framework
Periodic.hpp
Go to the documentation of this file.
1 #ifndef ORG_EEROS_TASK_PERIODIC_HPP_
2 #define ORG_EEROS_TASK_PERIODIC_HPP_
3 
4 #include <vector>
5 #include <functional>
6 
9 
10 namespace eeros {
11  namespace task {
12 
13  class Periodic {
14  public:
15  Periodic(const char *name, double period, Runnable &task, bool realtime = true, int nice = -1);
16  Periodic(const char *name, double period, Runnable *task, bool realtime = true, int nice = -1);
17 
18  void addDefaultMonitor(double tolerance = 0.05);
19 
20  std::string getName();
21  double getPeriod();
22  Runnable& getTask();
23  bool getRealtime();
24  int getNice();
25  void setNice(int value);
26 
27  std::vector<Periodic> before;
28  std::vector<Periodic> after;
29 
30  std::vector<PeriodicCounter::MonitorFunc> monitors;
31 
32  private:
33  std::string name;
34  double period;
35  Runnable *task;
36  bool realtime;
37  int nice;
38  };
39 
40  }
41 }
42 
43 #endif // ORG_EEROS_TASK_PERIODIC_HPP_
bool getRealtime()
Definition: Periodic.cpp:30
std::vector< Periodic > after
Definition: Periodic.hpp:28
double getPeriod()
Definition: Periodic.cpp:22
std::vector< Periodic > before
Definition: Periodic.hpp:27
std::vector< PeriodicCounter::MonitorFunc > monitors
Definition: Periodic.hpp:30
void setNice(int value)
Definition: Periodic.cpp:38
void addDefaultMonitor(double tolerance=0.05)
Definition: Periodic.cpp:14
Definition: Config.hpp:14
Definition: Runnable.hpp:6
Runnable & getTask()
Definition: Periodic.cpp:26
Definition: Periodic.hpp:13
int getNice()
Definition: Periodic.cpp:34
std::string getName()
Definition: Periodic.cpp:18
Periodic(const char *name, double period, Runnable &task, bool realtime=true, int nice=-1)
Definition: Periodic.cpp:8