VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtSharedCigiSettings.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 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::vector<std::string>& componentStrings(
116  makArchives::DtCigiComponentClass compClass) const;
117 
119  virtual const DtSettingsBackup* settingsBackup(const std::string& name) const;
120  virtual DtSettingsBackup* settingsBackup(const std::string& name);
121 
122  public:
124  virtual void addModelStateMapping(int cigiId, int stateId);
125 
127  virtual void removeModelStateMapping(int cigiId);
128 
130  virtual void setArtPartMapping(int entType, int cigiId, int disId);
131 
133  virtual void removeArtPartMapping(int entType, int cigiId);
134 
136  virtual void addDatabaseMapping(int databaseNumber, const std::string& filename);
137 
139  virtual void removeDatabaseMapping(int databaseNumber);
140 
142  virtual void addObserverModeMapping(int observerNumber, const std::string& filename);
143 
145  virtual void removeObserverModeMapping(int observerNumber);
146 
148  virtual void addComponentIdMapping(makArchives::DtCigiComponentClass compClass,
149  int compId, const std::string& compName);
150 
153  virtual void removeComponentIdMapping(makArchives::DtCigiComponentClass compClass,
154  int compId);
155 
157  virtual void addAnimationMapping(int animationId, const std::string& animationName);
158 
160  virtual void removeAnimationMapping(int animationId);
161 
163  virtual void addActiveRegionMapping(int regionId, const std::string& regionName);
164 
166  virtual void removeActiveRegionMapping(int regionId);
167 
168  public:
169 
171  virtual void setEntityTypeModelMapping(int entType,
172  const std::string& modelName, const std::string& schemaName);
173 
175  virtual void removeEntityTypeModelMapping(int entType);
176 
178  virtual bool remapEntityType(int oldType, int newType);
179 
182  virtual bool renameModelDefinition(const std::string& oldName, const std::string& newName, std::vector<std::string>& mappersChanged);
183 
184  protected:
185 
188 
189  protected:
191  std::string myEmptyMapping;
192 
196  std::vector<std::string> myEntityComponentStrings;
197  std::vector<std::string> myViewComponentStrings;
198  std::vector<std::string> mySystemComponentStrings;
199  std::vector<std::string> myRegionalSeaSurfaceComponentStrings;
200  };
201 
205  {
206  public:
207  DtCigiSettingsBackup(makArchives::DtCigiSettingsRecord*, const std::string& name);
208 
209  virtual ~DtCigiSettingsBackup();
210 
211  const makArchives::DtCigiSettingsRecord& restoredCigiSettings() const
212  {
213  return myRestoredCigiSettings;
214  }
215 
216  const makArchives::DtCigiSettingsRecord* cigiSettings() const
217  {
218  return myCigiSettings;
219  }
220 
221  void setCigiSettings(makArchives::DtCigiSettingsRecord* r)
222  {
223  myCigiSettings = r;
224  }
225 
226  protected:
229  virtual void restore(const DtSettingsBackup* from);
230 
233  virtual std::string backupClassType() const;
234 
237  virtual DtSettingsBackup* create() const;
238 
241  virtual void write(boost::archive::xml_oarchive& ar);
242 
245  virtual void read(boost::archive::xml_iarchive& ar);
246 
248  virtual std::string backupName() const;
249 
250  protected:
253  std::string myName;
254  };
255 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)