VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtStealthCommandLineProcessor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <cmdLine/cmdArg.h>
15 
16 namespace makVrv
17 {
21  {
22  public:
23 
26 
29 
31  virtual void processCommandLine(DtVrvApplicationConfiguration& appConfig,
32  int argc, char** argv);
33 
37 
38  protected:
39 
40  struct StealthArgs
41  {
42  DtCmdLine::UnlabeledMultiArg<std::string>* fileToOpenArg;
44  DtCmdLine::ValueArg<std::string>* localeArg;
45  DtCmdLine::ValueArg<int>* notifyLevelArg;
46  DtCmdLine::ValueArg<std::string>* logFilenameArg;
47  DtCmdLine::ValueArg<std::string>* modelPreloadFilenameArg;
48  DtCmdLine::ValueArg<std::string>* discoveredModelPreloadFilenameArg;
49  DtCmdLine::ValueArg<std::string>* userDataDir;
50  DtCmdLine::ValueArg<std::string>* appDataDir;
51  DtCmdLine::ValueArg<std::string>* dataDir;
52  DtCmdLine::ValueArg<std::string>* factoryRootDir;
53  DtCmdLine::MultiArg<std::string>* addPlugin;
54  DtCmdLine::MultiArg<std::string>* excludePlugin;
55  DtCmdLine::ValueArg<unsigned short>* displayEnginePortArg;
56  DtCmdLine::MultiArg<std::string>* connectToDisplayEnginesArg;
57  DtCmdLine::ValueArg<std::string>* loadDisplayConfig;
58  DtCmdLine::ValueArg<std::string>* loadEnvironmentConfig;
59  DtCmdLine::ValueArg<std::string>* loadEntityDisplayConfig;
60  DtCmdLine::MultiArg<std::string>* autoDriverArg;
61  DtCmdLine::MultiArg<std::string>* mappingsConfig;
62  DtCmdLine::MultiArg<std::string>* observerStateArg; //Deprecated, remove in a few releases.
63  DtCmdLine::MultiArg<std::string>* loadObserverViewsArg;
64  DtCmdLine::MultiArg<std::string>* bindObserverStateArg;
66  DtCmdLine::MultiArg<std::string>* entityDefsHierFilesOrDirs;
67  DtCmdLine::MultiArg<std::string>* entityDefsLeafFilesOrDirs;
68  DtCmdLine::MultiArg<std::string>* aggregateDefsHierFilesOrDirs;
69  DtCmdLine::MultiArg<std::string>* aggregateDefsLeafFilesOrDirs;
70  DtCmdLine::MultiArg<std::string>* tacticalGraphicsDefsHierFilesOrDirs;
71  DtCmdLine::MultiArg<std::string>* tacticalGraphicsDefsLeafFilesOrDirs;
72  DtCmdLine::MultiArg<std::string>* modelDefsFileOrDir;
73  DtCmdLine::MultiArg<std::string>* entityTypeMapFileOrDir;
74  DtCmdLine::MultiArg<std::string>* aggregateTypeMapFileOrDir;
75  DtCmdLine::MultiArg<std::string>* tacticalGraphicsTypeMapFileOrDir;
76 
77 
83  DtCmdLine::ValueArg<double>* tcpSendTimeout;
84  DtCmdLine::ValueArg<double>* autoReconnectPeriod;
85 
86  DtCmdLine::ValueArg<unsigned short>* numDepthBitsArg;
87  DtCmdLine::ValueArg<unsigned short>* numStencilBitsArg;
88  DtCmdLine::ValueArg<unsigned short>* numAlphaBitsArg;
89  DtCmdLine::ValueArg<unsigned short>* antiAliasingArg;
90 
91  DtCmdLine::ValueArg<unsigned short>* frameRate;
95 
97 
105  DtCmdLine::ValueArg<std::string>* entityDefsDir;
106 
107 #ifdef _WIN32
108 #ifndef _DEBUG
109  makVrv::SwitchArg* showConsoleArg;
111 #endif
112 #endif
114 
116 
117  DtCmdLine::ValueArg<unsigned short>* mainScreenNumArg;
119  DtCmdLine::ValueArg<std::string>* extraArgs;
120 
122 
123  DtCmdLine::ValueArg<std::string>* guiWindowRectangleArg;
124 
126 
129 
130 
131 
132 
133  };
134 
136  virtual void processArgs(DtVrvApplicationConfiguration& appConfig, StealthArgs& args);
137  };
138 }
139 
140 #define DtStealthCommandLineProcessor_INL_
141 #include <vrvCore/DtStealthCommandLineProcessor.inl>
142 #undef DtStealthCommandLineProcessor_INL_
makVrv::SwitchArg * suppressHatIntersectOnAttachArg
Definition: DtStealthCommandLineProcessor.h:94
DtCmdLine::ValueArg< std::string > * loadEnvironmentConfig
Definition: DtStealthCommandLineProcessor.h:58
DtCmdLine::ValueArg< unsigned short > * mainScreenNumArg
Definition: DtStealthCommandLineProcessor.h:117
makVrv::SwitchArg * fullScreen
Definition: DtStealthCommandLineProcessor.h:78
makVrv::SwitchArg * disableOcclusionCullingArg
Definition: DtStealthCommandLineProcessor.h:125
DtCmdLine::MultiArg< std::string > * excludePlugin
Definition: DtStealthCommandLineProcessor.h:54
DtCmdLine::ValueArg< std::string > * loadEntityDisplayConfig
Definition: DtStealthCommandLineProcessor.h:59
This file declares the class makVrvmakVrv::CmdLine.
DtCmdLine::ValueArg< std::string > * guiWindowRectangleArg
Definition: DtStealthCommandLineProcessor.h:123
Definition: DtStealthCommandLineProcessor.h:40
DtCmdLine::MultiArg< std::string > * entityTypeMapFileOrDir
Definition: DtStealthCommandLineProcessor.h:73
Contains makVrv::DtVrvCommandLineProcessor class.
DtCmdLine::ValueArg< unsigned short > * numStencilBitsArg
Definition: DtStealthCommandLineProcessor.h:87
virtual void processArgs(DtVrvApplicationConfiguration &appConfig, StealthArgs &args)
Modify the app configuration based on the passed-in command line arguments.
makVrv::SwitchArg * highestPriority
Definition: DtStealthCommandLineProcessor.h:80
DtCmdLine::ValueArg< int > * notifyLevelArg
Definition: DtStealthCommandLineProcessor.h:45
makVrv::SwitchArg * noAppDataModelDefsLoadingArg
Definition: DtStealthCommandLineProcessor.h:99
makVrv::SwitchArg * hasNTPSyncArg
Definition: DtStealthCommandLineProcessor.h:96
DtCmdLine::MultiArg< std::string > * tacticalGraphicsDefsHierFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:70
virtual void processCommandLine(DtVrvApplicationConfiguration &appConfig, int argc, char **argv)
Parse the command line and modify the appConfig accordingly.
DtCmdLine::MultiArg< std::string > * entityDefsHierFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:66
DtStealthCommandLineProcessor()
Creator a command line processor for Vantage Stealth.
DtCmdLine::MultiArg< std::string > * modelDefsFileOrDir
Definition: DtStealthCommandLineProcessor.h:72
DtCmdLine::ValueArg< std::string > * factoryRootDir
Definition: DtStealthCommandLineProcessor.h:52
DtCmdLine::ValueArg< std::string > * appDataDir
Definition: DtStealthCommandLineProcessor.h:50
makVrv::SwitchArg * slaveModeArg
Definition: DtStealthCommandLineProcessor.h:43
DtCmdLine::ValueArg< std::string > * userDataDir
Definition: DtStealthCommandLineProcessor.h:49
makVrv::SwitchArg * noAppDataUnitDefsLoadingArg
Definition: DtStealthCommandLineProcessor.h:100
makVrv::SwitchArg * batchedRenderingArg
Definition: DtStealthCommandLineProcessor.h:92
DtCmdLine::MultiArg< std::string > * aggregateTypeMapFileOrDir
Definition: DtStealthCommandLineProcessor.h:74
makVrv::SwitchArg * ignoreZoomForSpeedtreeLodArg
Definition: DtStealthCommandLineProcessor.h:93
DtCmdLine::ValueArg< unsigned short > * numAlphaBitsArg
Definition: DtStealthCommandLineProcessor.h:88
DtCmdLine::MultiArg< std::string > * tacticalGraphicsTypeMapFileOrDir
Definition: DtStealthCommandLineProcessor.h:75
makVrv::SwitchArg * noAppDataEntityDefsLoadingArg
Definition: DtStealthCommandLineProcessor.h:98
DtCmdLine::ValueArg< std::string > * discoveredModelPreloadFilenameArg
Definition: DtStealthCommandLineProcessor.h:48
The DtVrvCommandLineProcessor is an interface for an application-specific command line parser...
Definition: DtVrvCommandLineProcessor.h:24
makVrv::SwitchArg * forceTextShapingArg
Definition: DtStealthCommandLineProcessor.h:115
DtCmdLine::ValueArg< unsigned short > * displayEnginePortArg
Definition: DtStealthCommandLineProcessor.h:55
The Stealth Application&#39;s command line processor.
Definition: DtStealthCommandLineProcessor.h:20
makVrv::SwitchArg * noAppDataUnitTypeMapLoadingArg
Definition: DtStealthCommandLineProcessor.h:103
DtCmdLine::ValueArg< std::string > * logFilenameArg
Definition: DtStealthCommandLineProcessor.h:46
DtCmdLine::ValueArg< std::string > * extraArgs
Definition: DtStealthCommandLineProcessor.h:119
DtCmdLine::ValueArg< std::string > * entityDefsDir
Definition: DtStealthCommandLineProcessor.h:105
This owns a list of window configurations.
Definition: DtDisplayConfiguration.h:47
DtCmdLine::MultiArg< std::string > * mappingsConfig
Definition: DtStealthCommandLineProcessor.h:61
makVrv::SwitchArg * disableDynamicTerrainArg
Definition: DtStealthCommandLineProcessor.h:121
DtCmdLine::ValueArg< std::string > * dataDir
Definition: DtStealthCommandLineProcessor.h:51
DtCmdLine::MultiArg< std::string > * entityDefsLeafFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:67
DtCmdLine::ValueArg< unsigned short > * antiAliasingArg
Definition: DtStealthCommandLineProcessor.h:89
This owns a list of display engine configurations.
Definition: DtVrvApplicationConfiguration.h:27
DtCmdLine::MultiArg< std::string > * autoDriverArg
Definition: DtStealthCommandLineProcessor.h:60
DtCmdLine::ValueArg< std::string > * modelPreloadFilenameArg
Definition: DtStealthCommandLineProcessor.h:47
makVrv::SwitchArg * disableKdTreesArg
Definition: DtStealthCommandLineProcessor.h:113
makVrv::SwitchArg * noAppDataTacticalGraphicsDefsLoadingArg
Definition: DtStealthCommandLineProcessor.h:101
makVrv::SwitchArg * disableTerrainObserverViewsArg
Definition: DtStealthCommandLineProcessor.h:65
DtCmdLine::ValueArg< double > * tcpSendTimeout
Definition: DtStealthCommandLineProcessor.h:83
virtual ~DtStealthCommandLineProcessor()
DTOR.
DtCmdLine::MultiArg< std::string > * connectToDisplayEnginesArg
Definition: DtStealthCommandLineProcessor.h:56
makVrv::SwitchArg * noGui
Definition: DtStealthCommandLineProcessor.h:81
A simple switch argument.
Definition: DtVrvCmdSwitchArg.h:42
DtCmdLine::MultiArg< std::string > * aggregateDefsLeafFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:69
makVrv::SwitchArg * pseudoFullScreen
Definition: DtStealthCommandLineProcessor.h:79
DtCmdLine::MultiArg< std::string > * observerStateArg
Definition: DtStealthCommandLineProcessor.h:62
DtCmdLine::ValueArg< std::string > * localeArg
Definition: DtStealthCommandLineProcessor.h:44
DtCmdLine::ValueArg< std::string > * loadDisplayConfig
Definition: DtStealthCommandLineProcessor.h:57
DtCmdLine::UnlabeledMultiArg< std::string > * fileToOpenArg
Definition: DtStealthCommandLineProcessor.h:42
DtCmdLine::ValueArg< double > * autoReconnectPeriod
Definition: DtStealthCommandLineProcessor.h:84
makVrv::SwitchArg * noAppDataTacticalGraphicsTypeMapLoadingArg
Definition: DtStealthCommandLineProcessor.h:104
DtCmdLine::MultiArg< std::string > * loadObserverViewsArg
Definition: DtStealthCommandLineProcessor.h:63
makVrv::SwitchArg * enableVSync
Definition: DtStealthCommandLineProcessor.h:82
makVrv::SwitchArg * useReverseZBufferArg
Definition: DtStealthCommandLineProcessor.h:118
makVrv::SwitchArg * noAppDataEntityTypeMapLoadingArg
Definition: DtStealthCommandLineProcessor.h:102
DtCmdLine::MultiArg< std::string > * addPlugin
Definition: DtStealthCommandLineProcessor.h:53
DtCmdLine::MultiArg< std::string > * bindObserverStateArg
Definition: DtStealthCommandLineProcessor.h:64
DtCmdLine::MultiArg< std::string > * tacticalGraphicsDefsLeafFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:71
DtDisplayConfiguration embeddedDisplayConfig() const
Create a default embedded display config for the stealth (to be used if no config was loaded via comm...
makVrv::SwitchArg * disableErrorDialogArg
used by the autotest plugin to avoid stalling the tests when a terrain is missing.
Definition: DtStealthCommandLineProcessor.h:128
DtCmdLine::ValueArg< unsigned short > * numDepthBitsArg
Definition: DtStealthCommandLineProcessor.h:86
DtCmdLine::MultiArg< std::string > * aggregateDefsHierFilesOrDirs
Definition: DtStealthCommandLineProcessor.h:68
DtCmdLine::ValueArg< unsigned short > * frameRate
Definition: DtStealthCommandLineProcessor.h:91

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)