00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef M_PROCESS_H
00024 #define M_PROCESS_H
00025
00026 using namespace std;
00027
00028 #include <qobject.h>
00029
00030 #include <string>
00031
00045 class MProcess : public QObject
00046 {
00047
00048 Q_OBJECT
00049
00050 public :
00051
00052
00053
00057 MProcess ( string name ) : _name ( name ) { }
00058
00059 virtual ~ MProcess ( ) { }
00060
00061
00062
00066 virtual string Name ( ) const
00067 {
00068 return _name;
00069 }
00070
00076 virtual MProcess * Child ( const unsigned int ) const
00077 {
00078 return NULL;
00079 }
00080
00086 virtual unsigned int NumberOfChildren ( ) const
00087 {
00088 return 0;
00089 }
00090
00091
00092
00096 virtual void Run ( unsigned int ) = 0;
00097
00098 protected :
00099
00100
00101
00103 string _name;
00104
00105 };
00106
00107 #endif // M_PROCESS_H