18 #include <vlutil/vlMachineTypes.h>
19 #include <vlutil/vlFilename.h>
20 #include <mtl/configVariable.h>
21 #include <mtl/multiConfigVariable.h>
22 #include <mtl/mtlEnvironment.h>
34 DtVrfSimOptions(
int argc,
char** argv,
const char* appName,
const char* appVersion);
37 virtual ~DtVrfSimOptions();
41 virtual bool readConfigurationFile(
const DtFilename& mtlFile);
45 virtual DtFloat64 entVrfDataTimeThreshold()
const;
48 virtual double rotationThreshold()
const;
51 virtual double translationThreshold()
const;
54 virtual double aggDimensionThreshold()
const;
58 virtual void setPublishZeroVelocityWhenPaused(
bool);
59 virtual bool publishZeroVelocityWhenPaused()
const;
64 virtual void setSetDeadReckoningAlgorithmToStaticOnPause(
bool);
65 virtual bool setDeadReckoningAlgorithmToStaticOnPause()
const;
67 virtual void setSendMessagesInNetworkProcess(
bool);
68 virtual bool sendMessagesInNetworkProcess()
const;
70 virtual void setSelfReflect(
bool use);
71 virtual bool selfReflect()
const;
75 virtual void setNumNetworkCallbackThreads(
unsigned n);
76 virtual unsigned numNetworkCallbackThreads()
const;
79 virtual bool useAbsoluteTimeStamps()
const;
82 virtual std::vector<DtString> additionalDestinationAddresses()
const;
85 virtual void setAdditionalDestinationAddresses(
const DtString& addresses);
88 virtual void setAdditionalDestinationAddresses(
const std::vector<DtString>& addresses);
91 virtual void setTaskVisualizationPublicationMode(
short state);
92 virtual short taskVisualizationPublicationMode()
const;
94 virtual void setUseDrawControlForTaskVisualizations(
bool);
95 virtual bool useDrawControlForTaskVisualizations()
const;
103 virtual void setNonVrfObjectsUUIDScheme(
const DtString&);
104 virtual DtString nonVrfObjectsUUIDScheme()
const;
108 virtual int statusUpdateHeartbeat()
const;
110 virtual bool connectionless()
const;
111 virtual bool disableRemoteDiscovery()
const;
116 virtual DtFilename simulationModelSetFilename()
const;
119 virtual bool forceParameterDbReload()
const;
126 virtual void setTargetFrameRate(
int rate);
127 virtual int targetFrameRate()
const;
131 virtual int clockMode()
const;
135 virtual void setDefaultParameterDatabasePath(
const DtFilename& path);
136 virtual const DtFilename& defaultParameterDatabasePath()
const;
140 virtual void setDefaultTerrainDatabasePath(
const DtFilename& path);
141 virtual const DtFilename& defaultTerrainDatabasePath()
const;
144 virtual DtFilename diGuyCharacterDataFile()
const;
147 virtual DtFilename diGuyAnimationsFile()
const;
151 virtual bool logFrameRateStats()
const;
152 virtual void setLogFrameRateStats(
bool yesOrNo);
155 virtual void setRejectMismatchedScenarioMessages(
bool);
156 virtual bool rejectMismatchedScenarioMessages()
const;
158 virtual bool enableNavigationLabDebugging()
const;
159 virtual void setEnableNavigationLabDebugging(
bool enable);
161 virtual int sessionId()
const;
162 virtual int appIdRangeMax()
const;
163 virtual void setAppIdRangeMax(
int);
164 virtual DtFilename batchFile()
const;
165 virtual DtFilename scenarioFile()
const;
166 virtual DtFilename terrainFile()
const;
168 virtual int frontEndProcessId()
const;
170 virtual void setStartInRunMode(
bool);
171 virtual bool startInRunMode()
const;
174 virtual void setDoNotUseConsole(
bool);
175 virtual bool usingConsole()
const;
177 virtual void setStartMinimized(
bool);
178 virtual bool startMinimized()
const;
181 virtual void setDaemonMode(
bool);
182 virtual bool daemonMode()
const;
185 virtual bool runInTimeManagementMode()
const;
187 virtual void setRunInTimeManagementMode(
bool yesNo);
189 virtual bool disableRequestUpdates()
const;
190 virtual void setDisableRequestUpdates(
bool yesNo);
192 virtual double heartbeatVariance()
const;
193 virtual void setHeartbeatVariance(
double variance);
196 virtual void setReuseEntityIdentifiersOnScenarioLoad(
bool);
197 virtual bool reuseEntityIdentifiersOnScenarioLoad()
const;
199 virtual void setLoadAllNavigationDataOnTerrainLoad(
bool);
200 virtual bool loadAllNavigationDataOnTerrainLoad()
const;
203 virtual void parseCmdLine();
205 virtual short simMgmtPduProcessLevel()
const;
207 virtual int cgfDispatcherReceivePort()
const;
208 virtual void setCgfDispatcherReceivePort(
int port);
211 virtual int tracyPort()
const;
212 virtual bool tracyPortSet()
const;
213 virtual void setTracyPort(
int port);
216 const std::vector<std::string>& pluginsToLoad()
const;
218 virtual void setLoadPluginIfVersionMismatch(
bool);
219 virtual bool loadPluginIfVersionMismatch()
const;
221 virtual void setPluginsDirectory(
const DtFilename&);
222 virtual const DtFilename& pluginsDirectory()
const;
224 virtual DtString additionalSystemScriptsDirectory()
const;
225 virtual void setAdditionalSystemScriptsDirectory(
const DtString&);
228 virtual void setDoNotUsePluginsDirectory(
bool b);
229 virtual bool doNotUsePluginsDirectory()
const;
232 virtual DtFilename outputFile()
const;
233 virtual void setOutputFile(
const DtFilename& s);
236 virtual void setNotifyLevel(DtNotifyLevelType
level);
238 virtual DtNotifyLevelType notifyLevel()
const;
245 virtual void setSendBackendLogToNetwork(
bool v);
246 virtual bool sendBackendLogToNetwork()
const;
251 virtual void setFullyLoadTerrain(
bool v);
252 virtual bool fullyLoadTerrain()
const;
258 virtual void setAssertOnBlockingTerrainCalls(
bool b);
259 virtual bool assertOnBlockingTerrainCalls()
const;
267 virtual void setHostAddress(
const DtString& address);
268 virtual DtString hostAddress()
const;
275 virtual void setReportedHostAddress(
const DtString& address);
276 virtual DtString reportedHostAddress()
const;
281 virtual void setAppDataDir(
const DtString&);
282 virtual DtString appDataDir()
const;
286 virtual void setupSettingsDirectory(
const DtFilename& f,
bool useSharedSettingsDirectory);
290 virtual void setSharedDataDir(
const DtFilename&);
291 virtual DtFilename sharedDataDir()
const;
296 virtual bool isSharedDataDirSet()
const;
301 virtual void setSharedDataRoot(
const DtFilename&);
302 virtual DtFilename sharedDataRoot()
const;
307 virtual bool isSharedDataRootSet()
const;
312 virtual void setSharedDataStem(
const DtString&);
313 virtual DtString sharedDataStem()
const;
318 virtual bool isSharedDataStemSet()
const;
323 virtual void setDataDir(
const DtString&);
329 virtual bool isDataDirSet()
const;
334 virtual void setUserDataDir(
const DtString&);
335 virtual DtString userDataDir()
const;
340 virtual bool isUserDataDirSet()
const;
345 virtual void setMsdlSidcMappingFile(
const DtString& address);
346 virtual DtFilename msdlSidcMappingFile()
const;
351 virtual void setCountryCodesMappingFile(
const DtString& address);
352 virtual DtFilename countryCodesMappingFile()
const;
356 virtual void outputMtl();
358 virtual void setMainThreadWaitForQueue(
bool enable);
359 virtual void setNumCallbackThreads(
unsigned n);
361 virtual void setDisableParallelTick(
bool use);
362 virtual void setIssueSimExitOnFinishTestCommand(
bool shouldExit);
364 virtual void setEnableMetoc(
bool enable);
366 virtual bool mainThreadWaitForQueue()
const;
367 virtual unsigned numCallbackThreads()
const;
368 virtual bool disableParallelTick()
const;
369 virtual bool enableMetoc()
const;
370 virtual bool issueSimExitOnFinishTestCommand()
const;
372 virtual void setDisableParallelPublisherTick(
bool);
373 virtual bool disableParallelPublisherTick()
const;
375 virtual void setTickPublishersDuringEntityTick(
bool);
376 virtual bool tickPublishersDuringEntityTick()
const;
378 virtual DtFilename testLogFile()
const;
380 virtual void setGamewareMemorySize(
int sizeInMb);
381 virtual int gamewareMemorySize()
const;
383 virtual void setGamewareQueryTimeBudget(
double ms);
384 virtual double gamewareQueryTimeBudget()
const;
386 virtual void setRegenerateNavigationDataAtRuntime(
bool v);
387 virtual bool regenerateNavigationDataAtRuntime()
const;
389 virtual void setMaxNavigationRegenerationThreads(
int threads);
390 virtual int maxNavigationRegenerationThreads()
const;
392 virtual void setNumberOfNavQueueProcessingThreads(
int threads);
393 virtual int numberOfNavQueueProcessingThreads()
const;
395 virtual void setNavigationRegenerationFileDirectory(
const DtString& dir);
396 virtual DtFilename navigationRegenerationFileDirectory()
const;
398 virtual void setNavigationRegenerationDelay(
double delay);
399 virtual double navigationRegenerationDelay()
const;
401 virtual void setEnableLogFileTimestamps(
bool v);
402 virtual bool enableLogFileTimestamps()
const;
405 virtual void setUseSingleNetworkThreadWhenRtiThreadSafetyNotGuaranteed(
bool v);
406 virtual bool useSingleNetworkThreadWhenRtiThreadSafetyNotGuaranteed()
const;
408 virtual void setExpectedLocalEntityCount(
int v);
409 virtual int expectedLocalEntityCount()
const;
413 virtual void setMainThreadToHighPriority(
bool);
418 virtual std::vector<DtString> enabledChannels()
const;
423 virtual bool suppressDataAvailableException()
const;
424 virtual void setSuppressDataAvailableException(
bool);
429 virtual bool enablePduProfiling(
double& pduTime,
int& numberOfPackets
431 ,
bool& includeSummary
435 DtApplicationSettings&
settings() {
return mySettings; };
441 virtual void initializeMtlParams();
446 virtual void setVariablesFromMtl();
447 virtual void processStringList(std::vector<DtString>& v,
const std::vector<DtString>& list)
const;
450 virtual void initPluginVariables();
453 virtual void processPluginsDirectory(
const DtFilename& directory);
464 DtConfigVariable<DtString> mySimulationModelSetFile;
467 DtConfigVariable<DtString> myBatchFile;
470 DtConfigVariable<int> myTargetFrameRate;
473 DtConfigVariable<int> myClockMode;
478 DtConfigVariable<int> mySessionId;
481 DtConfigVariable<int> myAppIdRangeMax;
484 DtConfigVariable<DtString> myScenarioFile;
487 DtConfigVariable<DtString> mySharedSettingsDirectory;
490 DtConfigVariable<bool> myUseUserSettingsDirectory;
493 DtConfigVariable<DtString> myTerrainFile;
499 DtConfigVariable<DtString> mySharedDataDir;
502 DtConfigVariable<DtString> mySharedDataRoot;
505 DtConfigVariable<DtString> mySharedDataStem;
508 DtConfigVariable<DtString> myDIGuyCharacterDataFile;
509 DtConfigVariable<DtString> myDIGuyAnimationsFile;
513 DtConfigVariable<DtString> mySettingsFile;
516 DtConfigVariable<DtString> myAppDataDir;
519 DtConfigVariable<DtString> myDataDir;
522 DtConfigVariable<DtString> myUserDataDir;
525 DtConfigVariable<DtString> myAdditionalSystemScriptsDirectory;
528 DtConfigVariable<int> myFrontEndPID;
530 DtConfigVariable<bool> myCmdConnectionless;
531 DtConfigVariable<bool> myCmdDisableRemoteDiscovery;
534 DtConfigVariable<bool> myCmdDaemonMode;
553 DtConfigVariable<bool> myCmdRunInTimeManagementMode;
563 DtString myAdditionalDestinationAddresses;
566 short myReuseEntityIdentifiersOnScenarioLoad;
569 int myCgfDispatcherReceivePort;
573 int myStatusUpdateHeartbeat;
574 short myForceParameterDbReload;
577 short myLogFrameRateStatistics;
579 short myEnableNavigationLabDebugging;
581 DtFilename myDefaultParameterDatabasePath;
582 DtFilename myDefaultTerrainDatabasePath;
585 short myStartInRunMode;
588 short myDoNotUseConsole;
589 short myStartMinimized;
592 DtFilename myPluginsDirectory;
596 DtConfigVariable<bool> myCmdNotUsingConsole;
597 DtConfigVariable<bool> myCmdStartMinimized;
599 DtConfigVariable<bool> myCmdStartInRunMode;
600 DtConfigVariable<bool> myCmdDoNotUsePluginsDirectory;
602 DtConfigVariable<bool> myCmdLogFrameRateStatistics;
604 DtMultiConfigVariable<std::string> myPluginFiles;
606 DtMultiConfigVariable<DtString> myEnabledChannels;
608 std::vector<std::string> myPluginsToLoad;
609 bool myDoNotUsePluginsDirectory;
610 DtConfigVariable<DtString> myOutputFile;
613 short mySimMgmtPduProcessLevel;
615 short myLoadPluginIfVersionMismatch;
618 int myObjectConsoleNotifyLevel;
619 short mySendBackendLogToNetwork;
621 DtConfigVariable<bool> myCmdFullyLoadTerrain;
622 short myFullyLoadTerrain;
624 short myAssertOnBlockingTerrainCalls;
625 short myPublishZeroVelocityWhenPaused;
626 short mySetDeadReckoningAlgorithmToStaticOnPause;
627 short mySendMessagesInNetworkProcess;
628 short myLoadAllNavigationDataOnTerrainLoad;
633 DtConfigVariable<DtString> myHostAddress;
635 DtConfigVariable<DtString> myMsdlSidcMappingFile;
636 DtConfigVariable<DtString> myCountryCodesMappingFile;
638 DtConfigVariable<int> myTracyPort;
639 DtConfigVariable<int> myCmdNumCallbackThreads;
640 DtConfigVariable<bool> myCmdMainThreadWaitForQueue;
641 DtConfigVariable<bool> myCmdDisableParallelTick;
642 DtConfigVariable<bool> myCmdDisableParallelPublisherTick;
647 short myDisableParallelPublisherTick;
648 DtConfigVariable<bool> myCmdTickPublishersDuringEntityTick;
649 short myTickPublishersDuringEntityTick;
651 DtConfigVariable<bool> myCmdIssueSimExitOnFinishTestCommand;
652 DtConfigVariable<DtString> myCmdLogTestFilename;
654 DtConfigVariable<bool> myCmdEnableMetoc;
656 short myMainThreadWaitForQueue;
657 short myDisableParallelTick;
659 short myIssueSimExitOnFinishTestCommand;
662 DtConfigVariable<bool> myCmdSetMainThreadToHighPriority;
663 short mySetMainThreadToHighPriority;
671 int myGamewareMemorySize;
672 double myGamewareQueryTimeBudget;
673 short myRegenerateNavigationDataAtRuntime;
674 int myMaxNavigationRegenerationThreads;
675 int myNumberOfNavQueueProcessingThreads;
676 double myNavigationRegenerationDelay;
677 DtFilename myNavigationRegenerationFileDirectory;
679 short myEnableLogFileTimestamps;
681 short myRejectMismatchedScenarioMessages;
683 DtConfigVariable<bool> myCmdSuppressDataAvailableException;
684 int mySuppressDataAvailableException;
DtConfigVariable< bool > myCmdUseAbsoluteTimeStamps
Definition: vrfSimOptions.h:548
DtApplicationSettings & settings()
Definition: vrfSimOptions.h:435
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
DtConfigVariable< int > myCmdNumNetworkCallbackThreads
Definition: vrfSimOptions.h:549
Options for the configuring the sim.
Definition: vrfSimOptionsInterface.h:20
DtConfigVariable< bool > myCmdSelfReflect
Definition: vrfSimOptions.h:550
short myTaskVisualizationPublicationMode
Definition: vrfSimOptions.h:541
class DtVrfPluginRecordManager:
Definition: vrfPluginRecordManager.h:24
Definition: vrfSimOptions.h:15
DtFloat64 myDefaultAggDimensionThreshold
Definition: vrfSimOptions.h:547
#define DT_DLL_vrlinkNetworkInterface
This file is used to determine how to build.
Definition: vrlinkNetworkInterfaceDefines.h:24
Definition: vrfExtApplicationInitializer.h:20
DtFloat64 myDefaultTranslationThreshold
Default threshold values.
Definition: vrfSimOptions.h:545
DtFloat64 myDefaultRotationThreshold
Definition: vrfSimOptions.h:546
Contains the DtVrfExtApplicationInitializer class declaration.
DtFloat64 myEntVrfDataTimeThreshold
Definition: vrfSimOptions.h:540
int myDisableRequestUpdates
Definition: vrfSimOptions.h:559
std::vector< std::string > myPluginsToLoad
Definition: vrfSimOptions.h:474
int myRunInTimeManagementMode
Definition: vrfSimOptions.h:556
const std::vector< std::string > & pluginsToLoad() const
Returns plugins to load.
Definition: vrfSimOptions.h:543
DtConfigVariable< DtString > myCmdEnablePduProfiling
Turn on with flood check of a given time and/or a number of packets over that time: "0...
Definition: vrfSimOptions.h:646
int myExpectedLocalEntityCount
Definition: vrfSimOptions.h:668
DtConfigVariable< bool > myCmdDisableRequestUpdates
HLA only - flag indicating whether or not to request updates.
Definition: vrfSimOptions.h:558
short myUseDrawControlForTaskVisualizations
Definition: vrfSimOptions.h:542
DtConfigVariable< DtString > myNonVrfObjectsUUIDScheme
Definition: vrfSimOptions.h:539
short myUseSingleNetworkThreadWhenRtiThreadSafetyNotGuaranteed
Definition: vrfSimOptions.h:667