VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfSaveScenarioHandler.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
16 #include <vrvUtil/signalslib.h>
17 #include <vrvCore/DtDe.h>
18 
19 #include <boost/signal.hpp>
20 
21 #include <QtCore/QString>
22 
23 class DtScenario;
24 
25 namespace makVrf
26 {
27  const int DtSaveCurrentCheckpoint = 0x00000001;
28 
31  {
32  public:
34  virtual ~DtVrfSaveScenarioHandler();
35 
37  static DtVrfSaveScenarioHandler& instance(makVrv::DtDe& de);
38 
39  virtual bool saveScenarioAs();
40 
43 
50  virtual int saveScenario(bool forceOverwrite = false, bool queueSave = false);
51 
52  virtual void setScenario(const DtScenario*);
53 
55  virtual std::string defaultObserverView() const;
56  virtual void setDefaultObserverView(const std::string&);
58 
61  virtual bool saveScenario(const QString& s, bool setAsSaved = true, bool queueSave = false,
62  bool preserveBackendMappings = true, bool startPlayingAfterSave = false);
63  virtual bool setupScenarioToSave(const QString& filename, bool setAsSaved);
64 
67  virtual bool getScenarioSaveName(QString&, bool* asked = 0) const;
68 
71  virtual DtFilename saveScenarioName(bool askIfDoesNotExist = true, bool* asked = 0) const;
72 
76  virtual void setCheckpointIdentifier(const std::string&);
77  virtual const std::string& checkpointIdentifier() const;
78 
83  virtual DtFilename chooseScenarioNameBasedOn(const DtScenario&, bool saveIntoScenario = false);
84 
85  virtual QString makeRelativeTo(QString origFile, QString path) const;
86 
89  virtual void checkpointScenario(const QString& baseFilename, bool forceOverwrite = false, bool queueSave = false,
90  bool startPlayingAfterSave = false);
91 
93  virtual QString checkpointIdentifier(const QString& filename, bool plain = false) const;
94  virtual QString checkpointIdentifier(const QString& filename, double currentSimTime, bool plain = false) const;
95  virtual QString getTimeString(double time, char separator = '_') const;
96 
98  virtual void setDataIntoScenario(DtScenario&);
99 
102  virtual DtScenario* initializeCheckpointedScenario(const DtFilename& scenarioName, double simTime);
103 
107  virtual std::string scenarioExtentInformation() const;
108 
110  virtual void newScenario();
111 
112  const DtScenario* scenario() const
113  {
114  return myScenario;
115  }
116 
117  virtual void setSaving(bool);
118  virtual bool saving() const { return mySaving; };
119 
120  DtFilename savedFilename() const;
121 
125  boost::signal<void (DtScenario*)> signal_scenarioInformationAboutToBeSaved;
126 
129  boost::signal<void (DtScenario*)> signal_scenarioAboutToBeSaved;
130 
131  protected:
132  virtual QString createFilterList() const;
133  virtual QString startingDirectory() const;
134 
135  virtual QString relativePath() const;
136  virtual QString dataFolder() const;
137 
138  static bool preserveMappings(void*);
139  virtual bool processPreserveMappings();
140 
141  protected:
142  virtual bool saveSelectionGroups(const QString& scenarioName, QString& selectionGroups) const;
143  virtual bool saveOverlays(const QString& scenarioName, QString& overlayName) const;
144 
146  virtual bool saveGuiSettings(const QString& scenarioname, QString& guiSettingsName) const;
147 
149  virtual bool saveObserverViews(const QString& scenarioname, QString& observerSettingsName) const;
150 
151  protected:
153  mutable QString myStartingDirectory;
159  bool mySaving;
160  };
161 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)