]> git.tdb.fi Git - builder.git/blob - source/internaltask.h
Don't start tasks automatically upon creation
[builder.git] / source / internaltask.h
1 #ifndef INTERNALTASK_H_
2 #define INTERNALTASK_H_
3
4 #include <msp/core/thread.h>
5 #include "task.h"
6
7 class InternalTask: public Task
8 {
9 public:
10         class Worker: public Msp::Thread
11         {
12                 friend class InternalTask;
13
14         protected:
15                 Status status;
16
17                 Worker();
18
19         public:
20                 Status get_status() const { return status; }
21         };
22
23 private:
24         Worker *worker;
25
26 public:
27         InternalTask(Worker *);
28         ~InternalTask();
29
30         virtual void start();
31         virtual Status check();
32 };
33
34 #endif