VR-Forces 4.3 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 
20 
21 namespace makVrv
22 {
23  class DtMenuConfiguration;
24  class DtDe;
25  class DtVrvApplicationConfiguration;
26  class DtElementDefinitionManager;
27 }
28 
29 namespace makVrf
30 {
33 
35  class DtVrfGuiPluginManager;
36 
39  {
40  public:
41  typedef std::map<std::string, std::string> ObserverModeBindings;
42 
44  {
45  PvdAndStealthMode = 0,
47  StealthMode
48  };
49 
50  public:
54 
56  virtual ~DtVrfGuiApplication();
57 
61  virtual void initialize( int argc, char** argv );
62 
64  virtual void assemble();
65 
67  virtual void run();
68 
70  static DtVrfGuiApplication* app(makVrv::DtDe&);
71 
73 #ifdef USE_VLD_MEMORY_TRACKING
74  static void setUseVld(bool);
75 #endif
76 
77 
78 
79 
80  static void setShowPerspective(const std::string&);
81 
85  static void setGuiConfiguration(const std::string&);
86 
89  static void setObserverModeBindings(const ObserverModeBindings& modes);
90 
93  static const ObserverModeBindings& observerModeBindings();
94 
97  static const std::vector<std::string>& additionalPluginsToLoad();
98 
101  static void setAdditionalPluginsToLoad(const std::vector<std::string>&);
102 
105  static bool loadDefaultPlugins();
106 
109  static void setLoadDefaultPlugins(bool);
110 
113  static bool checkPluginVersions();
114 
117  static void setCheckPluginVersions(bool);
118 
121  static const std::string& transport();
122 
125  static void setTransport(const std::string&);
126 
129  static const std::string& loadScenario();
130 
133  static void setLoadScenario(const std::string&);
134 
137  static ObserverMode observerMode();
138 
141  static void setObserverMode(ObserverMode);
142 
145  void setPluginApplication(const std::string&);
146 
149  const std::string& pluginApplication() const;
150 
152  virtual void setLoadSystemPlugins(bool);
153  virtual bool loadSystemPlugins() const;
154 
156  virtual makVrv::DtUnicode applicationName() const;
157 
159  virtual void writeGuiConfiguration();
160 
161  protected:
164  virtual void loadPluginModules();
165 
169  virtual void loadPluginModulesExt();
170 
171  public:
172  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_preAssemble;
173  boost::signal<void (makVrv::DtDe&, makVrv::DtMenuConfiguration&)> signal_postAssemble;
174  boost::signal<void (makVrv::DtDe&)> signal_deInitialized;
175  boost::signal<void ()> signal_preLoadPlugins;
176  boost::signal<void ()> signal_postLoadPlugins;
177  boost::signal<void ()> signal_preWriteGuiConfiguration;
178  boost::signal<void ()> signal_postWriteGuiConfiguration;
179  boost::signal<void (std::string)> signal_terrainSaved;
180 
181  protected:
184  virtual void bindObserverModes(const ObserverModeBindings& modes);
185 
190  virtual DtVrfGuiPluginManager* createPluginManager();
191 
194  virtual void dePostInitialize();
195 
198  virtual void setupForObserverMode();
199 
201  virtual void setupForPvdMode();
202 
204  virtual void setupForStealthMode();
205 
207  virtual void setupAdditionalVisualizers();
208 
210  virtual void setupAdditionalTacticalGraphicsVisualizers();
211 
213  virtual void setupBoundingVolumes();
214 
216  virtual void setupObjectConsoleWarngForTacticalGraphics();
217 
219  virtual void setupBoundingVolumes(const std::string& root);
220 
222  virtual void setupRangeRings();
223 
224  virtual void setupAdditionalAggregateVisualizers();
225 
227  virtual void loadSavedGuiState();
228 
229  protected:
231  static std::vector<std::string> theAdditionalPluginsToLoad;
234  static std::string theTransport;
235  static std::string theLoadScenario;
236  static std::string theGuiConfiguration;
237  static std::string theShowPerspective;
239 
241  std::string myPluginApplication;
242 
244  std::map<makVrv::DtElementDefinitionManager*, bool> myModifiedManagers;
245 
247  };
248 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)