VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scenarioExplorer.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/scenario.h"
13 
14 #include <vector>
15 
24 
25 #include "vrfutil/vrfutilDefines.h"
27 {
28 public:
29 
32 
34  DtScenarioExplorer(const DtScenario& scenario);
35 
37  virtual ~DtScenarioExplorer();
38 
41 
43  DtScenarioExplorer& operator=(const DtScenarioExplorer& orig);
44 
46 
51  virtual bool init();
52 
54  virtual bool init(const DtSimulationModelSet& sms);
55 
57  virtual bool readScenarioFile(const DtFilename& filename);
58 
61  virtual DtFilename terrainDatabaseFilename() const;
62 
64  virtual DtFilename componentAttachmentTableFilename() const;
65 
67  virtual DtFilename orderOfBattleFilename() const;
68 
70  virtual DtFilename scenarioScriptsFilename() const;
71 
73  virtual DtFilename orbatFilename() const;
74 
76  virtual DtFilename planFilename() const;
77 
79 
80  virtual DtFilename globalPlanFilename() const;
82 
84  virtual DtFilename parameterDatabaseFilename() const;
85 
86  virtual DtFilename forceHostilityFilename() const;
87 
88  virtual DtFilename scenarioExtrasFilename() const;
89 
91  virtual const std::vector<DtFilename>& physicalWorldFilenames() const;
92 
94  virtual const std::vector<DtFilename>& enumerationFilenames() const;
95 
97  virtual const std::vector<DtFilename>& detonationParametersFilenames() const;
98 
100  virtual const std::vector<DtFilename>& detonationTerrainDeformParametersFilenames() const;
101 
103  virtual const std::vector<DtFilename>& ammunitionParametersFilenames() const;
104 
106  virtual const std::vector<DtFilename>& indirectArtilleryTypesFilenames() const;
107 
109  virtual const std::vector<DtFilename>& commModelFilenames() const;
110 
112  virtual DtFilename objectMapFilename() const;
113 
115  virtual DtReal timeMultiplier() const;
116 
118  virtual bool autoReorganize() const;
119 
121  virtual long int randomNumberSeed() const;
122 
124  virtual DtString frameRateModeString() const;
125  virtual DtFrameMode frameRateMode() const;
126 
128  virtual DtReal frameDeltaTime() const;
129 
132  virtual DtTime runDurationTime();
133 
135  virtual DtTime simTime() const;
136 
138  virtual DtTime runDurationTime() const;
139 
141  virtual DtTime exerciseStartTime() const;
142 
146  virtual const std::vector<DtFilename>& additionalOpdFilenames() const;
148 
154  virtual DtRwNLengthStringVector simulationModelSetFilenames();
156 
157  virtual DtFilename filename() const;
158 
162  virtual bool isValid(bool allowEmptyFilenames = true) const;
163 
165  virtual double version() const;
166 
168  virtual void processModelSets();
169 
172  virtual void loadCoreModelSets();
173 
176  virtual void processSimulationModelSets(const std::vector<DtString>& smsFiles);
177 
179  virtual DtSimulationModelSet* createSimulationModelSet() const;
180 
181 public:
183 
186  std::vector<DtSimulationModelSet*>& modelSets();
187  const std::vector<DtSimulationModelSet*>& modelSets() const;
189 
192  virtual const std::vector<DtFilename>& modelSetForceFilenames() const;
193 
197  virtual const std::vector<DtFilename>& modelSetFilenames() const;
198 
200  virtual const std::vector<DtFilename>& unresolvedModelSetFilenames() const;
202 
204  DtScenario* scenario() const;
205 
206  virtual void addFilename(std::vector<DtFilename>&, const DtFilename& map) const;
207 
208  virtual void setSimulationModelSetFilenames(const std::vector<DtFilename>& s);
209  virtual void setSimulationModelSetFilenames(const DtRwNLengthStringVector&);
210 
211 protected:
212  virtual void clearModelSets();
213  virtual void mergeAdditionalOpdFiles();
214  virtual void processModelSet(DtSimulationModelSet*);
215 
216  virtual void processIncludedSMSs(std::vector<DtSimulationModelSet*>& loadedSets,
218 
233  virtual void loadIncludedSets(DtSimulationModelSet* set,
234  std::vector<DtSimulationModelSet*>& loadedSetsStarted,
235  std::vector<DtSimulationModelSet*>& loadedSetsCompleted,
236  DtReaderWriter::SearchPaths& parentSearchPaths,
237  DtReaderWriter::SearchPaths& childSearchPaths,
238  DtReaderWriter::SearchPaths& allPaths);
239 
240 protected:
245  std::vector<DtSimulationModelSet*> myModelSets;
246  std::vector<DtFilename> myPhysicalWorldFilenames;
247  std::vector<DtFilename> myDetonationParametersFilenames;
248  std::vector<DtFilename> myEnumerationFilenames;
249  std::vector<DtFilename> myDetTerrainDeformParametersFilenames;
250  std::vector<DtFilename> myAmmunitionParametersFilenames;
251  std::vector<DtFilename> myIndirectArtilleryTypesFilenames;
252  std::vector<DtFilename> myAdditionalOpdFilenames;
253  std::vector<DtFilename> myCommModelFilenames;
254 
256  std::vector<DtFilename> myModelSetForceFilenames;
257  std::vector<DtFilename> myModelSetFilenames;
258  std::vector<DtFilename> myUnresolvedModelSetFilenames;
259 };
260 
261 inline std::vector<DtSimulationModelSet*>& DtScenarioExplorer::modelSets(){return (myModelSets);}
262 inline const std::vector<DtSimulationModelSet*>& DtScenarioExplorer::modelSets() const{return (myModelSets);}
264 {
265  return myScenario;
266 }
std::vector< DtFilename > myCommModelFilenames
Definition: scenarioExplorer.h:253
std::vector< DtFilename > myAmmunitionParametersFilenames
Definition: scenarioExplorer.h:250
DtFilename myScenarioExtrasFilename
Definition: scenarioExplorer.h:244
std::vector< DtSimulationModelSet * > myModelSets
Definition: scenarioExplorer.h:245
Definition: scenario.h:52
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
class DtScenarioExplorer:
Definition: scenarioExplorer.h:26
const char * filename
Definition: ioapi.h:38
DtFilename myForceHostilityFilename
Definition: scenarioExplorer.h:243
std::vector< DtFilename > myAdditionalOpdFilenames
Definition: scenarioExplorer.h:252
std::vector< DtFilename > myDetonationParametersFilenames
Definition: scenarioExplorer.h:247
std::vector< DtFilename > myDetTerrainDeformParametersFilenames
Definition: scenarioExplorer.h:249
std::vector< DtFilename > myModelSetForceFilenames
The following member variables are used in the front-end only.
Definition: scenarioExplorer.h:256
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
std::vector< DtFilename > myIndirectArtilleryTypesFilenames
Definition: scenarioExplorer.h:251
std::vector< DtFilename > myPhysicalWorldFilenames
Definition: scenarioExplorer.h:246
DtScenario * scenario() const
Returns scenario associated with explorer.
Definition: scenarioExplorer.h:263
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
std::vector< DtSimulationModelSet * > & modelSets()
The following methods are used for the front-end only.
Definition: scenarioExplorer.h:261
std::vector< DtFilename > myModelSetFilenames
Definition: scenarioExplorer.h:257
DtFilename myParameterDatabaseFilename
Definition: scenarioExplorer.h:242
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::vector< DtFilename > myUnresolvedModelSetFilenames
Definition: scenarioExplorer.h:258
std::vector< DtFilename > myEnumerationFilenames
Definition: scenarioExplorer.h:248
#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
DtFrameMode
Definition: messageTypes.h:459
DtScenario * myScenario
Definition: scenarioExplorer.h:241

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)