diff options
Diffstat (limited to 'include/TaskMan.h')
-rw-r--r-- | include/TaskMan.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/include/TaskMan.h b/include/TaskMan.h index 8cd8e66..e61aa3f 100644 --- a/include/TaskMan.h +++ b/include/TaskMan.h @@ -2,9 +2,16 @@ #define __TASKMAN_H__ #ifdef __cplusplus +#include <signal.h> #include <Task.h> #include <vector.h> +#define E_BURST 0 +#define E_HANDLE 1 +#define E_PROCESS 2 +#define E_TIMEOUT 3 +#define E_TASK 4 + class TaskMan : public Base { public: static void AddTask(Task *); @@ -13,10 +20,15 @@ class TaskMan : public Base { static void Init() throw (GeneralException); static void MainLoop() throw (GeneralException); static void WaitFor(Handle *, Task *, int = 0); - static void WaitFor(pid_t, Task *); + static void WaitFor(pid_t, Task *, int = 0); static void WaitFor(timeval, Task *, int = 0); static int GotChild(pid_t, int); static void Stop(); + static int Event(); + static Task * Etask(); + static Handle * Ehandle(); + static int Eprocess(); + static int Estatus(); class w4ha_t { public: @@ -53,6 +65,11 @@ class TaskMan : public Base { static vector<w4pr_t> w4pr; static vector<w4to_t> w4to; static bool stopped; + static int event; + static Task * etask; + static Handle * ehandle; + static int eprocess, estatus; + static sigset_t sigchildset; }; #else |