VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSharedCigiSettings.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCigi/vrvCigi.h>
15 
17 
18 #include <string>
19 #include <map>
20 
21 namespace makVrv
22 {
23  class DtCigiSettingsBackup;
24 
33  {
34  public:
35  typedef std::pair<makArchives::DtCigiSettingsRecord*, DtCigiSettingsBackup*> DtCigiSettingsPair;
36  typedef std::map<std::string, DtCigiSettingsPair> StringToSettingsMap;
37 
43 
47  static std::string className();
48 
50  virtual ~DtSharedCigiSettings();
51 
53  virtual void addCigiSettings(const std::string& settingsName);
54 
57  virtual void setCigiSettings(const std::string& settingsName,
58  const makArchives::DtCigiSettingsRecord& record);
59 
61  virtual void removeCigiSettings(const std::string& settingsName);
62 
64  virtual void setCurrentSettingsName(const std::string& settingsName);
65 
67  virtual const makArchives::DtCigiSettingsRecord* currentSettings() const;
68 
70  virtual const std::string& currentSettingsName() const;
71 
74  virtual makArchives::DtCigiSettingsRecord* findCigiSettingsByName(
75  const std::string& settingsName);
76 
78  virtual const makArchives::DtCigiSettingsRecord* findCigiSettingsByName(
79  const std::string& settingsName) const;
80 
82  virtual bool definitionInUse(const std::string& def) const;
83 
87  virtual const std::string& mapEntityModelDefinition(int entType) const;
88 
92  virtual const std::string& mapEntityModelSchemaName(int entType) const;
93 
95  virtual StringToSettingsMap::const_iterator begin() const;
96  virtual StringToSettingsMap::const_iterator end() const;
97 
99  virtual unsigned int settingsCount() const;
100 
103  virtual const std::string& findDatabaseFilename(int databaseNumber);
104 
107  virtual const std::string& findAnimationName(int animationId);
108 
111  virtual const std::string& findActiveRegionName(int regionId);
112 
115  virtual const std::string& findLightPointGroupName(int groupId);
116 
119  virtual const std::vector<std::string>& componentStrings(
120  makArchives::DtCigiComponentClass compClass) const;
121 
123  virtual const DtSettingsBackup* settingsBackup(const std::string& name) const;
124  virtual DtSettingsBackup* settingsBackup(const std::string& name);
125 
126  public:
128  virtual void addModelStateMapping(int cigiId, int stateId);
129 
131  virtual void removeModelStateMapping(int cigiId);
132 
134  virtual void setArtPartMapping(int entType, int cigiId, int disId);
135 
137  virtual void removeArtPartMapping(int entType, int cigiId);
138 
140  virtual void addDatabaseMapping(int databaseNumber, const std::string& filename);
141 
143  virtual void removeDatabaseMapping(int databaseNumber);
144 
146  virtual void addObserverModeMapping(int observerNumber, const std::string& filename);
147 
149  virtual void removeObserverModeMapping(int observerNumber);
150 
152  virtual void addComponentIdMapping(makArchives::DtCigiComponentClass compClass,
153  int compId, const std::string& compName);
154 
157  virtual void removeComponentIdMapping(makArchives::DtCigiComponentClass compClass,
158  int compId);
159 
161  virtual void addAnimationMapping(int animationId, const std::string& animationName);
162 
164  virtual void removeAnimationMapping(int animationId);
165 
167  virtual void addActiveRegionMapping(int regionId, const std::string& regionName);
168 
170  virtual void removeActiveRegionMapping(int regionId);
171 
173  virtual void addLightPointGroupMapping(int groupId, const std::string& groupName);
174 
176  virtual void removeLightPointGroupMapping(int groupId);
177 
178  public:
179 
181  virtual void setEntityTypeModelMapping(int entType,
182  const std::string& modelName, const std::string& schemaName);
183 
185  virtual void removeEntityTypeModelMapping(int entType);
186 
188  virtual bool remapEntityType(int oldType, int newType);
189 
192  virtual bool renameModelDefinition(const std::string& oldName, const std::string& newName, std::vector<std::string>& mappersChanged);
193 
194  protected:
195 
198 
199  protected:
201  std::string myEmptyMapping;
202 
206  std::vector<std::string> myEntityComponentStrings;
207  std::vector<std::string> myViewComponentStrings;
208  std::vector<std::string> mySystemComponentStrings;
209  std::vector<std::string> myRegionalSeaSurfaceComponentStrings;
210  std::vector<std::string> myGlobalTerrainSurfaceComponent;
211  };
212 
216  {
217  public:
218  DtCigiSettingsBackup(makArchives::DtCigiSettingsRecord*, const std::string& name);
219 
220  virtual ~DtCigiSettingsBackup();
221 
222  const makArchives::DtCigiSettingsRecord& restoredCigiSettings() const
223  {
224  return myRestoredCigiSettings;
225  }
226 
227  const makArchives::DtCigiSettingsRecord* cigiSettings() const
228  {
229  return myCigiSettings;
230  }
231 
232  void setCigiSettings(makArchives::DtCigiSettingsRecord* r)
233  {
234  myCigiSettings = r;
235  }
236 
237  protected:
240  virtual void restore(const DtSettingsBackup* from);
241 
244  virtual std::string backupClassType() const;
245 
248  virtual DtSettingsBackup* create() const;
249 
252  virtual void write(boost::archive::xml_oarchive& ar);
253 
256  virtual void read(boost::archive::xml_iarchive& ar);
257 
259  virtual std::string backupName() const;
260 
261  protected:
264  std::string myName;
265  };
266 }

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)