00001 /* $Id$ */ 00002 00003 #ifndef _ssMultibeamProcessMonitor_h 00004 #define _ssMultibeamProcessMonitor_h 00005 00011 #include <vtkObject.h> 00012 00013 class ssMultibeamProcess; 00014 00015 class VTK_EXPORT ssMultibeamProcessMonitor : public vtkObject 00016 { 00017 //**************************************************************************** 00018 public: 00019 00025 static ssMultibeamProcessMonitor *New(); 00026 00030 vtkTypeMacro(ssMultibeamProcessMonitor, 00031 vtkObject); 00032 00038 void PrintSelf(ostream& os, vtkIndent indent); 00039 00043 void TerminateApplication(); 00044 00049 void Process(ssMultibeamProcess *process); 00050 00051 //**************************************************************************** 00052 protected: 00053 00057 ssMultibeamProcessMonitor(); 00058 00062 ~ssMultibeamProcessMonitor(); 00063 00067 ssMultibeamProcess *process; 00068 00069 //**************************************************************************** 00070 private: 00071 00075 ssMultibeamProcessMonitor(const ssMultibeamProcessMonitor& rhs); 00076 ssMultibeamProcessMonitor& operator=(const ssMultibeamProcessMonitor& rhs); 00077 00078 }; 00079 00080 //****************************************************************************** 00081 // global: 00082 00090 void ssMultibeamProcessMonitor_TerminateRMI(void *localArg, 00091 void *remoteArg, 00092 int remoteArgLength, 00093 int remoteProcessId); 00094 00103 #endif