![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtRenderSettingsRecord.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <makArchives/makArchives.h> 00015 00016 namespace makArchives 00017 { 00021 class DT_DLL_MAKARCHIVES DtRenderSettingsRecord 00022 { 00023 public: 00024 00026 DtRenderSettingsRecord(); 00027 00029 ~DtRenderSettingsRecord(); 00030 00032 DtRenderSettingsRecord(const DtRenderSettingsRecord& orig); 00033 00035 DtRenderSettingsRecord& operator=(const DtRenderSettingsRecord& orig); 00036 00037 bool wireframeMode() const; 00038 void setWireframeMode(bool setting); 00039 00040 bool terrainScalingEnabled() const; 00041 void setTerrainScalingEnabled(bool enabled); 00042 00043 double terrainScaleFactor() const; 00044 void setTerrainScaleFactor(double scaleFactor); 00045 00046 bool clearTrackHistoryOnTerrainScaleChanged() const; 00047 void setClearTrackHistoryOnTerrainScaleChanged(bool clear); 00048 00049 bool shadowMode() const; 00050 void setShadowMode(bool setting); 00051 00052 int shadowQuality() const; 00053 void setShadowQuality(int setting); 00054 00055 bool entityShadowMode() const; 00056 void setEntityShadowMode(bool setting); 00057 00058 bool propShadowMode() const; 00059 void setPropShadowMode(bool setting); 00060 00061 bool terrainShadowMode() const; 00062 void setTerrainShadowMode(bool setting); 00063 00064 bool performanceOverlayEnabled() const; 00065 void setPerformanceOverlayEnabled(bool setting); 00066 00067 float planViewGeocentricOccludedTransparency() const; 00068 void setPlanViewGeocentricOccludedTransparency(float f); 00069 00070 protected: 00071 00073 friend class boost::serialization::access; 00074 00078 template<class Archive> 00079 void serialize(Archive & ar, const unsigned int version) 00080 { 00081 ar & BOOST_SERIALIZATION_NVP(myWireframeMode); 00082 ar & BOOST_SERIALIZATION_NVP(myShadowMode); 00083 ar & BOOST_SERIALIZATION_NVP(myShadowQuality); 00084 ar & BOOST_SERIALIZATION_NVP(myEntityShadowMode); 00085 ar & BOOST_SERIALIZATION_NVP(myPropShadowMode); 00086 ar & BOOST_SERIALIZATION_NVP(myTerrainShadowMode); 00087 00088 if(version >= 1) 00089 { 00090 ar & BOOST_SERIALIZATION_NVP(myPerformanceOverlayEnabled); 00091 } 00092 00093 if (version == 2) 00094 { 00095 // DDS Flip is no longer part of render settings. 00096 bool flip; 00097 ar & BOOST_SERIALIZATION_NVP(flip); 00098 } 00099 00100 if (version >= 4) 00101 { 00102 ar & BOOST_SERIALIZATION_NVP(myPlanViewGeocentricOccludedTransparency); 00103 } 00104 if (version >= 5) 00105 { 00106 ar & BOOST_SERIALIZATION_NVP(myTerrainScalingEnabled); 00107 ar & BOOST_SERIALIZATION_NVP(myTerrainScaleFactor); 00108 ar & BOOST_SERIALIZATION_NVP(myClearTrackHistoryOnTerrainScaleChanged); 00109 } 00110 } 00111 00112 protected: 00113 bool myWireframeMode; 00114 bool myShadowMode; 00115 int myShadowQuality; 00116 bool myEntityShadowMode; 00117 bool myPropShadowMode; 00118 bool myTerrainShadowMode; 00119 bool myPerformanceOverlayEnabled; 00120 float myPlanViewGeocentricOccludedTransparency; 00121 bool myTerrainScalingEnabled; 00122 double myTerrainScaleFactor; 00123 bool myClearTrackHistoryOnTerrainScaleChanged; 00124 }; 00125 } 00126 00127 00128 BOOST_CLASS_VERSION(makArchives::DtRenderSettingsRecord,5)