VR-Forces 4.8 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) 2019 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::string& findSensorName( int sensorId );
120 
123  virtual const std::vector<std::string>& componentStrings(
124  makArchives::DtCigiComponentClass compClass ) const;
125 
127  virtual const DtSettingsBackup* settingsBackup( const std::string& name ) const;
128  virtual DtSettingsBackup* settingsBackup( const std::string& name );
129 
130  public:
132  virtual void addModelStateMapping( int cigiId, int stateId );
133 
135  virtual void removeModelStateMapping( int cigiId );
136 
138  virtual void setArtPartMapping( int entType, int cigiId, int disId );
139 
141  virtual void removeArtPartMapping( int entType, int cigiId );
142 
144  virtual void addDatabaseMapping( int databaseNumber, const std::string& filename );
145 
147  virtual void removeDatabaseMapping( int databaseNumber );
148 
150  virtual void addObserverModeMapping( int observerNumber, const std::string& filename );
151 
153  virtual void removeObserverModeMapping( int observerNumber );
154 
156  virtual void addComponentIdMapping( makArchives::DtCigiComponentClass compClass,
157  int compId, const std::string& compName );
158 
161  virtual void removeComponentIdMapping( makArchives::DtCigiComponentClass compClass,
162  int compId );
163 
165  virtual void addAnimationMapping( int animationId, const std::string& animationName );
166 
168  virtual void removeAnimationMapping( int animationId );
169 
171  virtual void addActiveRegionMapping( int regionId, const std::string& regionName );
172 
174  virtual void removeActiveRegionMapping( int regionId );
175 
177  virtual void addLightPointGroupMapping( int groupId, const std::string& groupName );
178 
180  virtual void removeLightPointGroupMapping( int groupId );
181 
183  virtual void addSensorMapping( int sensorId, const std::string& sensorName );
184 
186  virtual void removeSensorMapping( int sensorId );
187 
188  public:
189 
191  virtual void setEntityTypeModelMapping( int entType,
192  const std::string& modelName, const std::string& schemaName );
193 
195  virtual void removeEntityTypeModelMapping( int entType );
196 
198  virtual bool remapEntityType( int oldType, int newType );
199 
202  virtual bool renameModelDefinition( const std::string& oldName, const std::string& newName, std::vector<std::string>& mappersChanged );
203 
204  protected:
205 
208 
209  protected:
211  std::string myEmptyMapping;
212 
216  std::vector<std::string> myEntityComponentStrings;
217  std::vector<std::string> myViewComponentStrings;
218  std::vector<std::string> mySystemComponentStrings;
219  std::vector<std::string> myRegionalSeaSurfaceComponentStrings;
220  std::vector<std::string> myGlobalTerrainSurfaceComponent;
221  };
222 
226  {
227  public:
228  DtCigiSettingsBackup(makArchives::DtCigiSettingsRecord*, const std::string& name);
229 
230  virtual ~DtCigiSettingsBackup();
231 
233  {
234  return myRestoredCigiSettings;
235  }
236 
238  {
239  return myCigiSettings;
240  }
241 
243  {
244  myCigiSettings = r;
245  }
246 
247  protected:
250  virtual void restore(const DtSettingsBackup* from);
251 
254  virtual std::string backupClassType() const;
255 
258  virtual DtSettingsBackup* create() const;
259 
262  virtual void write(boost::archive::xml_oarchive& ar);
263 
266  virtual void read(boost::archive::xml_iarchive& ar);
267 
269  virtual std::string backupName() const;
270 
271  protected:
274  std::string myName;
275  };
276 }
std::vector< std::string > myGlobalTerrainSurfaceComponent
Definition: DtSharedCigiSettings.h:220
std::vector< std::string > myViewComponentStrings
Definition: DtSharedCigiSettings.h:217
a read settings lock on a setting object.
Definition: DtReadSettingsLock.h:51
std::vector< std::string > myEntityComponentStrings
Definition: DtSharedCigiSettings.h:216
std::string myCurrentSettingsName
Definition: DtSharedCigiSettings.h:214
std::map< std::string, DtCigiSettingsPair > StringToSettingsMap
Definition: DtSharedCigiSettings.h:36
Backup class for CIGI Settings.
Definition: DtSharedCigiSettings.h:225
makArchives::DtCigiSettingsRecord * myCurrentSettings
Definition: DtSharedCigiSettings.h:215
makArchives::DtCigiSettingsRecord * myCigiSettings
Definition: DtSharedCigiSettings.h:272
const makArchives::DtCigiSettingsRecord * cigiSettings() const
Definition: DtSharedCigiSettings.h:237
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:45
Contains DLL export macros.
The base class for all shared settings.
Definition: DtSharedSettings.h:45
The shared CIGI settings.
Definition: DtSharedCigiSettings.h:32
Contains the DtSharedSettings class declaration.
std::string myName
Definition: DtSharedCigiSettings.h:274
DtCigiComponentClass
Definition: DtCigiSettingsRecord.h:15
const makArchives::DtCigiSettingsRecord & restoredCigiSettings() const
Definition: DtSharedCigiSettings.h:232
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:26
a write settings lock on a setting object.
Definition: DtWriteSettingsLock.h:50
std::vector< std::string > myRegionalSeaSurfaceComponentStrings
Definition: DtSharedCigiSettings.h:219
std::string myEmptyMapping
Empty string, for returning the reference which will always be empty.
Definition: DtSharedCigiSettings.h:211
StringToSettingsMap mySettingsByName
Definition: DtSharedCigiSettings.h:213
std::pair< makArchives::DtCigiSettingsRecord *, DtCigiSettingsBackup * > DtCigiSettingsPair
Definition: DtSharedCigiSettings.h:35
makArchives::DtCigiSettingsRecord myRestoredCigiSettings
Definition: DtSharedCigiSettings.h:273
#define DT_DLL_VRVCIGI
Definition: vrvCigi.h:19
Record of miscellaneous CIGI settings.
Definition: DtCigiSettingsRecord.h:26
void setCigiSettings(makArchives::DtCigiSettingsRecord *r)
Definition: DtSharedCigiSettings.h:242
The makVrv::DtSettingsBackup is a lightweight class that must be subclassed from if an object wants t...
std::vector< std::string > mySystemComponentStrings
Definition: DtSharedCigiSettings.h:218

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)