VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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  static makVrv::DtDe* theDe();
75 
77 #if USE_VLD_MEMORY_TRACKING && _DEBUG
78  static void setUseVld(bool);
79 #endif
80 
81 
82  static void setIgnoreLayoutGeometryOnInitialLoad(bool);
83  static bool ignoreLayoutGeometryOnInitialLoad();
84 
89  static void setShowPerspective(const std::string&);
90 
92  static void setQtDesignerPluginSupport(bool);
93  static bool qtDesignerPluginSupport();
94 
99  static void setGuiConfiguration(const std::string&);
100 
103  static void setObserverModeBindings(const ObserverModeBindings& modes);
104 
107  static const ObserverModeBindings& observerModeBindings();
108 
111  static const std::vector<std::string>& additionalPluginsToLoad();
112 
115  static void setAdditionalPluginsToLoad(const std::vector<std::string>&);
116 
119  static bool loadDefaultPlugins();
120 
123  static void setLoadDefaultPlugins(bool);
124 
127  static bool checkPluginVersions();
128 
131  static void setCheckPluginVersions(bool);
132 
135  static const std::string& transport();
136 
139  static void setTransport(const std::string&);
140 
143  static const std::string& loadScenario();
144 
147  static void setLoadScenario(const std::string&);
148 
150  static const std::string& useFileCommChannel();
151  static void setUseFileCommChannel(const std::string&);
152 
154  static void setLayoutSettingsFile(const std::string&);
155  static std::string layoutSettingsFile();
156 
158  virtual DtString layoutSettingsFileClassName() const;
159 
162  static const std::string& loadSimulationObjectGroup();
163 
166  static void setLoadSimulationObjectGroup(const std::string&);
167 
169  static void setDefaultSimulationModelSet(const std::string&);
170  static const std::string& defaultSimulationModelSet();
171 
174  static ObserverMode observerMode();
175 
178  static void setObserverMode(ObserverMode);
179 
182  void setPluginApplication(const std::string&);
183 
186  const std::string& pluginApplication() const;
187 
190  static void setShouldLoadGuiSavedState(bool);
191  static bool shouldLoadGuiSavedState();
192 
194  virtual void setLoadSystemPlugins(bool);
195  virtual bool loadSystemPlugins() const;
196 
198  virtual makVrv::DtUnicode applicationName() const;
199 
201  virtual void writeGuiConfiguration();
202 
204  virtual void loadSavedGuiState();
205 
207  virtual bool getShowStartupScreen() const;
208 
210  virtual bool usingAbsoluteTimeStamps() const;
211 
213  virtual bool usingAsynchIO() const;
214 
216  virtual DtSimulationAddress frontEndSimulationAddress() const;
217 
218  virtual bool vrlDriverHasBooleanValue(const std::string&) const;
219  virtual int vrlDriverHasIntegerValue(const std::string&) const;
220  virtual std::string vrlDriverHasStringValue(const std::string&) const;
221 
222  void setVrfSvnRevision(const std::string& s) { myVrfSvnRevision = s; };
223  const std::string& vrfSvnRevision() const { return myVrfSvnRevision; };
224 
225  void setVrvSvnRevision(const std::string& s) { myVrvSvnRevision = s; };
226  const std::string& vrvSvnRevision() const { return myVrvSvnRevision; };
227 
229  virtual bool terrainIsValid(int terrainPathOffset = 0);
230 
231  protected:
234  virtual void loadPluginModules();
235 
239  virtual void loadPluginModulesExt();
240 
241  public:
242  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_preAssemble;
243  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_postAssemble;
244  boost::signal<void (makVrv::DtDe&)> signal_deInitialized;
245  boost::signal<void ()> signal_preLoadPlugins;
246  boost::signal<void ()> signal_postLoadPlugins;
247  boost::signal<void ()> signal_preWriteGuiConfiguration;
248  boost::signal<void ()> signal_postWriteGuiConfiguration;
249  boost::signal<void (std::string)> signal_terrainSaved;
250  boost::signal<void (std::string)> signal_simTerrainSaved;
251  boost::signal<void ()> signal_defaultLayoutLoaded;
252 
254  boost::signal<void ()> signal_qtExtensionsPreInitialize;
255  boost::signal<void ()> signal_qtExtensionsPostInitialize;
256 
257  protected:
259  virtual void initializePluginManager();
260 
262  virtual void initializePluginsForCommandLineArguments(int argc, char** argv);
263 
266  virtual void bindObserverModes(const ObserverModeBindings& modes);
267 
272  virtual DtVrfGuiPluginManager* createPluginManager();
273 
276  virtual void dePostInitialize();
277 
280  virtual void setupForObserverMode();
281 
283  virtual void setupForPvdMode();
284 
286  virtual void setupForStealthMode();
287 
288  virtual bool updateCurrentGuiConfiguration();
289 
290  protected:
292  static std::vector<std::string> theAdditionalPluginsToLoad;
295  static std::string theTransport;
296  static std::string theLoadScenario;
297  static std::string theLayoutSettingsFile;
298  static std::string theLoadSimulationObjectGroup;
299  static std::string theUseFileCommChannel;
300  static std::string theGuiConfiguration;
301  static std::string theShowPerspective;
302  static std::string theDefaultSimulationModelSet;
304  static bool theLoadGuiSavedState;
307 
309  std::string myPluginApplication;
310  std::string myVrfSvnRevision;
311  std::string myVrvSvnRevision;
312 
314  };
315 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)