ExtTrigExecutionContext.h
Go to the documentation of this file.
1 // -*- C++ -*-
19 #ifndef RTC_EXTTRIGEXECUTIONCONTEXT_H
20 #define RTC_EXTTRIGEXECUTIONCONTEXT_H
21 
22 #include <rtm/RTC.h>
23 
24 #include <coil/Mutex.h>
25 #include <coil/Condition.h>
26 #include <coil/Task.h>
27 
28 #include <rtm/Manager.h>
30 
31 #ifdef WIN32
32 #pragma warning( disable : 4290 )
33 #endif
34 
35 namespace RTC
36 {
60  : public virtual PeriodicExecutionContext
61  {
62  typedef coil::Mutex Mutex;
64  public:
79 
93  virtual ~ExtTrigExecutionContext(void);
94 
108  virtual void tick()
109  throw (CORBA::SystemException);
110 
131  virtual int svc(void);
132 
133  private:
134  struct Worker
135  {
136  Worker() : _cond(_mutex), _called(false) {};
137  Mutex _mutex;
138  Condition _cond;
139  bool _called;
140  };
141  // A condition variable for external triggered worker
143  }; // class ExtTrigExecutionContext
144 }; // namespace RTC
145 
146 #ifdef WIN32
147 #pragma warning( default : 4290 )
148 #endif
149 
150 
151 extern "C"
152 {
169 };
170 
171 #endif // RTC_EXTTRIGEXECUTIONCONTEXT_H
RT-Component.
Mutex class.
void ExtTrigExecutionContextInit(RTC::Manager *manager)
Register Factory class for this ExecutionContext.
Manager class.
Definition: Manager.h:80
virtual ~ExtTrigExecutionContext(void)
Destructor.
virtual int svc(void)
Invoke each component&#39;s operation.
RTComponent manager class.
Condition template class.
coil::Condition< Mutex > Condition
PeriodicExecutionContext class.
RTComponent header.
virtual void tick()
Move forward one step of ExecutionContext.


openrtm_aist
Author(s): Noriaki Ando
autogenerated on Mon Jun 10 2019 14:07:52