VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scenario.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include "vrfutil/vrfutilDefines.h"
13 #include <vlutil/vlString.h>
14 #include <vlutil/vlFilename.h>
15 #include <readerWriter/rwString.h>
16 #include <readerWriter/rwBoolean.h>
17 #include <readerWriter/rwReal.h>
18 #include "vrfutil/rwUnsigned.h"
19 #include <vrfutil/rwEntityType.h>
20 #include "vrfutil/rwUUID.h"
21 #include <readerWriter/rwInt.h>
22 #include "vrfutil/simClock.h"
25 #include "vrfutil/rwKeyValueList.h"
26 #include <vlpi/simulationAddress.h>
27 
28 #include <boost/unordered_map.hpp>
29 
31 #include <vrfmsgs/messageTypes.h>
32 
33 class DtlInoutStream;
34 
42 
47 
50 typedef bool (*DtPreserveMappingsFcn)(void* usr);
51 
53 {
54 public:
55 
57  DtScenario();
58 
60  DtScenario(const DtString & name,
61  DtReaderWriterRegistry * const parentRegistry = 0);
62 
64  virtual ~DtScenario() override;
65 
67  DtScenario(const DtScenario& orig);
68 
70  DtScenario& operator=(const DtScenario& orig);
71 
73  virtual bool init();
74 
76  virtual bool readScenarioFile(const DtFilename& filename);
77 
80  bool saveAsZipFile() const;
81  virtual void setSaveAsZipFile(bool);
82 
84  virtual bool save();
85 
88  static bool saveBufferToScenarioZipFile(const DtFilename& scenanarioZipFile, const DtFilename& zipContentsFile,
89  const DtString& buffer);
90  static bool saveBufferToScenarioZipFile(const DtFilename& scenanarioZipFile, const DtFilename& zipContentsFile,
91  const char* buffer, int length);
92 
96  static bool readBufferFromScenarioZipFile(const DtFilename& scenanarioZipFile, const DtFilename& zipContentsFile,
97  DtString& buffer, bool onlyNeedsExtensionMatch = true);
98 
100  static bool fileExistsInZipFile(const DtFilename& scenanarioZipFile, const DtFilename& zipContentsFile,
101  bool onlyNeedsExtensionMatch = true);
102 
105  static bool extractScenarioFileFromZipFile(const DtFilename& scenarioZipFile, const DtFilename& zipContentsFile,
106  bool onlyNeedsExtensionMatch = true);
107 
109  static bool readScenarioFromZipFile(const DtFilename& f, DtScenario& scenario);
110 
112  static bool saveFileToScenarioZipFile(const DtFilename& scenanarioZipFile, const DtFilename& zipContentsFile);
113 
115  static bool isScenarioZipFile(const DtFilename&);
116 
119  virtual DtString toXml(const DtFilename& scenarioFilename);
120 
122  virtual void setupScenarioFilenames(const DtFilename& scenarioFilename,
123  bool saveObjectMap = true);
124 
127  virtual bool save(const DtFilename& filename,
128  bool saveObjectMap = true);
129 
132  virtual DtScenario* clone() const;
133 
135  virtual void setComponentAttachmentTableFilename(const DtFilename& filename);
136  virtual const DtFilename& componentAttachmentTableFilename() const;
139  virtual void setTerrainDatabaseFilename(const DtFilename& filename);
140  virtual const DtFilename& terrainDatabaseFilename() const;
141 
143  virtual void setGuiTerrainDatabaseFilename(const DtFilename& filename);
144  virtual const DtFilename& guiTerrainDatabaseFilename() const;
145 
147  virtual void setOrderOfBattleFilename(const DtFilename& filename);
148  virtual DtFilename orderOfBattleFilename() const;
149 
151  virtual void setScenarioScriptsFilename(const DtFilename& filename);
152  virtual DtFilename scenarioScriptsFilename() const;
153 
155  virtual void setOrbatFilename(const DtFilename& filename);
156  virtual DtFilename orbatFilename() const;
157 
159  virtual void setPlanFilename(const DtFilename& filename);
160  virtual DtFilename planFilename() const;
161 
163 
164  virtual void setGlobalPlanFilename(const DtFilename& filename);
165  virtual DtFilename globalPlanFilename() const;
167 
169  virtual void setParameterDatabaseFilename(const DtFilename& filename);
170  virtual const DtFilename& parameterDatabaseFilename() const;
171 
173  virtual void setPhysicalWorldFilename(const DtFilename& filename);
174  virtual const DtFilename& physicalWorldFilename() const;
175 
177  virtual void setObjectMapFilename(const DtFilename& filename);
178  virtual DtFilename objectMapFilename() const;
179 
182  virtual void setOverlayFilename(const DtFilename& filename);
183  virtual DtFilename overlayFilename() const;
184 
186  virtual void setSelectionGroupsFilename(const DtFilename& filename);
187  virtual DtFilename selectionGroupsFilename() const;
188 
191  virtual void setSymbolMapFilename(const DtFilename& filename);
192  virtual const DtFilename& symbolMapFilename() const;
193 
196  virtual void setCreateMenuFilename(const DtFilename& filename);
197  virtual const DtFilename& createMenuFilename() const;
198 
202  virtual void setForceHostilityFilename(const DtFilename& filename);
203  virtual DtFilename forceHostilityFilename() const;
204 
208  virtual void setScenarioExtrasFilename(const DtFilename& f);
209  virtual DtFilename scenarioExtrasFilename() const;
211 
217  virtual void setUseDayNightIlluminationModel(bool);
218  virtual bool useDayNightIlluminationModel() const;
219 
221  virtual void setTimeMultiplier(DtReal multiplier);
222  virtual DtReal timeMultiplier() const;
223 
225  virtual void setAutoReorganize(const bool& flag);
226  virtual const bool& autoReorganize() const;
227 
229  virtual void setRandomNumberSeed(long int numberSeed);
230  virtual long int randomNumberSeed() const;
231 
233  virtual DtString frameRateModeString() const;
234  virtual DtFrameMode frameRateMode() const;
235  virtual void setFrameRateModeString(DtString value);
236  virtual void setFrameRateMode(DtFrameMode value);
237 
239  virtual DtReal frameDeltaTime() const;
240  virtual void setFrameDeltaTime(DtReal value);
241 
244  virtual DtTime runDurationTime() const;
245  virtual void setRunDurationTime(DtTime time);
246 
248  virtual void setSimTime(DtTime time);
249  virtual DtTime simTime() const;
250 
252  virtual void setExerciseStartDateAndTime(int year, int month, int day, int hour, int minute, int second);
253 
255  virtual void setExerciseStartDateAndTime(DtTime time);
256 
258  virtual void setExerciseStartTime(DtTime time);
259 
261  virtual DtTime exerciseStartTime() const;
262 
267  virtual void setSetScenarioStartTimeAtSpecifiedLocalTimeOnFirstObjectCreation(bool, int i = 10 * 3600);
268  virtual int setScenarioStartTimeAtSpecifiedLocalTimeOnFirstObjectCreation() const;
269  virtual bool shouldSetScenarioStartTimeAtSpecifiedLocalTimeOnFirstObjectCreation() const;
270 
273  virtual void setCreateGlobalEnvironment(bool b);
274  virtual bool createGlobalEnvironment() const;
276 
280  virtual void setCreateGlobalDynamicTerrain(bool b);
281  virtual bool createGlobalDynamicTerrain() const;
283 
287  virtual DtRwNLengthStringVector& additionalOpdFilenames();
288  virtual const DtRwNLengthStringVector& additionalOpdFilenames() const;
289  virtual void addAdditionalOpdFilename(const DtString&);
290  virtual void removeAdditonalOpdFilename(int iIndex);
291  virtual void setAdditionalOpdFilenames(const DtRwNLengthStringVector&);
293 
296  virtual void setScenarioDescription(const DtString&);
297  virtual DtString scenarioDescription() const;
298 
304  virtual DtRwNLengthStringVector& simulationModelSetFilenames();
305  virtual const DtRwNLengthStringVector& simulationModelSetFilenames() const;
306  virtual DtRwNLengthStringVector& unresolvedSimulationModelSetFilenames();
307  virtual const DtRwNLengthStringVector& unresolvedSimulationModelSetFilenames() const;
308  virtual void addSimulationModelSetFilename(const DtString&);
309  virtual void removeSimulationModelSetFilename(int iIndex);
310  virtual void setSimulationModelSetFilenames(const DtRwNLengthStringVector&);
311  virtual void setSimulationModelSetFilenames(const std::vector<DtFilename>&);
312  virtual void setSimulationModelSetFilenames(const std::vector<std::string>&);
314 
320 
321  virtual DtRwKeyValueList& scenarioData();
322  virtual const DtRwKeyValueList& scenarioData() const;
324 
327 
328  virtual DtString scenarioName() const;
329  virtual void setScenarioName(const DtString& name);
330  virtual bool scenarioNameSpecified() const;
332 
337  virtual void setGuiRuntimeLoadBalancingScheme(const DtString& scheme, const DtString& userData);
338  virtual void getGuiRuntimeLoadBalancingScheme(DtString& scheme, DtString& userData) const;
340 
344  virtual void setSimRemoteAttachmentBalancingScheme(const DtString& scheme, const DtString& userData);
345  virtual void getSimRemoteAttachmentBalancingScheme(DtString& scheme, DtString& userData) const;
347 
353  static DtFilename validTerrainFile(const DtFilename&);
354 
356  virtual bool isParameterDatabaseRwStringSpecified();
357  virtual bool isPhysicalWorldRwStringSpecified();
358  virtual bool isOrderOfBattleRwStringSpecified();
359  virtual bool isScenarioScriptsRwStringSpecified();
360  virtual bool isOrbatRwStringSpecified();
361  virtual bool isOverlayRwStringSpecified();
362  virtual bool isSelectionGroupsRwStringSpecified();
363  virtual bool isSymbolMapRwStringSpecified();
364  virtual bool isCreateMenuRwStringSpecified();
365  virtual bool isPlanRwStringSpecified();
366  virtual bool isObjectMapRwStringSpecified();
367  virtual bool isTimeMultiplierSpecified();
368  virtual bool isAutoReorganizeRwStringSpecified();
369  virtual bool isRandomNumberSeedSpecified();
370  virtual bool isFrameRateModeSpecified();
371  virtual bool isRunDurationTimeSpecified();
372  virtual bool isFrameDeltaTimeSpecified();
373  virtual bool isSimTimeSpecified();
374  virtual bool isExerciseStartTimeSpecified();
375  virtual bool isForceHostilityRWStringSpecified();
376  virtual bool isScenarioExtrasRWStringSpecified();
377 
378  virtual void setFilename(const DtFilename&);
379  virtual const DtFilename& filename() const;
380 
382  virtual bool writeScenarioFile(const DtFilename & filename);
383 
386  virtual void putSelf(std::string& fp, int indentLevel = 0, bool writeUnspecified = false,
387  const DtFilename& path = DtReaderWriter::appPath()) override;
388 
389  virtual void putSelf(DtEnvironmentSP env, DtEnvValueSP parent) const override;
390 
393  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
394  const DtVariableBindingsList& variableBindings) override;
395  virtual void getSelf(const DtEnvironmentSP env, const DtEnvValueSP root,
396  const DtReaderWriter::SearchPaths& searchPaths, const DtVariableBindingsList& varBindings) override;
397 
399  virtual void finalizeGetSelf();
400 
404  virtual bool isValid(bool allowEmptyFilenames = true, DtString* retMessage = 0) const;
405 
407  virtual double version() const;
408 
410  virtual bool relativeToScenarioFile() const;
411 
413  virtual void setToCurrentVersion();
414 
416  static double currentScenarioVersion();
417 
421  virtual void updateSimulationModelSetFilenames();
422 
425  static DtFilename reworkDataDirectory(const DtFilename&, DtFilename* unresolvedFilename = nullptr);
426 
428  static DtFilename replaceDirectoryWithAppropriateVariable(const DtFilename&);
429  static DtString replaceDirectoryWithAppropriateVariable(const DtString&);
430 
432  virtual void resolveSimulationModelSetPaths();
433 
435  virtual void resolveDataPaths();
436 
437 public:
438 
439  static DtString getFrameModeNameFromFrameModeType(DtFrameMode);
440 
441  static DtFrameMode getFrameModeTypeFromFrameModeName(
442  const DtString& frameModeName);
443 
444 protected:
455  virtual DtFilename absoluteFilename(const DtFilename&) const;
456 
457 protected:
458 
461  DtFilename myFilename;
462 
465 
468 
471 
474 
477 
478  DtFilename myOrbatFilename;
480 
481  DtFilename myPlanFilename;
483 
486 
489 
490  DtFilename myOverlayFilename;
492 
495 
498 
501 
504 
507 
510 
512 
515 
517 
521 
523 
526 
530 
533 
536 
538 
540 
543 
546 
547 protected:
548 
564 
565  static double theScenarioVersion;
566 };
567 
568 class DtAddressMap;
569 class DtList;
570 class DtBackendMap;
571 class DtVrfFileParser;
572 
575 typedef bool (*DtLoadBalancingFcn)(DtAddressMap* map, const DtVrfFileParser* parser, const DtList* backends,
576  bool& remapped, void* usr, const DtString& userOptions);
577 typedef bool (*DtLoadBalancingCheckFcn)(const DtList* backends, void* usr, const DtString& userOptions, DtString& error);
578 
579 typedef bool (*DtRemappingFcn)(DtBackendMap* map, const std::set<DtSimulationAddress>& expectedBackends, void* usr);
580 
582 {
583 public:
584  enum Flag
585  {
586  InternalUseOnly = 0x00000000,
587  ShowOnLoadDialog = 0x00000001,
588  ShowOnScenarioDialog = 0x00000002,
589  DefaultSelection = 0x00000004,
590  RemoteConfiguration = 0x00000008,
591  ShowOnAll = ShowOnScenarioDialog | ShowOnLoadDialog | RemoteConfiguration
592  };
593 
595  DtLoadBalancingFcnInfo(const std::string&, DtLoadBalancingFcn fcn, void*, DtLoadBalancingCheckFcn checkFcn = nullptr, int flag = ShowOnLoadDialog);
597 
599 
600  bool showOnScenarioDialog() const { return ((myFlags & ShowOnScenarioDialog) != 0); };
601  bool showOnLoadDialog() const { return ((myFlags & ShowOnLoadDialog) != 0); };
602  bool showOnRemoteConfiguration() const { return ((myFlags & RemoteConfiguration) != 0); };
603  int flags() const { return myFlags; };
604 
605  std::string myLoadBalancer;
609  int myFlags = ShowOnLoadDialog;
610 };
611 
618 const int DtSimulationObjectGroupCreationMode = 0x00000040;
620 const int DtImportDuplicateScenarioObjects = 0x00000100;
621 const int DtReinitializeReuseEntityIdentifier = 0x00000200;
622 
625 const int DtDefaultScenarioImportFlags = DtImportScenarioCreateUniqueNamesOnImport | DtImportScenarioImportScenarioEvents;
626 
629 
630 const int DtImportScenarioDefaultFlags = DtImportScenarioCreateUniqueNamesOnImport | DtImportScenarioImportScenarioEvents |
632 const int DtSimulationObjectGroupDefaultFlags = DtImportScenarioCreateUniqueNamesOnImport | DtImportScenarioImportScenarioEvents |
633  DtImportScenarioCreateSelectionGroup | DtSimulationObjectGroupPreserveForceInformation | DtSimulationObjectGroupAltitudesAreAboveTerrain;
634 
636 {
637 public:
639  DtScenarioLoadInformation(bool createAsNew, DtScenario*, DtLoadBalancingFcnInfo, DtRemappingFcn fcn = 0, void* remappingUsrData = 0,
640  time_t startTimeOfDay = 0, bool import = false, const DtSimulationAddress& address = DtSimSendToAll);
642 
644 
645 public:
652  bool myImport;
653  DtSimulationAddress myImportLoadAddress;
654 };
655 
657 {
658  DtSimulationObjectGroupSaveInformation() : groupCreationFlags(DtSimulationObjectGroupDefaultFlags),
659  storedInZipFile(true)
660  {
661  };
662 
668 
670  {
671  return ((rootDirectory == rhs.rootDirectory) &&
672  (groupName == rhs.groupName) &&
674  (label == rhs.label) &&
675  (menuIcon == rhs.menuIcon) &&
677  (categories == rhs.categories) &&
678  (storedInZipFile == rhs.storedInZipFile) &&
680  }
681 
682  bool operator!=(const DtSimulationObjectGroupSaveInformation& rhs) const { return !(*this == rhs); };
683 
684  DtFilename rootDirectory;
685  std::string groupName;
686  std::string groupDescription;
687  std::string menuIcon;
688  std::string label;
690  std::vector<DtString> categories;
691  std::map<DtString, DtString> additionalInformation;
693 };
DtFilename myObjectMapFilename
Definition: scenario.h:502
const int DtSimulationObjectGroupCreationMode
Definition: scenario.h:618
DtFilename myOverlayFilename
Definition: scenario.h:490
DtFilename myScenarioScriptsFilename
Definition: scenario.h:475
DtFilename myPlanFilename
Definition: scenario.h:481
bool showOnScenarioDialog() const
Definition: scenario.h:600
Class which holds a list of string key and string value pairs. This class is a DtReaderWriter, and also has associated DtBufferSerialize methods available.
Definition: rwKeyValueList.h:21
std::string menuIcon
Definition: scenario.h:687
DtRwString mySimRemoteAttachmentBalancingScheme
Definition: scenario.h:534
static DtString theOrbatExtension
Definition: scenario.h:552
DtFilename myGlobalPlanFilename
Definition: scenario.h:484
DtRwReal myRunDurationTime
Definition: scenario.h:522
bool(* DtLoadBalancingCheckFcn)(const DtList *backends, void *usr, const DtString &userOptions, DtString &error)
Definition: scenario.h:577
std::string label
Definition: scenario.h:688
const int DtReinitializeReuseEntityIdentifier
Definition: scenario.h:621
DtRwString myScenarioScriptsRwString
Definition: scenario.h:476
Definition: scenario.h:52
bool(* DtRemappingFcn)(DtBackendMap *map, const std::set< DtSimulationAddress > &expectedBackends, void *usr)
Definition: scenario.h:579
DtRwString myForceHostilityRwString
Definition: scenario.h:506
DtRwString myOverlayRwString
Definition: scenario.h:491
DtSimulationObjectGroupSaveInformation(const DtSimulationObjectGroupSaveInformation &orig)
Definition: scenario.h:663
static DtString theObjectMapExtension
Definition: scenario.h:559
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
bool myAutoReorganize
Definition: scenario.h:513
static DtString thePhysicalWorldFilenameExtension
Definition: scenario.h:549
DtRwString myGuiRuntimeLoadBalancingSchemeData
Definition: scenario.h:532
const char * filename
Definition: ioapi.h:38
DtRwReal myVersion
The version of the scenario file.
Definition: scenario.h:542
DtFilename myPhysicalWorldFilename
Definition: scenario.h:466
static DtString theSelectionGroupsExtension
Definition: scenario.h:554
std::map< DtString, DtString > additionalInformation
Definition: scenario.h:691
bool showOnRemoteConfiguration() const
Definition: scenario.h:602
Definition: readerWriter.h:85
DtFilename mySymbolMapFilename
Definition: scenario.h:496
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwString myCreateMenuRwString
Definition: scenario.h:500
DtFilename mySelectionGroupsFilename
Definition: scenario.h:493
DtRwReal myTimeMultiplier
Definition: scenario.h:511
DtRemappingFcn myRemappingFcn
Definition: scenario.h:649
bool operator!=(const DtSimulationObjectGroupSaveInformation &rhs) const
Definition: scenario.h:682
bool operator==(const DtSimulationObjectGroupSaveInformation &rhs) const
Definition: scenario.h:669
DtScenario * myScenario
Definition: scenario.h:647
Definition: readerWriterRegistry.h:39
Definition: scenario.h:581
Contains the DtUUID class declaration.
DtRwString myTerrainDatabaseRwString
Definition: scenario.h:464
DtRwString myPhysicalWorldRwString
Definition: scenario.h:467
DtRwString mySimRemoteAttachmentBalancingSchemeData
Definition: scenario.h:535
DtRwNLengthStringVector myAdditionalOpdFilenames
Definition: scenario.h:527
class DtBackendMap:
Definition: backendMap.h:21
DtFilename rootDirectory
Definition: scenario.h:682
bool mySaveAsZipFile
Whether or not to treat the file as a zip file when saving.
Definition: scenario.h:545
DtFilename myTerrainDatabaseFilename
Definition: scenario.h:463
DtFilename myOrderOfBattleFilename
Definition: scenario.h:472
Definition: addressMap.h:24
DtRwString myOrderOfBattleRwString
Definition: scenario.h:473
std::vector< DtString > categories
Definition: scenario.h:690
DtFilename myComponentAttachmentTableFilename
Definition: scenario.h:459
bool myCreateAsNew
Definition: scenario.h:646
const int DtSimulationObjectGroupDefaultFlags
Definition: scenario.h:632
const int DtSimulationObjectGroupUseGroupNameToDisambiguate
Definition: scenario.h:616
static DtString theSymbolMapExtension
Definition: scenario.h:555
static DtString theCreateMenuExtension
Definition: scenario.h:556
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
DtRwInt myRandomNumberSeed
Definition: scenario.h:516
File: vlClock.h.
Description: Readable, Writable int.
Definition: rwInt.h:25
DtRwString mySelectionGroupsRwString
Definition: scenario.h:494
const int DtImportDuplicateScenarioObjects
Definition: scenario.h:620
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwReal mySimTime
Definition: scenario.h:524
DtFilename myCreateMenuFilename
Definition: scenario.h:499
static DtString thePlanExtension
Definition: scenario.h:557
DtSimulationObjectGroupSaveInformation()
Definition: scenario.h:658
static double theScenarioVersion
Definition: scenario.h:565
DtLoadBalancingCheckFcn myLoadBalancingCheckFcn
Definition: scenario.h:607
DtFilename myFilename
Definition: scenario.h:461
DtRwString myGuiTerrainDatabaseRwString
Definition: scenario.h:470
const int DtImportScenarioCreateSelectionGroup
Definition: scenario.h:614
bool storedInZipFile
Definition: scenario.h:692
static DtString theScenarioScriptsExtension
Definition: scenario.h:551
int groupCreationFlags
Definition: scenario.h:689
static DtString theForceHostilityExtension
Definition: scenario.h:562
DtFilename myOrbatFilename
Definition: scenario.h:478
const int DtSimulationObjectGroupPreserveForceInformation
Definition: scenario.h:615
static DtString theFileExtension
Definition: scenario.h:561
DtRwString myGuiRuntimeLoadBalancingScheme
Definition: scenario.h:531
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
bool showOnLoadDialog() const
Definition: scenario.h:601
const int DtImportScenarioCreateUniqueNamesOnImport
Definition: scenario.h:612
Definition: asyncJobServer.h:39
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file. If write unspecified is true, will write entries that are uns...
DtFilename myScenarioExtrasFilename
Definition: scenario.h:508
DtFilename myGuiTerrainDatabaseFilename
Definition: scenario.h:469
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
DtLoadBalancingFcnInfo myInfo
Definition: scenario.h:648
static DtString theOverlayExtension
Definition: scenario.h:553
DtRwKeyValueList myScenarioData
Definition: scenario.h:539
DtFilename myParameterDatabaseFilename
Definition: scenario.h:487
bool(* DtPreserveMappingsFcn)(void *usr)
Used by saveScenario to determine if original (true) or new mappings should be saved.
Definition: vrfRemoteController.h:89
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwString myScenarioName
Definition: scenario.h:537
DtRwString myParameterDatabaseRwString
Definition: scenario.h:488
DtRwNLengthStringVector mySimulationModelSetFilenames
Definition: scenario.h:528
DtRwString myScenarioExtrasRWString
Definition: scenario.h:509
File: strIntMapper.h.
const int DtImportScenarioImportScenarioEvents
Definition: scenario.h:613
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtRwString myPlanRwString
Definition: scenario.h:482
DtSimulationAddress myImportLoadAddress
Definition: scenario.h:653
const int DtSimulationObjectGroupAllowAltitudePlacement
Definition: scenario.h:619
static DtString theOrderOfBattleExtension
Definition: scenario.h:550
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
std::string groupName
Definition: scenario.h:685
DtRwString mySymbolMapRwString
Definition: scenario.h:497
bool myImport
Definition: scenario.h:652
DtRwReal myExerciseStartTime
Definition: scenario.h:525
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
static DtString theScenarioDataExtension
Definition: scenario.h:563
Definition: vrfFileParser.h:30
DT_DLL_readerWriter std::shared_ptr< DtEnvironment > DtEnvironmentSP
Definition: readerWriter.h:30
virtual DtString toXml() const
Routines to archive/de-archive from an XML Environment.
Definition: scenario.h:656
DtFrameMode
Definition: messageTypes.h:459
void * myRemappingUserData
Definition: scenario.h:650
DtFrameMode myFrameRateMode
Definition: scenario.h:519
static DtString theGlobalPlanExtension
Definition: scenario.h:558
const int DtDefaultScenarioImportFlags
Default is not not import duplicate UUIDs. This will allow multiple scenarios that have the same base...
Definition: scenario.h:625
Flag
Definition: scenario.h:584
Definition: scenario.h:635
DtRwString myObjectMapRwString
Definition: scenario.h:503
const int DtSimulationObjectGroupAltitudesAreAboveTerrain
Definition: scenario.h:617
const int DtImportScenarioDefaultFlags
If this is on will generate new UUIDs for scenario objects on import and keep all duplicate objects I...
Definition: scenario.h:630
DtRwString myFrameRateModeString
Definition: scenario.h:518
DtRwString myOrbatRwString
Definition: scenario.h:479
DtRwString myGlobalPlanRwString
Definition: scenario.h:485
void * myLoadBalancingUserData
Definition: scenario.h:608
DtRwReal myFrameDeltaTime
Definition: scenario.h:520
time_t myStartTimeOfDay
Definition: scenario.h:651
DtLoadBalancingFcn myLoadBalancingFcn
Definition: scenario.h:606
DtRwString myComponentAttachmentTableRwString
Definition: scenario.h:460
static const DtFilename & appPath()
Gets the current working directory. The first time this accessor is called, it determines the current...
DtRwBoolean myAutoReorganizeRW
Definition: scenario.h:514
bool(* DtLoadBalancingFcn)(DtAddressMap *map, const DtVrfFileParser *parser, const DtList *backends, bool &remapped, void *usr, const DtString &userOptions)
Return true from this function to signal success of load balancing, however, set remapped to true if ...
Definition: scenario.h:575
static DtString theParameterDatabaseExtension
Definition: scenario.h:560
DtFilename myForceHostilityFilename
Definition: scenario.h:505
DtRwNLengthStringVector myResolvedSimulationModelSetFilenames
Definition: scenario.h:529
std::string groupDescription
Definition: scenario.h:686

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)