VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfSaveScenarioHandler.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
7 
8 #pragma once
9 
10 #include <vrvUtil/signalslib.h>
14 
16 
17 #include <QtCore/QString>
18 
19 class DtScenario;
20 class DtString;
21 
22 namespace makVrv
23 {
24  class DtDe;
25 }
26 
27 namespace makVrf
28 {
29  const int DtSaveCurrentCheckpoint = 0x00000001;
30 
36  {
37  public:
39  virtual ~DtVrfSaveScenarioHandler() override;
40 
42  static DtVrfSaveScenarioHandler& instance(makVrv::DtDe& de);
43 
44  virtual bool saveScenarioAs();
45 
48 
55  virtual int saveScenario(bool forceOverwrite = false, bool queueSave = false, bool useScenarioNameAsSeed = true);
56 
57  virtual void setScenario(const DtScenario*);
58 
60  virtual bool isValidScenarioExtension(const DtString& extension) const;
61 
65  virtual bool isDefaultObserverView(const std::string&) const;
66  virtual std::string defaultObserverView(bool& is2D) const;
67  virtual void setDefaultObserverView(const std::string&);
68 
69  virtual void setTerrainViewVisible(const std::string&, bool vis);
70  virtual const std::set<std::string>& hiddenTerrainViews() const;
71  virtual std::set<std::string>& hiddenTerrainViews();
72  virtual bool terrainViewHidden(const std::string&) const;
73 
75  virtual void setHiddenTerrainViews(const std::string&);
77 
80  virtual bool saveScenario(const QString& s, bool setAsSaved = true, bool queueSave = false,
81  bool preserveBackendMappings = true, bool startPlayingAfterSave = false);
82  virtual bool saveScenario(const DtFilename& s, bool setAsSaved = true, bool queueSave = false,
83  bool preserveBackendMappings = true, bool startPlayingAfterSave = false);
84  virtual bool setupScenarioToSave(const QString& filename, bool setAsSaved);
85 
88  virtual bool getScenarioSaveName(QString&, bool* asked = 0, bool useScenarioNameAsSeed = true) const;
89 
92  virtual DtFilename saveScenarioName(bool askIfDoesNotExist = true, bool* asked = 0, bool useScenarioNameAsSeed = true) const;
93 
97  virtual void setCheckpointIdentifier(const std::string&);
98  virtual const std::string& checkpointIdentifier() const;
99 
104  virtual DtFilename chooseScenarioNameBasedOn(const DtScenario&, bool saveIntoScenario = false);
105 
106  virtual QString makeRelativeTo(QString origFile, QString path) const;
107 
110  virtual void checkpointScenario(const QString& baseFilename, bool forceOverwrite = false, bool queueSave = false,
111  bool startPlayingAfterSave = false);
112 
114  virtual QString checkpointIdentifier(const QString& filename, bool plain = false) const;
115  virtual QString checkpointIdentifier(const QString& filename, double currentSimTime, bool plain = false) const;
116  virtual QString getTimeString(double time, char separator = '_') const;
117 
119  virtual void setDataIntoScenario(DtScenario&);
120 
123  virtual DtScenario* initializeCheckpointedScenario(const DtFilename& scenarioName, double simTime);
124 
128  virtual std::string scenarioExtentInformation() const;
129 
131  virtual void newScenario();
132 
134  virtual void closeScenario();
135 
137  virtual QString startingDirectory() const;
138  virtual void setStartingDirectory(const QString&);
139 
140  const DtScenario* scenario() const
141  {
142  return myScenario;
143  }
144 
145  virtual void setSaving(bool);
146  virtual bool saving() const { return mySaving; };
147 
148  DtFilename savedFilename() const;
149 
150  protected:
151  virtual bool canBePartOfExtent(DtSimObjectReference ref) const;
152  virtual QString createFilterList() const;
153 
154  virtual QString relativePath() const;
155  virtual QString dataFolder() const;
156 
157  static bool preserveMappings(void*);
158  virtual bool processPreserveMappings();
159 
160  protected:
161  virtual bool saveSelectionGroups(const QString& scenarioName, QString& selectionGroups, bool saveToZip) const;
162  virtual bool saveOverlays(const QString& scenarioName, QString& overlayName, bool saveToZip) const;
163 
165  virtual bool saveGuiSettings(const QString& scenarioname, QString& guiSettingsName, bool saveToZip) const;
166 
168  virtual bool saveObserverViews(const QString& scenarioname, QString& observerSettingsName, bool saveToZip) const;
169 
170  protected:
172  mutable QString myStartingDirectory;
178  bool mySaving;
179  std::set<std::string> myHiddenTerrainViews;
180  };
181 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
std::string myDefaultObserverView
Definition: vrfSaveScenarioHandler.h:175
std::set< std::string > myHiddenTerrainViews
Definition: vrfSaveScenarioHandler.h:179
bool mySaving
Definition: vrfSaveScenarioHandler.h:178
Definition: scenario.h:52
const int DtSaveCurrentCheckpoint
Definition: vrfSaveScenarioHandler.h:29
DtScenario * myScenario
Definition: vrfSaveScenarioHandler.h:173
bool myRootSaveTimeSet
Definition: vrfSaveScenarioHandler.h:177
Contains makVrv::DtVirtualBaseClass class.
const DtScenario * scenario() const
Definition: vrfSaveScenarioHandler.h:140
virtual bool saving() const
Definition: vrfSaveScenarioHandler.h:146
QString myStartingDirectory
Definition: vrfSaveScenarioHandler.h:172
The DtVrfSaveScenarioHandler is responsible for getting the name of the scenario to save to and then ...
Definition: vrfSaveScenarioHandler.h:35
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:20
makVrv::DtDe & myDe
Definition: vrfSaveScenarioHandler.h:171
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
double myRootSaveSimTime
Definition: vrfSaveScenarioHandler.h:174
std::string myCheckpointIdentifier
Definition: vrfSaveScenarioHandler.h:176

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)