VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVrvApplication.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef DtVrvApplication_H_
11 #define DtVrvApplication_H_
12 
16 
17 #include <string>
18 #include <map>
19 
20 #include <boost/function.hpp>
21 
22 namespace makArchives { class DtObserverStateRecordsList; }
23 
24 namespace makVrv
25 {
26 
27  class DtDe;
28  class DtEventLoop;
29  class DtPluginManager;
30  class DtStartupDialog;
31  class DtSignalConnectionManager;
53  {
54  public:
55  // constant for the maximum number of recent terrains saved at a time
56  const static int MAX_RECENT_TERRAIN_COUNT = 20;
57 
58  public:
59 
63 
65 
67  virtual ~DtVrvApplication();
68 
70  static DtVrvApplication *get_last_instance();
71 
74  static void ShowSplashScreen(const std::string& imageName);
75 
80  static void ShowErrorMessage(const std::string& message, DtException* ex = 0);
81 
83  DtVrvApplicationConfiguration& configuration();
84 
86  DtPageConfiguration& masterModePageConfiguration();
87  DtPageConfiguration& slaveModePageConfiguration();
88 
90  DtMenuConfiguration& masterModeMenuConfiguration();
91  DtMenuConfiguration& slaveModeMenuConfiguration();
92 
94  DtToolbarConfiguration& masterModeToolbarConfiguration();
95  DtToolbarConfiguration& slaveModeToolbarConfiguration();
96 
98  DtDe& de();
99 
104  virtual void initialize(int argc,char** argv);
105 
110  virtual void run();
111 
115  static DtVrvApplication* findFromDe(DtDe&);
116 
120  static bool parseDisplayEngineParameter(const std::string& argument,
121  int& port,std::string& address, std::string& displayConfig);
122 
124  static std::string displayEngineParameterFormatting();
125 
127 
129  typedef boost::function<void (DtVrvApplicationConfiguration&, int argc, char** argv)> ConfigurationTransform;
130 
132  virtual void installCommandLineProcessor(DtVrvCommandLineProcessor* commandLineProcessor);
133 
136  typedef boost::function<void (DtDeInitializer&, DtDe&, DtVrvApplicationConfiguration&)> ApplicationTransform;
137 
139  virtual void installPrePluginTransform(const ApplicationTransform& transform, const std::string& id);
140 
142  virtual void installPostPluginTransform(const ApplicationTransform& transform, const std::string& id);
143 
145  virtual void installPostAssembleTransform(const ApplicationTransform& transform, const std::string& id);
146 
148 
150 
152  static void handleFileError( const std::string& filename, const std::string& fileType );
153 
155  static void bindViews(const std::vector<std::string>& filenames,
157 
159  static bool loadObserverStateRecords(const std::string& file,
161 
163  static void loadViews(const std::vector<std::string>& filenames,
165 
167 
170  virtual void writeGuiConfiguration();
171 
173  virtual bool updateCurrentGuiConfiguration();
174 
176  virtual DtPluginManager& pluginManager();
177 
180  virtual void slot_sceneTerrainLoaded(const DtUnicode& terrain);
181  virtual void slot_sceneTerrainSaved(const std::string& terrain);
182  virtual void slot_sceneToBeLoaded(const std::string& terrain);
183  virtual void slot_sceneLoaded(const std::string& terrain);
184  virtual void slot_sceneSaved(const std::string& terrain);
185 
186  virtual std::list<std::string>& getRecentTerrains();
187 
188  virtual bool getShowStartupScreen() const;
189 
190  virtual void setShowStartupScreen(bool show);
191 
192  protected:
193 
196  virtual void loadPluginModules();
197 
199  virtual void assemble();
200 
202  virtual void createDefaultDisplayEngineConfiguration();
203 
205  virtual DtDisplayConfiguration embeddedMasterDisplayConfig();
206 
208  virtual void createDefaultObserverConfiguration();
209 
211  virtual void loadSavedGuiState();
212 
214  virtual void addRecentTerrain(const std::string& terrain);
215 
216  protected:
217 
224 
225  typedef std::map<std::string, ApplicationTransform> InitializerTransformMap;
229 
232 
233  // The last instance of DtVrvApplication created (if any)
235 
236  };
237 
238 }
239 
240 #endif

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)