#include <msp/core/thread.h>
#include "task.h"
+/**
+Runs a worker thread. Tools should derive a thread class from
+InternalTask::Worker. The worker thread must set its status to either SUCCESS
+or ERROR before terminating.
+*/
class InternalTask: public Task
{
public:
friend class InternalTask;
protected:
- Status status;
+ volatile Status status;
Worker();
virtual std::string get_command() const { return "<internal>"; }
virtual void start();
virtual Status check();
+ virtual Status wait();
};
#endif