![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: physicalWorldParams.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef physicalWorldParams_H_ 00015 #define physicalWorldParams_H_ 00016 00017 #include "vrfutil/rdrWritr.h" 00018 #include "vrfobjparam/signaturePropagatorDescList.h" 00019 #include "vrfutil/rwNLengthStringVector.h" 00020 #include "vrfutil/rwBoolean.h" 00021 #include "vrfutil/rwObjectTypeList.h" 00022 #include "vrfutil/rwReal.h" 00023 #include "vrfobjparam/vrfobjparamDefines.h" 00024 00025 class DtReaderWriterRegistry; 00026 00029 class DT_DLL_vrfobjparam DtPhysicalWorldParams : public DtReaderWriter 00030 { 00031 public: 00033 DtPhysicalWorldParams(const DtString& rwName, 00034 DtReaderWriterRegistry* parentRegistry = NULL); 00035 DtPhysicalWorldParams(const DtSymbolString& rwName, 00036 DtReaderWriterRegistry* parentRegistry = NULL); 00037 00042 DtPhysicalWorldParams(const DtPhysicalWorldParams& orig, 00043 DtReaderWriterRegistry* parentRegistry = NULL); 00044 00046 DtPhysicalWorldParams& operator=(const DtPhysicalWorldParams& orig); 00047 00048 virtual ~DtPhysicalWorldParams(); 00049 00053 virtual DtSignaturePropagatorDescriptorList& signaturePropagatorParams(); 00054 virtual const DtSignaturePropagatorDescriptorList& signaturePropagatorParams() const; 00056 00060 virtual DtRwNLengthStringVector& lineOfSightTests(); 00061 virtual const DtRwNLengthStringVector& lineOfSightTests() const; 00063 00069 virtual bool extrudeVectorObstructions() const; 00070 virtual void setExtrudeVectorObstructions(bool extrude); 00072 00075 virtual bool allowEnvironmentalEffects() const; 00076 virtual void setAllowEnvironmentalEffects(bool allow); 00078 00082 00083 virtual DtRwObjectTypeList& spatialOrganizationObjectTypes(); 00084 virtual const DtRwObjectTypeList& spatialOrganizationObjectTypes() const; 00086 00088 00089 virtual double terrainPreloadLookaheadTime() const; 00090 virtual void setTerrainPreloadLookaheadTime(double v); 00092 00094 00095 virtual double terrainPreloadPeriod() const; 00096 virtual void setTerrainPreloadPeriod(double seconds); 00098 00100 00101 virtual double terrainPreloadExpireTime() const; 00102 virtual void setTerrainPreloadExpireTime(double seconds); 00104 00106 00107 virtual double terrainIntersectExpireTime() const; 00108 virtual void setTerrainIntersectExpireTime(double seconds); 00110 00113 00114 virtual void merge(const DtPhysicalWorldParams*); 00116 00118 00119 virtual void mergeLineOfSightTests(const DtPhysicalWorldParams*); 00120 virtual void addTest(const DtString& test); 00122 00124 00125 virtual void mergeSignaturePropagatorParams(const DtPhysicalWorldParams*); 00127 00129 00130 virtual void mergeSpatialOrganizationObjectTypes(const DtPhysicalWorldParams*); 00132 00133 private: 00135 DtPhysicalWorldParams(); 00136 00137 protected: 00138 DtSignaturePropagatorDescriptorList mySignaturePropagatorParams; 00139 00140 DtRwNLengthStringVector myLineOfSightTests; 00141 00142 DtRwBoolean myExtrudeVectorObstructions; 00143 DtRwBoolean myAllowEnvironmentalEffects; 00144 00145 DtRwObjectTypeList mySpatialOrganizationObjectTypes; 00146 00149 DtRwReal myTerrainPreloadLookaheadTime; 00150 00152 DtRwReal myTerrainPreloadPeriod; 00153 00156 DtRwReal myTerrainPreloadExpireTime; 00157 00160 DtRwReal myTerrainIntersectExpireTime; 00161 00162 }; 00163 00164 #endif