![]() |
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 00014 #include <vrvUtil/DtBaseSettingsManager.h> 00015 00016 #include <makArchives/DtEntitySettingsRecord.h> 00017 00018 #include <vrvVrl/DtSharedEntityDisplaySettings.h> 00019 00020 namespace makVrv 00021 { 00022 00025 class DT_DLL_VRVVRL DtSharedEntityDisplaySettingsManager 00026 : public DtBaseSharedSettingsManager<makArchives::DtEntitySettingsRecord, 00027 DtSharedEntityDisplaySettings> 00028 { 00029 public: 00030 00032 static DtSharedEntityDisplaySettingsManager& instance( DtDe& de ); 00033 00035 virtual ~DtSharedEntityDisplaySettingsManager(); 00036 00038 void connectInputSignals(); 00039 00042 00043 virtual bool groundClampingEnabled() const; 00044 virtual void setGroundClampingEnabled( bool enabled ); 00045 00046 virtual float groundClampingRadiusScale() const; 00047 virtual void setGroundClampingRadiusScale( float distance ); 00048 00049 virtual bool groundClampingCullingEnabled() const; 00050 virtual void setGroundClampingCullingEnabled( bool enabled ); 00051 00052 virtual bool orientationClampingEnabled() const; 00053 virtual void setOrientationClampingEnabled( bool enabled ); 00054 00055 virtual bool lifeformsUprightEnabled() const; 00056 virtual void setLifeformsUprightEnabled( bool enabled ); 00057 00058 virtual bool smoothingEnabled() const; 00059 virtual void setSmoothingEnabled( bool enabled ); 00060 00061 virtual float smoothingPeriod() const; 00062 virtual void setSmoothingPeriod( float period ); 00063 00064 virtual bool entityIndicatorEnabled() const; 00065 virtual void setEntityIndicatorEnabled( bool enabled ); 00066 00067 virtual bool showStealthsEnabled() const; 00068 virtual void setShowStealthsEnabled( bool enabled ); 00069 00070 virtual bool infoPopupsOnSelectEnabled() const; 00071 virtual void setInfoPopupsOnSelectEnabled( bool enabled ); 00072 00073 virtual bool fireDetonateLinesEnabled() const; 00074 virtual void setFireDetonateLinesEnabled( bool enabled ); 00075 00076 virtual bool sensorVolumesVisible() const; 00077 virtual void setSensorVolumesVisible( bool visible ); 00078 00079 virtual bool entityHeightAboveTerrainLinesEnabled() const; 00080 virtual void setEntityHeightAboveTerrainLinesEnabled( bool enabled ); 00081 00082 virtual DtSharedEntityDisplaySettings::HeightAboveTerrainMode entityHeightAboveTerrainMode() const; 00083 virtual void setEntityHeightAboveTerrainMode( DtSharedEntityDisplaySettings::HeightAboveTerrainMode mode ); 00084 00085 virtual bool entitySimDataEnabled() const; 00086 virtual void setEntitySimDataEnabled( bool enabled ); 00087 00088 virtual DtSharedEntityDisplaySettings::ColorizedModelColorType colorizedModelColorType() const; 00089 virtual void setColorizedModelColorType( DtSharedEntityDisplaySettings::ColorizedModelColorType colorType ); 00090 00091 virtual float entityIconScale() const; 00092 virtual void setEntityIconScale( float scale ); 00093 00094 virtual bool hideEmbarked2DObjects() const; 00095 virtual void setHideEmbarked2DObjects( bool b ); 00096 00098 00099 protected: 00100 00102 template <typename ManagerClass> 00103 friend ManagerClass& defaultManagerInstanceFunction( DtDe&, bool ); 00104 00106 template <typename ManagerClass> 00107 friend void defaultManagerRegisterInstanceFunction( DtDe&, ManagerClass* ); 00108 00110 DtSharedEntityDisplaySettingsManager( DtDe& de ); 00111 00113 virtual void slot_backupRestored( const DtSettingsBackup* s ); 00114 00115 private: 00116 00118 void toggleEntityIndicators(); 00119 00121 void toggleEntityHatLines(); 00122 00124 void toggleEntityHatMode(); 00125 00127 void toggleSensorVolumes(); 00128 00129 }; 00130 00131 }