VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationModelSet.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 
13 #include <readerWriter/rwString.h>
14 #include <readerWriter/rwBoolean.h>
17 
18 #include <vlutil/vlFilename.h>
19 #include "vrfutil/vrfutilDefines.h"
20 
22 
32 {
33 public:
34 
37 
39  parentRegistry = NULL);
40 
42  virtual ~DtSimulationModelSet();
43 
46  DtReaderWriterRegistry* parentRegistry = NULL);
47 
50 
52  virtual bool load(const DtFilename&);
53 
60  virtual bool save(const DtFilename&, bool rebind = true);
61 
63  virtual bool save(bool rebind = true);
64 
66  const DtFilename& path() const;
67 
69 
70  const DtFilename& opdFile() const;
71  void setOpdFile(const DtFilename&);
73 
75 
76  const DtFilename& physicalWorldFile() const;
77  void setPhysicalWorldFile(const DtFilename&);
79 
81 
82  const DtFilename& detonationParametersFile() const;
83  void setDetonationParametersFile(const DtFilename&);
85 
87 
88  const DtFilename& detonationTerrainDeformParametersFile() const;
89  void setdetonationTerrainDeformParametersFile(const DtFilename&);
91 
93 
94  const DtFilename& ammunitionParametersFile() const;
95  void setAmmunitionParametersFile(const DtFilename&);
97 
99 
100  const DtFilename& indirectArtilleryTypesFile() const;
101  void setIndirectArtilleryTypesFile(const DtFilename&);
103 
105 
106  const DtFilename& commModelParameters() const;
107  void setCommModelParameters(const DtFilename&);
109 
111 
112  const DtString& comment() const;
113  void setComment(const DtString&);
115 
117 
118  const DtString& simulationObjectGroupConnection() const;
119  void setSimulationObjectGroupConnection(const DtString&);
121 
123 
124  virtual DtFilename defaultComponentAttachmentFile() const;
126  const DtFilename& filename() const;
128  virtual void setFilename(const DtFilename&);
129 
130  DtSimulationModelSet* clone() const;
131 
134  virtual DtFilename modelSetDirectory() const;
135 
137  virtual bool setModelSetDirectory(const DtFilename&);
138 
140 
141  DtComponentAttachmentList& componentAttachmentFileList();
142  const DtComponentAttachmentList& componentAttachmentFileList() const;
144 
146 
147  bool preloadParameters() const;
148  void setPreloadParameters(bool);
150 
153  virtual void setVisualDataInSharedData(bool);
154  virtual bool visualDataInSharedData() const;
156 
159  virtual void setReadOnly(bool);
160  virtual bool readOnly() const;
161 
164 
166  DtFilename getDataDirectory(bool warnOnFailure = true) const;
167 
169  DtFilename getGuiDirectory(bool warnOnFailure = true) const;
170 
172  DtFilename getVisualsDirectory(bool warnOnFailure = true) const;
173 
175  DtFilename getRecycleBin(bool warnOnFailure = true) const;
176 
177  DtFilename getRootDirectory(bool warnOnFailure = true) const;
178  DtFilename getScriptedMovementDirectory(bool warnOnFailure = true) const;
179  DtFilename getUIDirectory(bool warnOnFailure = true) const;
180 
181  DtFilename getSystemDirectory(bool warnOnFailure = true) const;
182  DtFilename getParametersDirectory(bool warnOnFailure = true) const;
183  DtFilename getAmmoSelectDirectory(bool warnOnFailure = true) const;
184  DtFilename getNavDataDirectory(bool warnOnFailure = true) const;
185  DtFilename getHitDirectory(bool warnOnFailure = true) const;
186  DtFilename getDamageDirectory(bool warnOnFailure = true) const;
187  DtFilename getDetectionDirectory(bool warnOnFailure = true) const;
188  DtFilename getFormationDirectory(bool warnOnFailure = true) const;
189  DtFilename getObjectGroupsDirectory(bool warnOnFailure = false) const;
191 
194  {
195  return myOriginalVariableBindings;
196  }
197 
199  {
200  return myOriginalVariableBindings;
201  }
202 
210  virtual void setValidatorString(const DtString&);
211  virtual const DtString& validatorString() const;
213 
215  virtual void saveVariableBindingsToOpdFile();
216 
217  const DtFilename& hostilityFile() const;
218  void setHostilityFile(const DtFilename& s);
219 
223  const DtFilename& scenarioDataFile() const;
224  void setScenarioDataFile(const DtFilename& n);
226 
228 
229  virtual std::vector<DtString> includedSMSs() const;
230  virtual void setIncludedSMSs(std::vector<DtString> smss);
232 
234 
235  virtual DtString shortName() const;
236  virtual void setShortName(DtString&);
238 
241 
242  virtual DtReaderWriter::SearchPaths searchPaths() const;
243  virtual void addSearchPaths(const DtReaderWriter::SearchPaths& searchPaths);
244  virtual void clearSearchPaths();
246 
247 protected:
249  virtual DtString createSubstitutedPath(const DtFilename&, const DtString& modelSetDir);
250  virtual void setupVariableSubstitutedPaths();
251  virtual void substituteVariablePaths();
252  virtual void resetVariables();
253 
255  virtual void placeOpdVariablesIntoVariableBindings();
256 
258  virtual DtReaderWriter* readOpdFile() const;
259 
261  virtual void substituteInVariables(const DtString& variable);
262 
263 protected:
277  DtFilename myPath;
278  DtFilename myFilename;
283 
285  DtFilename mySubOpdFile;
292  DtFilename mySubHostilityFile;
295 
297 
299 };
300 
301 inline void DtSimulationModelSet::setPhysicalWorldFile(const DtFilename& f)
302 {
304 }
305 
306 inline const DtFilename& DtSimulationModelSet::physicalWorldFile() const
307 {
308  return mySubPhysicalWorldFile;
309 }
310 
312 {
315  if (DtString(f).findChar('$') == 0)
316  {
318  }
319 
321 }
322 
323 inline const DtFilename& DtSimulationModelSet::detonationParametersFile() const
324 {
326 }
327 
329 {
330  if (DtString(f).findChar('$') == 0)
331  {
333  }
334 
336 }
337 
339 {
341 }
342 
344 {
347  if (DtString(f).findChar('$') == 0)
348  {
350  }
351 
353 }
354 
355 inline const DtFilename& DtSimulationModelSet::ammunitionParametersFile() const
356 {
358 }
359 
361 {
363 }
364 
365 inline const DtFilename& DtSimulationModelSet::indirectArtilleryTypesFile() const
366 {
368 }
369 
370 inline const DtFilename& DtSimulationModelSet::opdFile() const
371 {
372  return mySubOpdFile;
373 }
374 
375 inline void DtSimulationModelSet::setOpdFile(const DtFilename& f)
376 {
377  mySubOpdFile = f;
378 }
379 
380 inline const DtFilename& DtSimulationModelSet::commModelParameters() const
381 {
383 }
384 
385 inline void DtSimulationModelSet::setCommModelParameters(const DtFilename& f)
386 {
388 }
389 
391 {
393 }
394 
396 {
398 }
399 
400 inline const DtFilename& DtSimulationModelSet::filename() const
401 {
402  return myFilename;
403 }
404 
405 inline void DtSimulationModelSet::setFilename(const DtFilename& f)
406 {
407  myFilename = f;
408 }
409 
411 {
412  return myComment;
413 }
414 
416 {
417  myComment = c;
418 }
419 
421 {
422  return myPreloadParameters;
423 }
424 
426 {
428 }
429 
430 inline const DtFilename& DtSimulationModelSet::path() const
431 {
432  return myPath;
433 }
434 
435 inline const DtFilename& DtSimulationModelSet::hostilityFile() const
436 {
437  return mySubHostilityFile;
438 }
439 
440 inline void DtSimulationModelSet::setHostilityFile(const DtFilename& s)
441 {
443 }
444 
445 inline const DtFilename& DtSimulationModelSet::scenarioDataFile() const
446 {
447  return mySubScenarioDataFile;
448 }
449 
450 inline void DtSimulationModelSet::setScenarioDataFile(const DtFilename& s)
451 {
453 }
454 
456 {
457  return myValidatorString;
458 }
459 
461 {
463 }
464 
466 {
468 }
469 
471 {
473 }
DtFilename mySubScenarioDataFile
Definition: simulationModelSet.h:293
DtFilename myFilename
Definition: simulationModelSet.h:278
void setScenarioDataFile(const DtFilename &n)
Returns the scenario data file containing spawn templates, force hostility relationships,.
Definition: simulationModelSet.h:450
DtRwString myHostilityFile
Definition: simulationModelSet.h:271
const DtFilename & physicalWorldFile() const
Get/set physical world file.
Definition: simulationModelSet.h:306
DtRwBoolean myPreloadParameters
Definition: simulationModelSet.h:276
const DtFilename & filename() const
Filename that this simulation model set was originally loaded from.
Definition: simulationModelSet.h:400
DtRwBoolean myVisualDataInSharedData
Definition: simulationModelSet.h:280
void setdetonationTerrainDeformParametersFile(const DtFilename &)
Get/set detonation terrain deformation parameters file.
Definition: simulationModelSet.h:328
const char * filename
Definition: ioapi.h:38
DtReaderWriter::SearchPaths mySearchPaths
Definition: simulationModelSet.h:298
const DtString & simulationObjectGroupConnection() const
Get/set simulation object group connection file to use in entity editor when launching connections...
Definition: simulationModelSet.h:465
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwTemplatedListPtr< DtRwString, true > DtComponentAttachmentList
Definition: simulationModelSet.h:21
void setIndirectArtilleryTypesFile(const DtFilename &)
Get/set indirect artillery types file.
Definition: simulationModelSet.h:360
void setHostilityFile(const DtFilename &s)
Definition: simulationModelSet.h:440
Definition: readerWriterRegistry.h:39
DtFilename mySubPhysicalWorldFile
Definition: simulationModelSet.h:286
DtRwString myScenarioDataFile
Definition: simulationModelSet.h:272
virtual void setFilename(const DtFilename &)
Definition: simulationModelSet.h:405
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
virtual const DtString & validatorString() const
The string that will be parsed to find out which validator(s) are to be used to validate this sms (th...
Definition: simulationModelSet.h:455
DtRwString myValidatorString
Definition: simulationModelSet.h:274
DtFilename mySubDetonationTerrainDeformParametersFile
Definition: simulationModelSet.h:288
DtRwString myDetonationParametersFile
Definition: simulationModelSet.h:266
void setPhysicalWorldFile(const DtFilename &)
Get/set physical world file.
Definition: simulationModelSet.h:301
bool preloadParameters() const
Sets whether or not to preload parameters when loading the simulation model set. Default is false...
Definition: simulationModelSet.h:420
const DtString & comment() const
Get/set comment that will be written to top of file when saving out.
Definition: simulationModelSet.h:410
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwBoolean myReadOnly
Definition: simulationModelSet.h:281
const DtFilename & opdFile() const
Get/set object parameter database file.
Definition: simulationModelSet.h:370
DtRwVariableBindings * myOriginalVariableBindings
Definition: simulationModelSet.h:296
const DtFilename & ammunitionParametersFile() const
Get/set ammunition parameters file.
Definition: simulationModelSet.h:355
DtFilename myPath
Definition: simulationModelSet.h:277
DtString myComment
Definition: simulationModelSet.h:279
DtFilename mySubIndirectArtilleryTypesFile
Definition: simulationModelSet.h:290
const DtFilename & indirectArtilleryTypesFile() const
Get/set indirect artillery types file.
Definition: simulationModelSet.h:365
DtRwString myAmmunitionParametersFile
Definition: simulationModelSet.h:268
DtRwVariableBindings * originalVariableBindings()
Definition: simulationModelSet.h:198
DtRwString myIndirectArtilleryTypesFile
Definition: simulationModelSet.h:269
void setAmmunitionParametersFile(const DtFilename &)
Get/set ammunition parameters file.
Definition: simulationModelSet.h:343
const DtFilename & hostilityFile() const
Definition: simulationModelSet.h:435
const DtFilename & scenarioDataFile() const
Returns the scenario data file containing spawn templates, force hostility relationships,.
Definition: simulationModelSet.h:445
DtComponentAttachmentList myComponentAttachmentFileList
Definition: simulationModelSet.h:294
void setPreloadParameters(bool)
Sets whether or not to preload parameters when loading the simulation model set. Default is false...
Definition: simulationModelSet.h:425
DtRwString myCommModelParameters
Definition: simulationModelSet.h:270
DtRwString myOpdFile
Definition: simulationModelSet.h:264
void setOpdFile(const DtFilename &)
Get/set object parameter database file.
Definition: simulationModelSet.h:375
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwString myDetonationTerrainDeformParametersFile
Definition: simulationModelSet.h:267
const DtFilename & detonationTerrainDeformParametersFile() const
Get/set detonation terrain deformation parameters file.
Definition: simulationModelSet.h:338
void setCommModelParameters(const DtFilename &)
Get/set communications model file.
Definition: simulationModelSet.h:385
DtRwString myPhysicalWorldFile
Definition: simulationModelSet.h:265
DtRwString myShortname
Definition: simulationModelSet.h:282
DtFilename mySubAmmunitionParametersFile
Definition: simulationModelSet.h:289
#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
void setComment(const DtString &)
Get/set comment that will be written to top of file when saving out.
Definition: simulationModelSet.h:415
const DtFilename & path() const
The path that is used as the relative (or absolute) path to load all internal files from...
Definition: simulationModelSet.h:430
const DtFilename & detonationParametersFile() const
Get/set detonation parameters file.
Definition: simulationModelSet.h:323
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
const DtFilename & commModelParameters() const
Get/set communications model file.
Definition: simulationModelSet.h:380
DtRwString mySimulationObjectGroupConnection
Definition: simulationModelSet.h:275
virtual void setUnsubstitutedString(const DtString &)
Sets the unsubstitude string value. Should not be called unless this is really an unsubstitude string...
DtFilename mySubCommModelParameters
Definition: simulationModelSet.h:291
DtFilename mySubDetonationParametersFile
Definition: simulationModelSet.h:287
void setDetonationParametersFile(const DtFilename &)
Get/set detonation parameters file.
Definition: simulationModelSet.h:311
void setSimulationObjectGroupConnection(const DtString &)
Get/set simulation object group connection file to use in entity editor when launching connections...
Definition: simulationModelSet.h:470
DtFilename mySubHostilityFile
Definition: simulationModelSet.h:292
virtual void setValidatorString(const DtString &)
The string that will be parsed to find out which validator(s) are to be used to validate this sms (th...
Definition: simulationModelSet.h:460
DtRwString myIncludedSMSs
Definition: simulationModelSet.h:273
const DtRwVariableBindings * originalVariableBindings() const
Returns the original variable bindings before substitutions.
Definition: simulationModelSet.h:193
DtFilename mySubOpdFile
Substituted copies of name.
Definition: simulationModelSet.h:285
DtComponentAttachmentList & componentAttachmentFileList()
Returns the list of component attachment lookup files.
Definition: simulationModelSet.h:390

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)