![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00010 00011 #ifndef globalEnvironmentSR_h 00012 #define globalEnvironmentSR_h 00013 00014 #include "vrfobjcore/vrfobjcoreDefines.h" 00015 #include "vrfobjcore/vrfObjSR.h" 00016 #include <vrfExtObjects/vrfWeatherStateEnums.h> 00017 00018 class DtGlobalEnvironmentParameters; 00019 00022 class DT_DLL_vrfobjcore DtGlobalEnvironmentStateRepository : public DtVrfObjectStateRepository 00023 { 00024 public: 00025 00027 DtGlobalEnvironmentStateRepository (DtVrfObject* vrfObject, 00028 const DtObjectType& objectType, DtVrfObjectParameters* parameters, 00029 const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0); 00030 00032 DtGlobalEnvironmentStateRepository(const DtGlobalEnvironmentStateRepository& orig, 00033 const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0); 00034 00036 DtGlobalEnvironmentStateRepository& operator=(const DtGlobalEnvironmentStateRepository& orig); 00037 00039 virtual ~DtGlobalEnvironmentStateRepository(); 00040 00044 virtual void resetToDefaults(); 00045 00046 static DtVrfObjectStateRepository* creator(const DtString& name, 00047 DtVrfObject* vrfObject, const DtObjectType& objectType, 00048 DtVrfObjectParameters* parameters, DtReaderWriterRegistry* parentRegistry); 00049 00050 static DtGlobalEnvironmentStateRepository* 00051 isGlobalEnvironmentStateRepository(DtSimObjectStateRepository* repository); 00052 00054 virtual DtSimObjectStateRepository* clone(const DtString& rwName = DtString::nullString(), 00055 DtReaderWriterRegistry* parentRegistry = 0) const; 00056 00057 virtual DtString type() const; 00058 00059 virtual bool createParameters(); 00060 virtual void initializeFromParameters(); 00061 virtual const DtGlobalEnvironmentParameters* globalEnvironmentParameters() const; 00062 00064 00065 virtual void setAirTurbidity(double value); 00066 virtual double airTurbidity() const; 00068 00070 00071 virtual void setCloudState(DtVrfWeatherCloudState current); 00072 virtual DtVrfWeatherCloudState cloudState() const; 00074 00076 00077 virtual void setPrecipitationIntensity(double value); 00078 virtual double precipitationIntensity() const; 00080 00082 00083 virtual void setPrecipitationType(DtVrfWeatherPrecipitationType value); 00084 virtual DtVrfWeatherPrecipitationType precipitationType() const; 00086 00088 00089 virtual void setWindSpeed(double value); 00090 virtual double windSpeed() const; 00092 00094 00095 virtual void setWindDirection(double value); 00096 virtual double windDirection() const; 00098 00100 00101 virtual void setVisibility(double value); 00102 virtual double visibility() const; 00104 00106 00107 virtual void setIllumination(double value); 00108 virtual double illumination() const; 00110 00112 00113 00114 virtual void setTimeOfDay(double value); 00115 virtual double timeOfDay() const; 00117 virtual DtString timeOfDayString() const; 00119 00121 00122 virtual void setTimeOfDayAdvancementSpeed(double value); 00123 virtual double timeOfDayAdvancementSpeed() const; 00125 00126 private: 00128 DtGlobalEnvironmentStateRepository(); 00129 00130 protected: 00133 00134 00138 DtRwReal myAirTurbidity; 00139 00144 DtRwInt myCloudState; 00145 00149 DtRwReal myPrecipitationIntensity; 00150 00155 DtRwInt myPrecipitationType; 00156 00161 DtRwReal myWindSpeed; 00162 00167 DtRwReal myWindDirection; 00168 00172 DtRwReal myIlluminationPercentage; 00173 00175 DtRwReal myTimeOfDay; 00176 00181 DtRwReal myTimeOfDayAdvancementSpeed; 00182 00187 DtRwReal myVisibility; 00189 }; 00190 00191 #endif