VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfGuiApplication.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
9 
11 #include <vrvUtil/signalslib.h>
12 #include <vlpi/simulationAddress.h>
13 
21 
22 namespace makVrv
23 {
24  class DtMenuConfiguration;
25  class DtDe;
26  class DtVrvApplicationConfiguration;
27  class DtElementDefinitionManager;
28 }
29 
30 namespace makVrf
31 {
34 
36  class DtVrfGuiPluginManager;
37 
40  {
41  public:
42  typedef std::map<std::string, std::string> ObserverModeBindings;
43 
45  {
46  PvdAndStealthMode = 0,
48  StealthMode
49  };
50 
51  public:
55 
57  virtual ~DtVrfGuiApplication();
58 
62  virtual void initialize( int argc, char** argv );
63 
65  virtual void assemble();
66 
68  virtual void run();
69 
71  static DtVrfGuiApplication* app(makVrv::DtDe&);
72 
74 #if USE_VLD_MEMORY_TRACKING && _DEBUG
75  static void setUseVld(bool);
76 #endif
77 
78 
79  static void setIgnoreLayoutGeometryOnInitialLoad(bool);
80  static bool ignoreLayoutGeometryOnInitialLoad();
81 
86  static void setShowPerspective(const std::string&);
87 
92  static void setGuiConfiguration(const std::string&);
93 
96  static void setObserverModeBindings(const ObserverModeBindings& modes);
97 
100  static const ObserverModeBindings& observerModeBindings();
101 
104  static const std::vector<std::string>& additionalPluginsToLoad();
105 
108  static void setAdditionalPluginsToLoad(const std::vector<std::string>&);
109 
112  static bool loadDefaultPlugins();
113 
116  static void setLoadDefaultPlugins(bool);
117 
120  static bool checkPluginVersions();
121 
124  static void setCheckPluginVersions(bool);
125 
128  static const std::string& transport();
129 
132  static void setTransport(const std::string&);
133 
136  static const std::string& loadScenario();
137 
140  static void setLoadScenario(const std::string&);
141 
143  static const std::string& useFileCommChannel();
144  static void setUseFileCommChannel(const std::string&);
145 
147  static void setLayoutSettingsFile(const std::string&);
148  static std::string layoutSettingsFile();
149 
151  virtual DtString layoutSettingsFileClassName() const;
152 
155  static const std::string& loadSimulationObjectGroup();
156 
159  static void setLoadSimulationObjectGroup(const std::string&);
160 
162  static void setDefaultSimulationModelSet(const std::string&);
163  static const std::string& defaultSimulationModelSet();
164 
167  static ObserverMode observerMode();
168 
171  static void setObserverMode(ObserverMode);
172 
175  void setPluginApplication(const std::string&);
176 
179  const std::string& pluginApplication() const;
180 
183  static void setShouldLoadGuiSavedState(bool);
184  static bool shouldLoadGuiSavedState();
185 
187  virtual void setLoadSystemPlugins(bool);
188  virtual bool loadSystemPlugins() const;
189 
191  virtual makVrv::DtUnicode applicationName() const;
192 
194  virtual void writeGuiConfiguration();
195 
197  virtual void loadSavedGuiState();
198 
200  virtual bool getShowStartupScreen() const;
201 
203  virtual bool usingAbsoluteTimeStamps() const;
204 
206  virtual bool usingAsynchIO() const;
207 
209  virtual DtSimulationAddress frontEndSimulationAddress() const;
210 
211  virtual bool vrlDriverHasBooleanValue(const std::string&) const;
212  virtual int vrlDriverHasIntegerValue(const std::string&) const;
213  virtual std::string vrlDriverHasStringValue(const std::string&) const;
214 
215  void setVrfSvnRevision(const std::string& s) { myVrfSvnRevision = s; };
216  const std::string& vrfSvnRevision() const { return myVrfSvnRevision; };
217 
218  void setVrvSvnRevision(const std::string& s) { myVrvSvnRevision = s; };
219  const std::string& vrvSvnRevision() const { return myVrvSvnRevision; };
220 
222  virtual bool terrainIsValid(int terrainPathOffset = 0);
223 
224  protected:
227  virtual void loadPluginModules();
228 
232  virtual void loadPluginModulesExt();
233 
234  public:
235  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_preAssemble;
236  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_postAssemble;
237  boost::signal<void (makVrv::DtDe&)> signal_deInitialized;
238  boost::signal<void ()> signal_preLoadPlugins;
239  boost::signal<void ()> signal_postLoadPlugins;
240  boost::signal<void ()> signal_preWriteGuiConfiguration;
241  boost::signal<void ()> signal_postWriteGuiConfiguration;
242  boost::signal<void (std::string)> signal_terrainSaved;
243  boost::signal<void ()> signal_defaultLayoutLoaded;
244 
245  protected:
248  virtual void bindObserverModes(const ObserverModeBindings& modes);
249 
254  virtual DtVrfGuiPluginManager* createPluginManager();
255 
258  virtual void dePostInitialize();
259 
262  virtual void setupForObserverMode();
263 
265  virtual void setupForPvdMode();
266 
268  virtual void setupForStealthMode();
269 
270  virtual bool updateCurrentGuiConfiguration();
271 
272  protected:
274  static std::vector<std::string> theAdditionalPluginsToLoad;
277  static std::string theTransport;
278  static std::string theLoadScenario;
279  static std::string theLayoutSettingsFile;
280  static std::string theLoadSimulationObjectGroup;
281  static std::string theUseFileCommChannel;
282  static std::string theGuiConfiguration;
283  static std::string theShowPerspective;
284  static std::string theDefaultSimulationModelSet;
286  static bool theLoadGuiSavedState;
288 
290  std::string myPluginApplication;
291  std::string myVrfSvnRevision;
292  std::string myVrvSvnRevision;
293 
295  };
296 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)