40 #include "../ExecutionEngine.hpp" 41 #include "../base/TaskCore.hpp" 42 #include "../Logger.hpp" 47 using namespace extras;
56 :
Activity(scheduler, priority, 0.0, _r, name)
68 #ifndef OROPKG_OS_XENOMAI 75 #include <sys/select.h> 87 m_irq = provider->
getIRQ();
98 if (snprintf(name, 20,
"IRQActivity%d", m_irq) >= 20)
104 int ret = rt_intr_create(&m_handle, name, m_irq, 0);
113 rt_intr_delete(&m_handle);
127 if (rt_intr_wait(&m_handle, TM_INFINITE) > 0)
147 rt_intr_delete(&m_handle);
157 #endif // OS is xenomai
virtual bool stop()
Stop the activity This will stop the activity by removing it from the 'run-queue' of a thread or call...
A class for running a certain piece of code in a thread.
virtual void step()=0
The method that will be (periodically) executed when this object is run in an Activity.
An execution engine serialises (executes one after the other) the execution of all commands...
static std::ostream & endl(std::ostream &__os)
base::TaskCore * getParent()
The base::TaskCore which created this ExecutionEngine.
An Activity executes a RunnableInterface object in a (periodic) thread.
static Logger & log()
As Instance(), but more userfriendly.
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
virtual bool start()
Start the activity.