VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtSharedEntityDisplaySettings.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2023 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
15 
18 
20 
21 class DtEntityType;
22 
23 namespace makVrv
24 {
26 
29 
32  {
33  ShowHatForAll = 0,
35  };
36 
39  {
40  UsePrimaryColors = 0,
41  UseIconColors = 1
42  };
43 
47  : public DtSharedSettings
48  {
49 
50  public:
51 
54 
57 
58  bool groundClampingEnabled() const;
59  void setGroundClampingEnabled( bool enabled );
60 
61  float groundClampingRadiusScale() const;
62  void setGroundClampingRadiusScale( float scale );
63 
64  bool groundClampingCullingEnabled() const;
65  void setGroundClampingCullingEnabled( bool enabled );
66 
67  bool orientationClampingEnabled() const;
68  void setOrientationClampingEnabled( bool enabled );
69 
70  bool lifeformsUprightEnabled() const;
71  void setLifeformsUprightEnabled( bool enabled );
72 
73  bool smoothingEnabled() const;
74  void setSmoothingEnabled( bool enabled );
75 
76  float smoothingPeriod() const;
77  void setSmoothingPeriod( float period );
78 
79  bool artPartSmoothingEnabled() const;
80  void setArtPartSmoothingEnabled(bool setting);
81 
82  float artPartSmoothingPeriod() const;
83  void setArtPartSmoothingPeriod(float period);
84 
85  bool entityIndicatorEnabled() const;
86  void setEntityIndicatorEnabled( bool shown );
87 
88  bool embarkedEntityLabelsEnabled() const;
89  void setEmbarkedEntityLabelsEnabled( bool shown );
90 
91  bool rotateEntitySymbols() const;
92  void setRotateEntitySymbols( bool shown );
93 
94  bool showStealthsEnabled() const;
95  void setShowStealthsEnabled( bool enabled );
96 
97  bool fireDetonateLinesEnabled() const;
98  void setFireDetonateLinesEnabled( bool enabled );
99 
100  bool entityEmitterVolumesEnabled() const;
101  void setEntityEmitterVolumesEnabled( bool enabled );
102 
103  bool entityHeightAboveTerrainLinesEnabled() const;
104  void setEntityHeightAboveTerrainLinesEnabled( bool enabled );
105 
106  DtHeightAboveTerrainMode entityHeightAboveTerrainMode() const;
107  void setEntityHeightAboveTerrainMode( DtHeightAboveTerrainMode mode );
108 
109  bool entitySimDataEnabled() const;
110  void setEntitySimDataEnabled( bool enabled );
111 
112  DtColorizedModelColorType colorizedModelColorType() const;
113  void setColorizedModelColorType( DtColorizedModelColorType colorType );
114 
115  makArchives::DtAltitudeBasedScaleConfigurationRecordCollection& getOrCreateDynamicScaleCollection(const std::string& collectionName);
116  bool findDynamicScaleCollectionByName(const std::string& collectionName, makArchives::DtAltitudeBasedScaleConfigurationRecordCollection& collection) const;
117 
118  void setDynamicScaleCollectionMap(const makArchives::DtAltitudeBasedScaleConfigurationRecordCollectionMap& collectionMap);
119  const makArchives::DtAltitudeBasedScaleConfigurationRecordCollectionMap& dynamicScaleCollectionMap() const;
120 
121  bool fixedEntityIconScalingEnabled() const;
122  void setFixedEntityIconScalingEnabled( bool enabled );
123 
124  float entityIconScale() const;
125  void setEntityIconScale( float scale );
126 
127  bool hideEmbarked2DObjects() const;
128  void setHideEmbarked2DObjects( bool hide );
129 
130  bool entityOceanWakesEnabled() const;
131  void setEntityOceanWakesEnabled( bool enabled );
132 
133  bool entityHullSprayEffectsEnabled() const;
134  void setEntityHullSprayEffectsEnabled( bool enabled );
135 
136  bool entityBuoyancyModelsEnabled() const;
137  void setEntityBuoyancyModelsEnabled( bool enabled );
138 
139  float buoyancyDefaultLODDistance() const;
140  void setBuoyancyDefaultLODDistance( float distance );
141 
142  float wakeDefaultLODDistance() const;
143  void setWakeDefaultLODDistance( float distance );
144 
145  float buoyancyMinimumCullDistance() const;
146  void setBuoyancyMinimumCullDistance( float distance );
147 
149  void setBuoyancyCullType(makArchives::DtEntitySettingsRecord::BuoyancyCullType cullType );
150 
151  bool buoyAndBeaconIconsEnabled() const;
152  void setBuoyAndBeaconIconsEnabled( bool enabled );
153 
154  unsigned int heightAboveTerrainPeriod() const;
155  void setHeightAboveTerrainPeriod( unsigned int period );
156 
157  bool rotorWashEnabled() const;
158  void setRotorWashEnabled(bool enabled);
159 
160  bool occupantsVisible() const;
161  void setOccupantsVisible(bool visible);
162 
163  bool wheelRotationEnabled() const;
164  void setWheelRotationEnabled(bool setting);
165 
166  bool adaptiveTickRateEnabled() const;
167  void setAdaptiveTickRateEnabled(bool setting);
168 
170 
172  void setFromRecord( const makArchives::DtEntitySettingsRecord& rec );
173 
175  void getRecord( makArchives::DtEntitySettingsRecord& rec ) const;
176 
178  virtual const DtEntityStateSettingsBackup* settingsBackup() const;
179 
181  virtual DtEntityStateSettingsBackup* settingsBackup();
182 
184  virtual void backup();
185 
187  static const std::string& className();
188 
189  protected:
190 
195  friend class DtBaseSharedSettingsManager<makArchives::DtEntitySettingsRecord, DtSharedEntityDisplaySettings>;
196 
198  DtSharedEntityDisplaySettings( DtSharedSettingsManager& manager );
199 
204  bool applyFactoryOverrides(
205  makArchives::DtEntitySettingsRecord& rec) const;
206 
207  protected:
208 
209  bool myGroundClampingEnabled;
210  float myGroundClampingRadiusScale;
211  bool myGroundClampingCullingEnabled;
212  bool myOrientationClampingEnabled;
213  bool myLifeformsUprightEnabled;
214  bool mySmoothingEnabled;
215  float mySmoothingPeriod;
216  bool myArtPartSmoothingEnabled;
217  float myArtPartSmoothingPeriod;
218  bool myShowEntityLabels;
219  bool myShowEmbarkedEntityLabels;
220  bool myShowStealthsEnabled;
221  bool myFireDetonateLinesEnabled;
222  bool myEntityEmitterVolumesEnabled;
223  bool myEntityHeightAboveTerrainLinesEnabled;
224  DtHeightAboveTerrainMode myEntityHeightAboveTerrainMode;
225  bool myEntitySimDataEnabled;
226  DtColorizedModelColorType myColorizedModelColorType;
227 
229  bool myFixedEntityIconScalingEnabled;
230  float myEntityIconScaleFactor;
231 
232  bool myHideEmbarked2DObjects;
233  bool myRotateEntitySymbols;
234  bool myOceanWakesEnabled;
235  bool myHullSprayEffectsEnabled;
236  bool myBuoyancyModelsEnabled;
237  bool myBuoyAndBeaconIconsEnabled;
238  unsigned int myHeightAboveTerrainPeriod;
239  float myBuoyancyDefaultLODDistance;
240  float myWakeDefaultLODDistance;
241  float myBuoyancyMinimumCullDistance;
243  bool myRotorWashEnabled;
244  bool myOccupantsVisible;
245  bool myWheelRotationEnabled;
246  bool myAdaptiveTickRateEnabled;
247 
248  DtEntityStateSettingsBackup* myEntitySettingsBackup;
249  };
250 
251 }
Contains the DtAltitudeBasedScaleConfigurationRecord class declaration.
Base class for shared settings managers. Extends the functionality provided by the DtCommonBaseSettin...
Definition: DtBaseSettingsManager.h:372
a read settings lock on a setting object. The object can only get read access aka const functions...
Definition: DtReadSettingsLock.h:48
The shared simulation settings.
Definition: DtSharedEntityDisplaySettings.h:46
DtColorizedModelColorType
Enumeration for the model coloring mode.
Definition: DtSharedEntityDisplaySettings.h:38
The base class for all shared settings. Actual settings class should have the following members/decla...
Definition: DtSharedSettings.h:45
DtHeightAboveTerrainMode
Enumeration for the HAT mode.
Definition: DtSharedEntityDisplaySettings.h:31
BuoyancyCullType
Definition: DtEntitySettingsRecord.h:28
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains the DtSharedSettings class declaration.
DtSharedRecordSettingsBackup< DtSharedEntityDisplaySettings, makArchives::DtEntitySettingsRecord > DtEntityStateSettingsBackup
Definition: DtSharedEntityDisplaySettings.h:25
a write settings lock on a setting object. The object can be read and modified, but no other threads ...
Definition: DtWriteSettingsLock.h:47
std::map< std::string, DtAltitudeBasedScaleConfigurationRecordCollection > DtAltitudeBasedScaleConfigurationRecordCollectionMap
Definition: DtAltitudeBasedScaleConfigurationRecord.h:48
const char int mode
Definition: ioapi.h:38
std::vector< DtAltitudeBasedScaleConfigurationRecord > DtAltitudeBasedScaleConfigurationRecordCollection
Definition: DtAltitudeBasedScaleConfigurationRecord.h:45
Contains the entity display settings.
Definition: DtEntitySettingsRecord.h:25
Contains the DtEntitySettingsRecord class declaration.
The makVrv::DtSharedRecordSettingsBackup is a templaced class that settings records will use in order...
Definition: DtRecordSettingsBackup.h:197
Contains the DtBaseSettingsManager class declaration.
Contains DLL export macros.

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)