ParaView
vtkPVOptions.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkPVOptions.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
25 #ifndef vtkPVOptions_h
26 #define vtkPVOptions_h
27 
28 #include "vtkCommandOptions.h"
29 #include "vtkPVClientServerCoreCoreModule.h" //needed for exports
30 
31 class vtkPVOptionsInternal;
32 
33 class VTKPVCLIENTSERVERCORECORE_EXPORT vtkPVOptions : public vtkCommandOptions
34 {
35 protected:
36  friend class vtkPVOptionsXMLParser;
37 
38 public:
39  static vtkPVOptions* New();
41  void PrintSelf(ostream& os, vtkIndent indent);
42 
44 
47  vtkGetStringMacro(HostName);
49 
50  vtkGetMacro(ConnectID, int);
51  vtkGetMacro(UseOffscreenRendering, int);
52  vtkGetMacro(EGLDeviceIndex, int);
53  vtkGetMacro(UseStereoRendering, int);
54  vtkGetStringMacro(StereoType);
55 
56  vtkGetMacro(ReverseConnection, int);
57  vtkGetMacro(UseRenderingGroup, int);
58  vtkGetVector2Macro(TileDimensions, int);
59  vtkGetVector2Macro(TileMullions, int);
60 
62 
67  vtkGetStringMacro(ParaViewDataName);
69 
71 
74  vtkGetStringMacro(StateFileName); // Bug #5711
76 
78 
83  vtkGetMacro(Timeout, int);
85 
87 
91  vtkSetMacro(ConnectID, int);
93 
95 
98  vtkSetStringMacro(LogFileName);
99  vtkGetStringMacro(LogFileName);
101 
103 
106  vtkSetVector2Macro(TileDimensions, int);
107  vtkSetVector2Macro(TileMullions, int);
108  vtkSetMacro(UseOffscreenRendering, int);
110 
116  virtual int GetMultiClientMode()
117  {
118  return (this->MultiClientMode || this->MultiClientModeWithErrorMacro) ? 1 : 0;
119  }
120  virtual int IsMultiClientModeDebug() { return this->MultiClientModeWithErrorMacro; }
121 
123 
126  vtkGetMacro(MultiServerMode, int);
128 
130 
137  vtkGetMacro(SymmetricMPIMode, int);
138  vtkSetMacro(SymmetricMPIMode, int);
140 
142 
145  vtkGetMacro(TellVersion, int);
147 
149  vtkGetStringMacro(ServerURL);
150 
152 
155  vtkSetStringMacro(ParaViewDataName);
157 
159 
163  vtkGetMacro(EnableStreaming, int);
165 
167 
170  vtkGetMacro(UseCudaInterop, int);
172 
174 
177  vtkSetMacro(SatelliteMessageIds, int);
178  vtkGetMacro(SatelliteMessageIds, int);
180 
182 
185  vtkGetMacro(PrintMonitors, int);
187 
189 
192  vtkGetStringMacro(TestPlugin);
193  vtkGetStringMacro(TestPluginPath);
195 
197 
201  vtkGetMacro(EnableStackTrace, int);
202  vtkSetMacro(EnableStackTrace, int);
204 
206 
210  vtkGetMacro(DisableRegistry, int);
212 
214 
221  vtkGetMacro(DisableXDisplayTests, int);
223 
225  {
226  PARAVIEW = 0x2,
227  PVCLIENT = 0x4,
228  PVSERVER = 0x8,
229  PVRENDER_SERVER = 0x10,
230  PVDATA_SERVER = 0x20,
231  PVBATCH = 0x40,
232  ALLPROCESS = PARAVIEW | PVCLIENT | PVSERVER | PVRENDER_SERVER | PVDATA_SERVER | PVBATCH
233  };
234 
235 protected:
239  vtkPVOptions();
240 
244  virtual ~vtkPVOptions();
245 
249  virtual void Initialize();
250 
254  virtual int PostProcess(int argc, const char* const* argv);
255 
260  virtual int WrongArgument(const char* argument);
261 
266  virtual int DeprecatedArgument(const char* argument);
267 
269 
273  char* ServerURL; // server URL information
281  char* StateFileName; // loading state file(Bug #5711)
282  char* TestPlugin; // to load plugins from command line for tests
286 
287  // inline setters
288  vtkSetStringMacro(ServerURL);
289  vtkSetStringMacro(StateFileName);
290  vtkSetStringMacro(TestPlugin);
291  vtkSetStringMacro(TestPluginPath);
292 
293 private:
294  int ConnectID;
295  int UseOffscreenRendering;
296  int EGLDeviceIndex;
297  int UseStereoRendering;
298  int ReverseConnection;
299  int TileDimensions[2];
300  int TileMullions[2];
301  int UseRenderingGroup;
302  int Timeout;
303  char* LogFileName;
304  int TellVersion;
305  char* StereoType;
306  int EnableStreaming;
307  int UseCudaInterop;
308  int SatelliteMessageIds;
309  int PrintMonitors;
310  int EnableStackTrace;
311  int DisableRegistry;
312  int ForceMPIInitOnClient;
313  int ForceNoMPIInitOnClient;
314  int DummyMesaFlag;
315 
316  // inline setters
317  vtkSetStringMacro(StereoType);
318 
319 private:
320  vtkPVOptions(const vtkPVOptions&) VTK_DELETE_FUNCTION;
321  void operator=(const vtkPVOptions&) VTK_DELETE_FUNCTION;
322 
323  vtkSetStringMacro(HostName);
324  char* HostName;
325 };
326 
327 #endif
virtual int IsMultiClientModeDebug()
Definition: vtkPVOptions.h:120
int MultiClientModeWithErrorMacro
Subclasses may need to access these.
Definition: vtkPVOptions.h:278
char * StateFileName
Subclasses may need to access these.
Definition: vtkPVOptions.h:281
void PrintSelf(ostream &os, vtkIndent indent)
char * ServerURL
Subclasses may need to access these.
Definition: vtkPVOptions.h:273
virtual void Initialize()
Initialize arguments.
virtual int WrongArgument(const char *argument)
This method is called when wrong argument is found.
int ClientMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:275
ParaView options storage.
virtual int DeprecatedArgument(const char *argument)
This method is called when a deprecated argument is found.
int SymmetricMPIMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:280
int MultiServerMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:279
char * ParaViewDataName
Subclasses may need to access these.
Definition: vtkPVOptions.h:272
virtual int GetMultiClientMode()
Is this server was started for collaboration meaning that it allow several clients to connect to the ...
Definition: vtkPVOptions.h:116
int DisableXDisplayTests
Subclasses may need to access these.
Definition: vtkPVOptions.h:284
int MultiClientMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:277
int ServerMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:274
char * TestPlugin
Subclasses may need to access these.
Definition: vtkPVOptions.h:282
ParaView options storage.
ParaView options storage.
Definition: vtkPVOptions.h:33
char * TestPluginPath
Subclasses may need to access these.
Definition: vtkPVOptions.h:283
static vtkCommandOptions * New()
int RenderServerMode
Subclasses may need to access these.
Definition: vtkPVOptions.h:276
virtual int PostProcess(int argc, const char *const *argv)
After parsing, process extra option dependencies.