VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfSessionSettingsRecord.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
15 #include <vrvUtil/DtUnicode.h>
16 
17 #include <boost/serialization/access.hpp>
18 #include <boost/serialization/nvp.hpp>
19 #include <boost/serialization/list.hpp>
20 #include <boost/serialization/map.hpp>
21 #include <boost/serialization/vector.hpp>
22 #include <boost/serialization/string.hpp>
23 
24 namespace makVrf
25 {
27  {
28  public:
30  {
31  DtAutoJoinSession = 0x00000001,
32  DtAskToJoin = 0x00000002,
33  DtAlwaysJoinWithSessionDatabase = 0x00000004,
34  DtAlwaysJoinWithOpenDatabase = 0x00000008,
35  DtShowSessionDialogs = 0x00000010,
36  DtDisplayCorrelationWarningMessages = 0x00000020,
37  DtShowSessionStartupDialog = 0x00000040,
38  DtStartOnNewVRTheWorld = 0x00000080,
39  DtStartOnNewScenario = 0x00000100,
40  DtStartOnLoadScenario = 0x00000200,
41  DtAggregateOnCreate = 0x00000400,
42  DtUserDefinedSmoothing = 0x00000800,
43  DtShowScenarioDescriptionDialog = 0x00001000,
44  DtZoomToScenarioExtentsOnLoad = 0x00002000,
45  DtUseAdditionalWindowTitle = 0x00004000,
46  DtUseSimulationTimeForAdvancement = 0x00008000,
47  DtShowOverlayBar = 0x00010000,
48  DtSetScenarioStartTimeAtDefault = 0x00020000,
49  DtAutomaticallyOpenSessionDatabaseWithoutJoiningSession = 0x00040000,
50  DtUseStartFreezePdus = 0x00080000,
51  };
52 
54  {
55  std::string title;
56  std::vector<std::string> simulationModelSets;
57  std::string additionalInformation;
58  friend class boost::serialization::access;
59 
63  template<class Archive>
64  void serialize(Archive & ar, const unsigned int version)
65  {
66  ar & BOOST_SERIALIZATION_NVP(title);
67  ar & BOOST_SERIALIZATION_NVP(simulationModelSets);
68  ar & BOOST_SERIALIZATION_NVP(additionalInformation);
69  }
70  };
71 
72  public:
75 
76  virtual ~DtVrfSessionSettingsRecord();
77 
78  public:
79 
80  virtual void setFlag(int flag, bool set);
81 
82  void setAutoJoinSession(bool);
83  bool autoJoinSession() const;
84 
85  void setAutomaticallyOpenSessionDatabaseWithoutJoiningSession(bool);
86  bool automaticallyOpenSessionDatabaseWithoutJoiningSession() const;
87 
88  void setAskToJoin(bool);
89  bool askToJoin() const;
90 
91  void setAlwaysJoinWithSessionDatabase(bool);
92  bool alwaysJoinWithSessionDatabase() const;
93 
94  void setAlwaysJoinWithOpenDatabase(bool);
95  bool alwaysJoinWithOpenDatabase() const;
96 
98  virtual void setUseStartFreezePdus(bool);
99  virtual bool useStartFreezePdus() const;
100 
101  void setDisplaySessionDialogs(bool);
102  bool displaySessionDialogs() const;
103 
104  void setZoomToScenarioExtentsOnLoad(bool);
105  bool zoomToScenarioExtentsOnLoad() const;
106 
107  void setDisplayCorrelationWarningMessages(bool);
108  bool displayCorrelationWarningMessages() const;
109 
110  void setShowSessionStartupDialog(bool);
111  bool showSessionStartupDialog() const;
112 
113  void setStartupPreference(int);
114  int startupPreference() const;
115 
116  void setAggregateOnCreate(bool);
117  bool aggregateOnCreate() const;
118 
119  virtual void setUseSimulationTimeForAdvancement(bool);
120  virtual bool useSimulationTimeForAdvancement() const;
121 
122  virtual void setShowOverlayBar(bool);
123  virtual bool showOverlayBar() const;
124 
125  void setShowScenarioDescriptionDialog(bool);
126  bool showScenarioDescriptionDialog() const;
127 
129  void setUserDefinedSmoothing(bool);
130  bool userDefinedSmoothing() const;
131 
133  virtual void setTimeScaleRange(double low, double high);
134  virtual void getTimeScaleRange(double& low, double& high) const;
135 
137  void setHelpFile(const std::string&);
138  const std::string& helpFile() const;
139 
140  void setDefaultScenarioFile(const std::string&);
141  const std::string& defaultScenarioFile() const;
142 
143  void setDefaultSimulationModelSetFile(const std::string&);
144  const std::string& defaultSimulationModelSetFile() const;
145 
148  virtual void setUseAdditionalWindowTitle(bool);
149  virtual bool useAdditionalWindowTitle() const;
150 
152  virtual void setAdditionalWindowTitle(const makVrv::DtUnicode&);
153  virtual makVrv::DtUnicode additionalWindowTitle() const;
154 
156  virtual const std::vector<SimulationModelSetConfiguration>& simulationModelSetConfigurations() const;
157  virtual void setSimulationModelSetConfigurations(const std::vector<SimulationModelSetConfiguration>&);
158 
160  virtual void setScenarioStartTimeAtDefault(bool);
161  virtual bool scenarioStartTimeAtDefault() const;
162 
164  virtual void setDefaultScenarioStartTime(time_t);
165  virtual time_t defaultScenarioStartTime() const;
166 
167  protected:
168  friend class boost::serialization::access;
169 
173  template<class Archive>
174  void serialize(Archive & ar, const unsigned int version)
175  {
176  ar & BOOST_SERIALIZATION_NVP(mySessionOptions);
177 
178  if ((version == 1) && (Archive::is_loading::value))
179  {
180  setFlag(DtShowSessionStartupDialog, true);
181  }
182  else if ((version == 2) && (Archive::is_loading::value))
183  {
184  myHelpFile = "../doc/help/vr-forces_help.qhc";
185  }
186  else if (version >= 4)
187  {
188  ar & BOOST_SERIALIZATION_NVP(myHelpFile);
189  ar & BOOST_SERIALIZATION_NVP(myDefaultScenarioFile);
190  ar & BOOST_SERIALIZATION_NVP(myDefaultSimulationModelSetFile);
191 
192  if ((version <= 4) && (Archive::is_loading::value))
193  {
194  setFlag(DtUseAdditionalWindowTitle, false);
195  }
196 
197  if (version >= 5)
198  {
199  ar & BOOST_SERIALIZATION_NVP(myAdditionalWindowTitle);
200 
201  if (version >= 6)
202  {
203  ar & BOOST_SERIALIZATION_NVP(mySimulationModelSetConfigurations);
204 
205  if (version >= 7)
206  {
207  ar & BOOST_SERIALIZATION_NVP(myTimescaleLow);
208  ar & BOOST_SERIALIZATION_NVP(myTimescaleHigh);
209 
210  if (version >= 10)
211  {
212  ar & BOOST_SERIALIZATION_NVP(myDefaultScenarioStartTime);
213  }
214  }
215  }
216  }
217  }
218 
219  if (Archive::is_loading::value && (version <= 8))
220  {
221  setFlag(DtUseSimulationTimeForAdvancement, true);
222  setFlag(DtShowOverlayBar, true);
223  }
224  }
225 
226  protected:
228  std::string myHelpFile;
232  std::vector<SimulationModelSetConfiguration> mySimulationModelSetConfigurations;
236  };
237 }
238 

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)