VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
environmentalStateSetter.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
15 #include <matrix/vlVector.h>
18 #include <vrfutil/rwWindLevels.h>
19 
21 class DtLocalObject;
23 
30 {
31 private:
33 
38 
39 public:
41  virtual ~DtEnvironmentalStateSetter();
42 
43  virtual bool init();
44 
45  virtual void setGlobalEnvironmentObject(DtLocalObject* vrfObject);
46 
48  virtual void setAmbientAirTemperature(double value) = 0;
49  virtual void setAmbientAirPressure(double value) = 0;
50  virtual void setAirTemperatureAltitude(double value) = 0;
51  virtual void setAirPressureAltitude(double value) = 0;
52  virtual void setSeaLevelWaterConcentration(double value) = 0;
53  virtual void setPrecipitationIntensity(double value) = 0;
54  virtual void setPrecipitationType(DtVrfWeatherPrecipitationType current) = 0;
55  virtual void setWindSpeed(double value) = 0;
56  virtual void setWindDirection(double value) = 0;
57  virtual void setVisibility(double value) = 0;
58  virtual void setDateAndTimeOfDay(double secondsPastUTC) = 0;
59  virtual void setTimeOfDayAdvancementSpeed(double speed) = 0;
60  virtual void setUnderwaterVisibility(double underwaterVisibility) = 0;
61  virtual void setSurfaceTransparency(double transparency) = 0;
62  virtual void setWaterCurrentSpeed(double waterCurrentSpeed) = 0;
63  virtual void setWaterCurrentDirection(double waterCurrentDirection) = 0;
64  virtual void setAmbientWaterTemperature(double waterTemperature) = 0;
65  virtual void setTidalOffset(double tidalOffset) = 0;
66  virtual void setSwellState(unsigned int state) = 0;
67  virtual void setSwellStateDirection(double direction) = 0;
68  virtual void setSeaState(unsigned int state) = 0;
69  virtual void setSeaStateDirection(double direction) = 0;
70  virtual void setWindDrivenSeaStateEnabled(bool b) = 0;
71  virtual void setChoppiness(double choppiness) = 0;
72  virtual void setSurgeDepth(double depth) = 0;
73  virtual void setFogHeight(double depth) = 0;
74  virtual void setFogColor(const DtVector& color) = 0;
75  virtual void setSnowAccumulation(double snow) = 0;
76  virtual void setSnowMinimumAltitude(double snow) = 0;
77  virtual void setSnowRoadAccumulation(double snow) = 0;
78  virtual void setRainAccumulation(double rain) = 0;
79  virtual void setThermoclineLayer1Depth(double depth) = 0;
80  virtual void setThermoclineLayer1Permeability(double depth) = 0;
81  virtual void setThermoclineLayer2Depth(double depth) = 0;
82  virtual void setThermoclineLayer2Permeability(double depth) = 0;
83  virtual void setThermoclineLayer3Depth(double depth) = 0;
84  virtual void setThermoclineLayer3Permeability(double depth) = 0;
85  virtual void setThermoclineLayer4Depth(double depth) = 0;
86  virtual void setThermoclineLayer4Permeability(double depth) = 0;
87  virtual void setThermoclineLayer5Depth(double depth) = 0;
88  virtual void setThermoclineLayer5Permeability(double depth) = 0;
89  virtual void setUseDayNightIlluminationModel(bool) = 0;
90  virtual void clearWindLevels() = 0;
91  virtual void setWindLevels(const DtRwWindLevels&) = 0;
92  virtual void setLightningPresent(bool isPresent) = 0;
93 
94 protected:
97 };
98 
102 {
103 public:
106 
108  virtual void setAmbientAirTemperature(double value);
109  virtual void setAmbientAirPressure(double value);
110  virtual void setAirTemperatureAltitude(double value);
111  virtual void setAirPressureAltitude(double value);
112  virtual void setSeaLevelWaterConcentration(double value);
113  virtual void setPrecipitationIntensity(double value);
115  virtual void setWindSpeed(double value);
116  virtual void setWindDirection(double value);
117  virtual void setVisibility(double value);
118  virtual void setDateAndTimeOfDay(double secondsPastMidnight);
119  virtual void setTimeOfDayAdvancementSpeed(double speed);
120  virtual void setUnderwaterVisibility(double underwaterVisibility);
121  virtual void setSurfaceTransparency(double transparency);
122  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
123  virtual void setWaterCurrentDirection(double waterCurrentDirection);
124  virtual void setAmbientWaterTemperature(double waterTemperature);
125  virtual void setTidalOffset(double tidalOffset);
126  virtual void setSwellState(unsigned int state);
127  virtual void setSwellStateDirection(double direction);
128  virtual void setSeaState(unsigned int state);
129  virtual void setSeaStateDirection(double direction);
130  virtual void setWindDrivenSeaStateEnabled(bool b);
131  virtual void setChoppiness(double choppiness);
132  virtual void setSurgeDepth(double depth);
133  virtual void setFogHeight(double depth);
134  virtual void setFogColor(const DtVector& color);
135  virtual void setSnowAccumulation(double snow);
136  virtual void setSnowMinimumAltitude(double snow);
137  virtual void setSnowRoadAccumulation(double snow);
138  virtual void setRainAccumulation(double rain);
139  virtual void setThermoclineLayer1Depth(double depth);
140  virtual void setThermoclineLayer1Permeability(double depth);
141  virtual void setThermoclineLayer2Depth(double depth);
142  virtual void setThermoclineLayer2Permeability(double depth);
143  virtual void setThermoclineLayer3Depth(double depth);
144  virtual void setThermoclineLayer3Permeability(double depth);
145  virtual void setThermoclineLayer4Depth(double depth);
146  virtual void setThermoclineLayer4Permeability(double depth);
147  virtual void setThermoclineLayer5Depth(double depth);
148  virtual void setThermoclineLayer5Permeability(double depth);
149  virtual void setUseDayNightIlluminationModel(bool);
150  virtual void setWindLevels(const DtRwWindLevels&);
151  virtual void clearWindLevels();
152  virtual void setLightningPresent(bool isPresent);
153 };
154 
158 {
159 public:
162 
163  virtual bool init();
164 
166  virtual void setAmbientAirTemperature(double value);
168  virtual void setAmbientAirPressure(double value);
169  virtual void setAirTemperatureAltitude(double value);
170  virtual void setAirPressureAltitude(double value);
171  virtual void setSeaLevelWaterConcentration(double value);
172  virtual void setPrecipitationIntensity(double value);
174  virtual void setWindSpeed(double value);
175  virtual void setWindDirection(double value);
176  virtual void setVisibility(double value);
177  virtual void setDateAndTimeOfDay(double secondsPastUTC);
178  virtual void setTimeOfDayAdvancementSpeed(double speed);
179  virtual void setUnderwaterVisibility(double underwaterVisibility);
180  virtual void setSurfaceTransparency(double transparency);
181  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
182  virtual void setWaterCurrentDirection(double waterCurrentDirection);
183  virtual void setAmbientWaterTemperature(double waterTemperature);
184  virtual void setTidalOffset(double tidalOffset);
185  virtual void setSwellState(unsigned int state);
186  virtual void setSwellStateDirection(double direction);
187  virtual void setSeaState(unsigned int state);
188  virtual void setSeaStateDirection(double direction);
189  virtual void setWindDrivenSeaStateEnabled(bool b);
190  virtual void setChoppiness(double choppiness);
191  virtual void setSurgeDepth(double depth);
192  virtual void setFogHeight(double depth);
193  virtual void setFogColor(const DtVector& color);
194  virtual void setSnowAccumulation(double snow);
195  virtual void setSnowMinimumAltitude(double snow);
196  virtual void setSnowRoadAccumulation(double snow);
197  virtual void setRainAccumulation(double rain);
198  virtual void setThermoclineLayer1Depth(double depth);
199  virtual void setThermoclineLayer1Permeability(double depth);
200  virtual void setThermoclineLayer2Depth(double depth);
201  virtual void setThermoclineLayer2Permeability(double depth);
202  virtual void setThermoclineLayer3Depth(double depth);
203  virtual void setThermoclineLayer3Permeability(double depth);
204  virtual void setThermoclineLayer4Depth(double depth);
205  virtual void setThermoclineLayer4Permeability(double depth);
206  virtual void setThermoclineLayer5Depth(double depth);
207  virtual void setThermoclineLayer5Permeability(double depth);
208  virtual void setUseDayNightIlluminationModel(bool);
209  virtual void setWindLevels(const DtRwWindLevels&);
210  virtual void clearWindLevels();
211  virtual void setLightningPresent(bool isPresent);
212 
213 protected:
214  static void tickCallback(void* usr);
215  virtual void tick();
216 
219 };
220 
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:13
A DtSimCommand subclass which specifies a change to the global weather settings in the simulation eng...
Definition: changeGlobalWeatherCommand.h:22
virtual void setUnderwaterVisibility(double underwaterVisibility)=0
virtual void clearWindLevels()=0
virtual void setThermoclineLayer4Depth(double depth)=0
virtual void setWindDirection(double value)=0
virtual void setPrecipitationType(DtVrfWeatherPrecipitationType current)=0
virtual void setSurfaceTransparency(double transparency)=0
virtual void setAmbientAirTemperature(double value)=0
For weather.
virtual void setThermoclineLayer5Depth(double depth)=0
virtual void setSeaLevelWaterConcentration(double value)=0
virtual void setAirPressureAltitude(double value)=0
virtual void setThermoclineLayer1Depth(double depth)=0
virtual void setSwellState(unsigned int state)=0
DtLocalObject * myGlobalEnvironmentObject
Definition: environmentalStateSetter.h:96
virtual void setThermoclineLayer5Permeability(double depth)=0
DT_DLL_terrainCS bool operator==(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
virtual void setDateAndTimeOfDay(double secondsPastUTC)=0
virtual void setThermoclineLayer2Depth(double depth)=0
virtual void setChoppiness(double choppiness)=0
virtual void setAmbientAirPressure(double value)=0
virtual void setVisibility(double value)=0
virtual void setThermoclineLayer4Permeability(double depth)=0
DtChangeGlobalWeatherCommand * myChangeCommand
Definition: environmentalStateSetter.h:217
virtual void setThermoclineLayer3Permeability(double depth)=0
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual void setPrecipitationIntensity(double value)=0
Contains the enums for cloud layers.
virtual void setWindDrivenSeaStateEnabled(bool b)=0
virtual void setSnowAccumulation(double snow)=0
bool myChangeCommandNeedsSending
Definition: environmentalStateSetter.h:218
virtual void setThermoclineLayer2Permeability(double depth)=0
virtual void setTimeOfDayAdvancementSpeed(double speed)=0
virtual void setSeaStateDirection(double direction)=0
virtual void setSnowMinimumAltitude(double snow)=0
virtual void setRainAccumulation(double rain)=0
virtual void setSeaState(unsigned int state)=0
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
virtual void setWaterCurrentSpeed(double waterCurrentSpeed)=0
Sends environment setting messages to the simulator that is currently simulating the global environme...
Definition: environmentalStateSetter.h:157
virtual void setSnowRoadAccumulation(double snow)=0
virtual void setSurgeDepth(double depth)=0
Sets the environmental state in a locally simulated environmental state object.
Definition: environmentalStateSetter.h:101
virtual void setAirTemperatureAltitude(double value)=0
DtEnvironmentalStateManager * myEnvironmentalStateManager
Definition: environmentalStateSetter.h:95
virtual void setUseDayNightIlluminationModel(bool)=0
virtual void setThermoclineLayer1Permeability(double depth)=0
Maintains the environmental state of the simulation, such as time of day, illumination, and various aspects of the weather. All access to this data from any behavior or dynamics model should be made to this class.
Definition: environmentalStateManager.h:67
virtual void setLightningPresent(bool isPresent)=0
virtual void setAmbientWaterTemperature(double waterTemperature)=0
virtual void setTidalOffset(double tidalOffset)=0
virtual void setFogHeight(double depth)=0
virtual void setWindSpeed(double value)=0
Definition: rwWindLevels.h:17
virtual void setSwellStateDirection(double direction)=0
virtual void setWindLevels(const DtRwWindLevels &)=0
Abstract base class for classes that set new environmental state to the environmental state simulator...
Definition: environmentalStateSetter.h:29
virtual void setWaterCurrentDirection(double waterCurrentDirection)=0
virtual void setThermoclineLayer3Depth(double depth)=0
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
virtual void setFogColor(const DtVector &color)=0

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)