00001 #if !defined(__MCPROCESS_H_)
00002 #define __MCPROCESS_H_
00003
00004 #ident "@(#)$Id: MCProcess.h,v 1.3 2004/12/02 07:05:20 mike Exp $"
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "mcllib/MCBase.h"
00026 #include "mcllib/MCFile.h"
00027 #include "mcllib/MCString.h"
00028 #include "mcllib/MCTypes.h"
00029 #include <stdarg.h>
00030
00031 namespace mcllib
00032 {
00043 class MCProcess : public MCBase
00044 {
00045 public:
00051 MCProcess();
00060 MCProcess(const MCString& name);
00068 void setDirectory(const MCString& dir);
00076 const MCString& getDirectory();
00086 const MCString& getFileName();
00093 MCString getExecutableName();
00103 void setDetached(bool detached);
00108 bool isDetached();
00119 bool isRunning();
00129 void setStdHandle(MCFile::EStdHandle hdl, const MCFile& file);
00141 void run(char* const* argv, char* const* envp = 0);
00149 mcint32 wait();
00156 void kill();
00164 void detach();
00165 };
00166
00167 };
00168
00169
00170 #endif