canbus
Task.hpp
Go to the documentation of this file.
1 /* Generated from orogen/lib/orogen/templates/tasks/Task.hpp */
2 
3 #ifndef CANBUS_TASK_TASK_HPP
4 #define CANBUS_TASK_TASK_HPP
5 
6 #include "canbus/TaskBase.hpp"
7 #include <rtt/OutputPort.hpp>
8 
9 namespace canbus {
10  class Driver;
11 
12  class Task : public TaskBase
13  {
14  friend class TaskBase;
15  protected:
16 
17  /* Handler for the unwatch operation
18  */
19  virtual bool watch(std::string const& name, int id, int mask);
20  /* Handler for the watch operation
21  */
22  virtual bool unwatch(std::string const& name);
23 
24  struct Mapping
25  {
26  std::string name;
27  int id;
28  int mask;
29  RTT::OutputPort<canbus::Message>* output;
30  };
31  typedef std::vector<Mapping> Mappings;
32 
34  {
35  int id;
36  std::vector<RTT::OutputPort<canbus::Message>* > outputs;
37  };
38  typedef std::map<uint32_t, MappingCacheItem> MappingCache;
39 
40  canbus::Driver *m_driver;
42  Mappings m_mappings;
43  MappingCache m_mapping_cache;
45  base::Time m_last_stats_time;
46 
48  base::Time m_stats_interval;
49 
50  public:
51  Task(std::string const& name = "canbus::Task");
52  ~Task();
53 
67  bool configureHook();
68 
74  bool startHook();
75 
90  void updateHook();
91 
92 
99  // void errorHook();
100 
104  void stopHook();
105 
110  void cleanupHook();
111 
112  };
113 }
114 
115 #endif
116 
virtual bool unwatch(std::string const &name)
Definition: Task.cpp:51
canbus::Statistics m_stats
Definition: Task.hpp:41
Definition: Task.hpp:33
std::vector< Mapping > Mappings
Definition: Task.hpp:31
std::map< uint32_t, MappingCacheItem > MappingCache
Definition: Task.hpp:38
base::Time m_last_can_check_time
Definition: Task.hpp:44
int id
Definition: Task.hpp:35
int id
Definition: Task.hpp:27
virtual bool watch(std::string const &name, int id, int mask)
Definition: Task.cpp:29
Definition: Task.hpp:24
int mask
Definition: Task.hpp:28
void updateHook()
Definition: Task.cpp:102
Definition: canTypes.hh:8
std::string name
Definition: Task.hpp:26
Mappings m_mappings
Definition: Task.hpp:42
friend class TaskBase
Definition: Task.hpp:14
base::Time m_can_check_interval
Definition: Task.hpp:47
Definition: Task.hpp:12
~Task()
Definition: Task.cpp:18
void stopHook()
Definition: Task.cpp:167
Task(std::string const &name="canbus::Task")
Definition: Task.cpp:12
MappingCache m_mapping_cache
Definition: Task.hpp:43
base::Time m_stats_interval
Definition: Task.hpp:48
Definition: canTypes.hh:6
std::vector< RTT::OutputPort< canbus::Message > *> outputs
Definition: Task.hpp:36
base::Time m_last_stats_time
Definition: Task.hpp:45
bool startHook()
Definition: Task.cpp:82
void cleanupHook()
Definition: Task.cpp:177
RTT::OutputPort< canbus::Message > * output
Definition: Task.hpp:29
canbus::Driver * m_driver
Definition: Task.hpp:40
bool configureHook()
Definition: Task.cpp:69