00001 00010 // =================================================================== 00011 // Avoid multiple inclusion. 00012 #if !defined (_PROCESS_HH) 00013 #define _PROCESS_HH 00014 // =================================================================== 00015 00016 00017 00018 // =================================================================== 00019 // INCLUDES 00020 00021 #include "types-and-constants.hh" 00022 // =================================================================== 00023 00024 00025 00026 // =================================================================== 00027 // FORWARD DECLARATION 00028 00029 class Task; 00030 // =================================================================== 00031 00032 00033 00034 // =================================================================== 00035 // CLASS DEFINITION 00036 00045 class Process { 00046 00047 public: 00048 00054 Process () { 00055 process_ID = 0; 00056 context_ID = 0; 00057 virtual_to_canonical_map = NULL; 00058 image_file_ID.inode_ID = 0; 00059 image_file_ID.major = 0; 00060 image_file_ID.minor = 0; 00061 } 00062 00063 public: // DATA MEMBERS 00064 00066 process_ID_t process_ID; 00067 00070 list<Task*> task_list; 00071 00073 context_ID_t context_ID; 00074 00076 virtual_to_canonical_map_t* virtual_to_canonical_map; 00077 00079 file_ID_s image_file_ID; 00080 00082 char image_pathname[BUFFER_SIZE]; 00083 00084 }; // class Process 00085 // =================================================================== 00086 00087 00088 00089 // =================================================================== 00090 #endif // _PROCESS_HH 00091 // ===================================================================