ssMultibeamAquisitionProcess.h

Go to the documentation of this file.
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