1 #ifndef FILE_GLOBAL
2 #define FILE_GLOBAL
3 
4 
5 /**************************************************************************/
6 /* File:   global.hh                                                      */
7 /* Author: Joachim Schoeberl                                              */
8 /* Date:   01. Okt. 95                                                    */
9 /**************************************************************************/
10 
11 /*
12   global functions and variables
13 */
14 
15 namespace netgen
16 {
17 
18   ///
19   DLL_HEADER extern double GetTime ();
20   DLL_HEADER extern void ResetTime ();
21 
22   ///
23   DLL_HEADER extern int testmode;
24 
25   /// calling parameters
26   // extern Flags parameters;
27 
28   // extern DLL_HEADER MeshingParameters mparam;
29 
30   DLL_HEADER extern mutex tcl_todo_mutex;
31 
32   class DLL_HEADER multithreadt
33   {
34   public:
35     int pause;
36     int testmode;
37     int redraw;
38     int drawing;
39     int terminate;
40     int running;
41     double percent;
42     const char * task;
43     bool demorunning;
44     string * tcl_todo = new string("");  // tcl commands set from parallel thread
45     multithreadt();
46   };
47 
48   DLL_HEADER extern volatile multithreadt multithread;
49 
50   DLL_HEADER extern string ngdir;
51   DLL_HEADER extern DebugParameters debugparam;
52   DLL_HEADER extern bool verbose;
53 
54   DLL_HEADER extern int h_argc;
55   DLL_HEADER extern char ** h_argv;
56 
57 
58   DLL_HEADER extern weak_ptr<Mesh> global_mesh;
59   DLL_HEADER void SetGlobalMesh (shared_ptr<Mesh> m);
60 
61   // global communicator for netgen (dummy if no MPI)
62   // extern DLL_HEADER NgMPI_Comm ng_comm;
63 
64 }
65 
66 #endif
67