VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtModelPreloadManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/DtDe.h>
14 
15 #include <vrvCore/vrvCore.h>
16 #include <vrvCore/DtModelPreloaderAgent.hpp>
17 
19 #include <boost/unordered_set.hpp>
20 
23 
24 
25 namespace makVrv
26 {
27  class DtMetaFileManager;
28  class DtModel;
29  class DtModelInstance;
30  class DtModelPreloaderAgent;
31  class DtModelDefinition;
32  class DtModelPreloadSetRecord;
33  class DtModelPreloadSettingsManager;
34  class DtBackupInterface;
35 
40  {
41  public:
42 
44 
46  virtual ~DtModelPreloadManager();
47 
49  virtual void addModelDefinitionToPreloadList(const std::string& modelDefName);
50 
52  virtual void removeModelDefinitionFromPreloadList(const std::string& modelDefName);
53 
55  virtual void addModelDefinitionToDiscoveredModelList(const std::string& modelDefName);
56 
58  virtual void removeModelDefinitionFromDiscoveredModelList(const std::string& modelDefName);
59 
61  virtual void addSchemaToValidList(const std::string& schemaName);
62 
64  virtual void removeSchemaFromValidList(const std::string& schemaName);
65 
67  virtual bool isValidModelDefinition(const std::string& modelDefName);
68 
70  virtual bool isValidModelSchema(const std::string& schemaName);
71 
73  const std::string& preloadFilename() const;
74 
76  virtual void setPreloadFilename(const std::string& filename);
77 
80  const std::string& discoveredModelsFilename() const;
81 
84  void setDiscoveredModelsFilename(const std::string& filename);
85 
87  virtual void clearPreloadList();
88 
90  virtual void loadDefaults(bool loadOnlyFactorSettings = false);
91 
93  virtual void saveAsDefaults();
94 
96  virtual void exportSettings(const std::string& filename);
97 
99  virtual void exportDiscoveredSettings(const std::string& filename);
100 
102  virtual void importSettings(const std::string& filename);
103 
105  virtual void mergeSettings(const std::string& filename);
106 
108  virtual DtBackupInterface* backup();
109 
111  virtual void setModelPreloadFromRecord(const makArchives::DtModelPreloadSetRecord& rec);
112 
114  virtual void getModelPreloadRecord(makArchives::DtModelPreloadSetRecord& rec) const;
115 
117  virtual void getDiscoveredModelPreloadRecord(makArchives::DtModelPreloadSetRecord& rec) const;
118 
120  bool isInPreloadList(const std::string& modelDefName) const;
121 
123  virtual bool preloadModels();
124 
126  virtual void slot_modelCreated(DtModelInstance& modelInstance);
127 
130  virtual void slot_displayEngineAdded(const DtDeRecord& deRec);
131 
133  virtual void slot_quit();
134 
136  static DtModelPreloadManager& instance(DtDe& de);
137 
138  typedef boost::unordered_set<std::string> ModelDefinitionMap;
139  typedef boost::unordered_set<std::string> ModelSchemaMap;
140 
142  const ModelDefinitionMap& preloadModelMap() const;
143 
144  void setSettingsManager(DtModelPreloadSettingsManager* settingsMgr);
145 
146 
147  protected:
148 
151 
152  protected:
153 
155  DtModelPreloaderAgent* myAgent;
157 
160 
164 
165  DtModelPreloadSettingsManager* mySettingsManager;
166  };
167 
169  {
170  public:
171 
173  virtual ~DtModelPreloadManagerCreator();
174 
176  static DtModelPreloadManagerCreator& instance(DtDe& de);
177 
179  virtual DtModelPreloadManager* create();
180 
181  protected:
182 
185 
186  protected:
188  };
189 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)