00001 /* $Id: ssMultibeamAquisitionProcess.h,v 1.8 2008/09/16 03:02:53 pfb Exp $ */ 00002 00003 #ifndef _ssMultibeamAquisitionProcess_h 00004 #define _ssMultibeamAquisitionProcess_h 00005 00011 #include "../Multibeam/ssMultibeamProcess.h" 00012 #include <ss.h> 00013 #include <vtkObject.h> 00014 #include <vtkKWApplication.h> 00015 00016 class ssCommonEnviroment; 00017 class vtkMultiProcessController; 00018 class vtkMutexLock; 00019 00030 class VTK_EXPORT ssMultibeamAquisitionProcess : public vtkObject 00031 { 00032 //**************************************************************************** 00033 public: 00034 00045 static ssMultibeamAquisitionProcess *New(); 00046 00050 vtkTypeMacro(ssMultibeamAquisitionProcess, 00051 vtkObject); 00052 00058 void PrintSelf(ostream& os, vtkIndent indent); 00059 00066 int Main(int argc, char *argv[]); 00067 00068 //**************************************************************************** 00069 protected: 00070 00074 ssMultibeamAquisitionProcess(); 00075 00079 ~ssMultibeamAquisitionProcess(); 00080 00084 ssCommonEnviroment *enviroment; 00085 00086 //**************************************************************************** 00087 private: 00088 00092 ssMultibeamAquisitionProcess(const ssMultibeamAquisitionProcess&); 00093 ssMultibeamAquisitionProcess& operator=(const ssMultibeamAquisitionProcess&); 00094 00100 static void Fork(vtkMultiProcessController *tlc, void *userData); 00101 00107 static Tcl_Interp *InitializeTCL(ThreadArgs *args); 00108 00109 static vtkMutexLock *initTclLock; 00110 static bool initTcl; 00111 }; 00112 00113 /* 00114 * $Log: ssMultibeamAquisitionProcess.h,v $ 00115 * Revision 1.8 2008/09/16 03:02:53 pfb 00116 * Added ss.h header. Unable to update to Smart Pointers ATT because of 00117 * C++ to TCL parser error. 00118 * 00119 * Revision 1.7 2006/08/02 15:45:30 pfb 00120 * Added InitializeTCL(). 00121 * 00122 * Revision 1.6 2006/07/28 14:24:06 pfb 00123 * Modified to make objects of this class singletons. 00124 * 00125 * Revision 1.5 2006/07/14 14:57:37 pfb 00126 * Work in progress. 00127 * 00128 * Revision 1.4 2006/04/19 05:09:19 pfb 00129 * Added ssMultibeamLWApplicationFunc(). 00130 * 00131 * Revision 1.3 2006/04/05 02:26:15 pfb 00132 * Problems with ssMultibeamLWApplication. 00133 * 00134 * Revision 1.2 2006/03/20 11:15:22 pfb 00135 * Using a vtkMPIController (in its threaded controller personality) as the 00136 * top level controller. 00137 * 00138 * Revision 1.1 2005/07/28 12:49:02 pfb 00139 * Initial rev. 00140 * 00141 * 00142 */ 00143 00147 #endif