summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPixel <Pixel>2001-12-23 01:45:18 +0000
committerPixel <Pixel>2001-12-23 01:45:18 +0000
commitb507db3acb1114a2c900d0e2409cda73f54e02d7 (patch)
treef2df356d725366c371b413cc9f863dd6dd797f79 /include
parent477886b341edc16634b39f4a839e595add883f17 (diff)
Big job on processus
Diffstat (limited to 'include')
-rw-r--r--include/Task.h1
-rw-r--r--include/TaskMan.h19
-rw-r--r--include/Variables.h1
3 files changed, 20 insertions, 1 deletions
diff --git a/include/Task.h b/include/Task.h
index b4d8b68..b6f9b2e 100644
--- a/include/Task.h
+++ b/include/Task.h
@@ -22,6 +22,7 @@ class Task : public Base {
virtual ~Task();
virtual String GetName();
int Run();
+ int DryRun();
int GetState();
void Suspend(int = -1) throw (GeneralException);
void WaitFor(Task *);
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
diff --git a/include/Variables.h b/include/Variables.h
index f3471bd..f4eb6db 100644
--- a/include/Variables.h
+++ b/include/Variables.h
@@ -10,6 +10,7 @@
class Variables : public Base {
public:
Variables(int = 0);
+ Variables(const Variables &);
~Variables();
void SetTo(int i, const String &);
String operator[](const String &);