![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvVrl/vrvVrl.h> 00013 #include <vrvCore/DtSharedSettings.h> 00014 #include <vrvCore/DtRecordSettingsBackup.h> 00015 #include <makArchives/DtEntitySettingsRecord.h> 00016 00017 class DtEntityType; 00018 00019 namespace makVrv 00020 { 00021 00022 class DtEntityTypeMapper; 00023 class DtSharedEntityDisplaySettings; 00024 00025 typedef DtSharedRecordSettingsBackup<DtSharedEntityDisplaySettings, 00026 makArchives::DtEntitySettingsRecord> DtEntityStateSettingsBackup; 00027 00030 class DT_DLL_VRVVRL DtSharedEntityDisplaySettings 00031 : public DtSharedSettings 00032 { 00033 public: 00034 00036 enum HeightAboveTerrainMode 00037 { 00038 ShowHatForAll = 0, 00039 ShowHatForSelected = 1 00040 }; 00041 00043 enum ColorizedModelColorType 00044 { 00045 UsePrimaryColors = 0, 00046 UseIconColors = 1 00047 }; 00048 00049 public: 00050 00052 virtual ~DtSharedEntityDisplaySettings(); 00053 00056 00057 bool groundClampingEnabled() const; 00058 void setGroundClampingEnabled( bool enabled ); 00059 00060 float groundClampingRadiusScale() const; 00061 void setGroundClampingRadiusScale( float scale ); 00062 00063 bool groundClampingCullingEnabled() const; 00064 void setGroundClampingCullingEnabled( bool enabled ); 00065 00066 bool orientationClampingEnabled() const; 00067 void setOrientationClampingEnabled( bool enabled ); 00068 00069 bool lifeformsUprightEnabled() const; 00070 void setLifeformsUprightEnabled( bool enabled ); 00071 00072 bool smoothingEnabled() const; 00073 void setSmoothingEnabled( bool enabled ); 00074 00075 float smoothingPeriod() const; 00076 void setSmoothingPeriod( float period ); 00077 00078 bool entityIndicatorEnabled() const; 00079 void setEntityIndicatorEnabled( bool shown ); 00080 00081 bool showStealthsEnabled() const; 00082 void setShowStealthsEnabled( bool enabled ); 00083 00084 bool infoPopupsOnSelectEnabled() const; 00085 void setInfoPopupsOnSelectEnabled( bool enabled ); 00086 00087 bool fireDetonateLinesEnabled() const; 00088 void setFireDetonateLinesEnabled( bool enabled ); 00089 00090 bool entitySensorVolumesEnabled() const; 00091 void setEntitySensorVolumesEnabled( bool enabled ); 00092 00093 bool entityHeightAboveTerrainLinesEnabled() const; 00094 void setEntityHeightAboveTerrainLinesEnabled( bool enabled ); 00095 00096 HeightAboveTerrainMode entityHeightAboveTerrainMode() const; 00097 void setEntityHeightAboveTerrainMode( HeightAboveTerrainMode mode ); 00098 00099 bool entitySimDataEnabled() const; 00100 void setEntitySimDataEnabled( bool enabled ); 00101 00102 ColorizedModelColorType colorizedModelColorType() const; 00103 void setColorizedModelColorType( ColorizedModelColorType colorType ); 00104 00105 float entityIconScale() const; 00106 void setEntityIconScale( float scale ); 00107 00108 bool hideEmbarked2DObjects() const; 00109 void setHideEmbarked2DObjects( bool hide ); 00110 00112 00114 void setFromRecord( const makArchives::DtEntitySettingsRecord& rec ); 00115 00117 void getRecord( makArchives::DtEntitySettingsRecord& rec ) const; 00118 00120 virtual const DtEntityStateSettingsBackup* settingsBackup() const; 00121 00123 virtual DtEntityStateSettingsBackup* settingsBackup(); 00124 00126 virtual void backup(); 00127 00129 static std::string className(); 00130 00131 protected: 00132 00134 friend class DtReadSettingsLock<DtSharedEntityDisplaySettings>; 00136 friend class DtWriteSettingsLock<DtSharedEntityDisplaySettings>; 00137 00139 DtSharedEntityDisplaySettings( DtSharedSettingsManager& manager ); 00140 00141 protected: 00142 00143 bool myGroundClampingEnabled; 00144 float myGroundClampingRadiusScale; 00145 bool myGroundClampingCullingEnabled; 00146 bool myOrientationClampingEnabled; 00147 bool myLifeformsUprightEnabled; 00148 bool mySmoothingEnabled; 00149 float mySmoothingPeriod; 00150 bool myShowEntityLabels; 00151 bool myShowStealthsEnabled; 00152 bool myInfoPopupsOnSelectEnabled; 00153 bool myFireDetonateLinesEnabled; 00154 bool myEntitySensorVolumesEnabled; 00155 bool myEntityHeightAboveTerrainLinesEnabled; 00156 HeightAboveTerrainMode myEntityHeightAboveTerrainMode; 00157 bool myEntitySimDataEnabled; 00158 ColorizedModelColorType myColorizedModelColorType; 00159 float myEntityIconScaleFactor; 00160 bool myHideEmbarked2DObjects; 00161 00162 DtEntityStateSettingsBackup* myEntitySettingsBackup; 00163 00164 }; 00165 00166 }