VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
weatherStateRepository.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 #include <vrfutil/rwWindLevels.h>
17 
21 {
22 public:
25  const DtObjectType& objectType, DtVrfObjectParameters* parameters,
26  const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0);
27 
30  const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0);
31 
34 
36  virtual ~DtWeatherStateRepository();
37 
42  virtual void resetToDefaults();
43 
44  static DtVrfObjectStateRepository* creator(const DtString& name,
45  DtVrfObject* vrfObject, const DtObjectType& objectType,
46  DtVrfObjectParameters* parameters, DtReaderWriterRegistry* parentRegistry);
47 
49  isWeatherStateRepository(DtSimObjectStateRepository* repository);
50 
52  virtual DtSimObjectStateRepository* clone(const DtString& rwName = DtString::nullString(),
53  DtReaderWriterRegistry* parentRegistry = 0) const;
54 
55  virtual DtString type() const;
56 
58 
59  virtual void setAirTurbidity(double value);
60  virtual double airTurbidity() const;
62 
64 
65  virtual void setAmbientAirTemperature(double value);
66  virtual double ambientAirTemperature() const;
68 
70 
71  virtual void setAmbientAirPressure(double value);
72  virtual double ambientAirPressure() const;
74 
76 
77  virtual void setAirTemperatureAltitude(double value);
78  virtual double airTemperatureAltitude() const;
80 
82 
83  virtual void setAirPressureAltitude(double value);
84  virtual double airPressureAltitude() const;
86 
88 
89  virtual void setAirTemperatureAltitudeIsSeaLevel(bool value);
90  virtual bool airTemperatureAltitudeIsSeaLevel() const;
92 
94 
95  virtual void setAirPressureAltitudeIsSeaLevel(bool value);
96  virtual bool airPressureAltitudeIsSeaLevel() const;
98 
100 
101  virtual void setSeaLevelWaterConcentration(double value);
102  virtual double seaLevelWaterConcentration() const;
104 
106 
107  virtual void setPrecipitationIntensity(double value);
108  virtual double precipitationIntensity() const;
110 
112 
113  virtual void setPrecipitationType(DtVrfWeatherPrecipitationType value);
114  virtual DtVrfWeatherPrecipitationType precipitationType() const;
116 
118 
119  virtual void setWindSpeed(double value);
120  virtual double windSpeed() const;
122 
124 
125  virtual void setWindDirection(double value);
126  virtual double windDirection() const;
128 
130 
131  virtual void setAirTurbulence(int value);
132  virtual int airTurbulence() const;
134 
135 
136 
137 
139 
140  virtual void setVisibility(double value);
141  virtual double visibility() const;
142 
144  virtual double visibility(const DtVector& location) const;
146 
148 
149  virtual void setPriority(int value);
150  virtual int priority() const;
152 
154 
155  virtual void setUnderwaterVisibility(double underwaterVisibility);
156  virtual double underwaterVisibility() const;
158 
160 
161  virtual void setSurfaceTransparency(double transparency);
162  virtual double surfaceTransparency() const;
164 
166 
167  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
168  virtual double waterCurrentSpeed() const;
170 
172 
173  virtual void setWaterCurrentDirection(double waterCurrentDirection);
174  virtual double waterCurrentDirection() const;
176 
178 
179  virtual void setAmbientWaterTemperature(double waterTemperature);
180  virtual double ambientWaterTemperature() const;
182 
184 
185  virtual void setTidalOffset(double tidalOffset);
186  virtual double tidalOffset() const;
188 
191 
192  virtual void setTidalDirection(bool tidalDirection);
193  virtual bool tidalDirection() const;
195 
197 
198  virtual void setSwellState(unsigned int state);
199  virtual unsigned int swellState() const;
201 
203 
204  virtual void setSwellStateDirection(double direction);
205  virtual double swellStateDirection() const;
207 
209 
210  virtual void setSeaState(unsigned int state);
211  virtual unsigned int seaState() const;
213 
215 
216  virtual void setSeaStateDirection(double direction);
217  virtual double seaStateDirection() const;
219 
221 
222  virtual void setWindDrivenSeaStateEnabled(bool b);
223  virtual bool windDrivenSeaStateEnabled() const;
225 
227 
228  virtual void setChoppiness(double choppiness);
229  virtual double choppiness() const;
231 
233 
234  virtual void setSurgeDepth(double depth);
235  virtual double surgeDepth() const;
237 
239 
240  virtual void setFogHeight(double depth);
241  virtual double fogHeight() const;
243 
245 
246  virtual void setFogColor(const DtVector& color);
247  virtual const DtVector& fogColor() const;
249 
251 
252  virtual void setSnowAccumulation(double snow);
253  virtual double snowAccumulation() const;
255 
257 
258  virtual void setSnowMinimumAltitude(double snow);
259  virtual double snowMinimumAltitude() const;
261 
263 
264  virtual void setSnowRoadAccumulation(double snow);
265  virtual double snowRoadAccumulation() const;
267 
269 
270  virtual void setRainAccumulation(double rain);
271  virtual double rainAccumulation() const;
273 
276 
277  virtual void setThermoclineLayer1Depth(double depth);
278  virtual double thermoclineLayer1Depth() const;
279  virtual void setThermoclineLayer1Permeability(double depth);
280  virtual double thermoclineLayer1Permeability() const;
281  virtual void setThermoclineLayer2Depth(double depth);
282  virtual double thermoclineLayer2Depth() const;
283  virtual void setThermoclineLayer2Permeability(double depth);
284  virtual double thermoclineLayer2Permeability() const;
285  virtual void setThermoclineLayer3Depth(double depth);
286  virtual double thermoclineLayer3Depth() const;
287  virtual void setThermoclineLayer3Permeability(double depth);
288  virtual double thermoclineLayer3Permeability() const;
289  virtual void setThermoclineLayer4Depth(double depth);
290  virtual double thermoclineLayer4Depth() const;
291  virtual void setThermoclineLayer4Permeability(double depth);
292  virtual double thermoclineLayer4Permeability() const;
293  virtual void setThermoclineLayer5Depth(double depth);
294  virtual double thermoclineLayer5Depth() const;
295  virtual void setThermoclineLayer5Permeability(double depth);
296  virtual double thermoclineLayer5Permeability() const;
298 
300  //{@
301  virtual void setLightningPresent(bool isPresent);
302  virtual bool lightningPresent() const;
304 
307 
310  virtual void addWindLevel(const DtRwWindLevel&);
311  virtual void addWindLevel(double altMSL, double windSpeed, double windDirection, double visibilityDistance, int visibilityObscurant);
312  virtual void clearWindLevels();
313  virtual bool windLevelsChanged() const;
314  virtual void clearWindLevelsChanged();
315 
317  virtual void removeWindLevel(double baseAltitude);
318 
320  virtual bool windSpeedAndDirectionAtAltitude(double altMSL, double& windSpeed, double& windDirection) const;
321 
323  virtual bool visibilityAndObscurantAtAltitude(double altMSL, double& visibility, int& obscurrant) const;
324 
325  virtual void setWindLevels(const DtRwWindLevels&);
326  virtual const DtRwWindLevels& windLevels() const;
328 
329  virtual void postGetSelf();
330 
332  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
333  const DtVariableBindingsList& variableBindings);
334 
335 private:
338 
339 protected:
342 
343 
348 
354 
360 
366 
372 
377 
382 
388 
394 
400 
405 
408 
415 
421 
427 
433 
439 
446 
452 
458 
464 
470 
476 
483 
489 
496 
503 
510 
516 
522 
528 
534 
541 
548 
556 
564 
572 
580 
586 
588 
594 };
595 
DtRwBoolean myTidalDirection
Parameter Name: tidal-direction Parameter Description: Direction of the tide Default Value: false Uni...
Definition: weatherStateRepository.h:451
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:13
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:59
DtRwReal mySeaLevelWaterConcentration
Parameter Name: sea-level-water-concentration Parameter Description: Sea level water concentration...
Definition: weatherStateRepository.h:387
DtRwInt myPriority
The priority that this weather area will take over overlapping weather areas.
Definition: weatherStateRepository.h:407
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtRwReal mySnowRoadAccumulation
Parameter Name: snow-road-accumulation Parameter Description: Snow road accumulation Default Value: 0...
Definition: weatherStateRepository.h:527
DtRwReal myRainAccumulation
Parameter Name: rain-accumulation Parameter Description: Rain accumulation Default Value: 0...
Definition: weatherStateRepository.h:533
DtRwReal myUnderwaterVisibility
Parameter Name: underwater-visibility Parameter Description: How far one can see and still distinguis...
Definition: weatherStateRepository.h:414
DtRwReal myAmbientAirPressure
Parameter Name: ambient-air-pressure Parameter Description: Ambient pressure of the air...
Definition: weatherStateRepository.h:359
DtRwVector myFogColor
Parameter Name: fog-color Parameter Description: Color that the air fades to as visibility goes to ze...
Definition: weatherStateRepository.h:509
DtRwReal myTidalOffset
Parameter Name: tidal-offset Parameter Description: The value of sea level relative to the water poly...
Definition: weatherStateRepository.h:445
virtual DtSimObjectStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const
Clone.
DtRwReal myWaterCurrentSpeed
Parameter Name: water-current-speed Parameter Description: How fast the water currents are moving Def...
Definition: weatherStateRepository.h:426
DtRwBoolean myAirTemperatureAltitudeIsSeaLevel
Parameter Name: air-temperature-altitude-is-sea-level Parameter Description: Altitude of the air temp...
Definition: weatherStateRepository.h:376
DtRwReal myFogHeight
Parameter Name: fog-height Parameter Description: Height at which visibility effects start diminishin...
Definition: weatherStateRepository.h:502
DtRwReal myThermoclineLayer5Depth
Parameter Name: &quot;thermocline-layer5-depth&quot; Parameter Description: Thermocline depth.
Definition: weatherStateRepository.h:578
DtRwReal myPrecipitationIntensity
Parameter Name: precipitation-intensity Parameter Description: Precipitation intensity.
Definition: weatherStateRepository.h:393
DtRwWindLevels myWindLevels
Parameter Name: &quot;wind-levels&quot; Parameter Description: The levels of wind beyond the default Default Va...
Definition: weatherStateRepository.h:592
*virtual const DtObjectType & objectType() const
The DtSimObjectStateRepository is an abstract base class (ABC) for all state repositories.
Definition: simObjectStateRepository.h:46
const DtVrfOverlayObjectStateRepository & operator=(const DtVrfOverlayObjectStateRepository &orig)
Assignment Operator.
Definition: readerWriterRegistry.h:39
DtRwReal myThermoclineLayer1Permeability
Parameter Name: &quot;thermocline-layer1-permeability&quot; Parameter Description: Thermocline depth...
Definition: weatherStateRepository.h:547
DtRwReal myAmbientWaterTemperature
Parameter Name: ambient-water-temperature Parameter Description: The ambient temperature of the water...
Definition: weatherStateRepository.h:438
Description: This repository holds all information that is common to all the forms of all entity/aggr...
Definition: vrfObjectStateRepository.h:87
This repository holds all information that is common to all the forms of all objects within VR-Forces...
Definition: weatherStateRepository.h:20
Definition: objectType.h:27
bool myWindLevelsChanged
Definition: weatherStateRepository.h:593
Definition: rwVector.h:23
DtRwBoolean myLightningPresent
Parameter Name: lightning-present Parameter Description: Determines if lightning is present Default V...
Definition: weatherStateRepository.h:585
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
DtRwReal mySnowMinimumAltitude
Parameter Name: snow-minimum-altitude Parameter Description: Snow minimum altitude Default Value: 0...
Definition: weatherStateRepository.h:521
DtRwReal myAirTurbidity
Parameter Name: air-turbidity Parameter Description: Turbidity of the air.
Definition: weatherStateRepository.h:347
DtRwReal myThermoclineLayer2Permeability
Definition: weatherStateRepository.h:555
Description: Readable, Writable int.
Definition: rwInt.h:25
DtRwReal myThermoclineLayer4Depth
Parameter Name: &quot;thermocline-layer4-depth&quot; Parameter Description: Thermocline depth.
Definition: weatherStateRepository.h:570
DtRwBoolean myWindDrivenSeaStateEnabled
Parameter Name: wind-driven-sea-state-enabled Parameter Description: Determines if the sea state is s...
Definition: weatherStateRepository.h:482
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwInt myAirTurbulence
Parameter Name: air-turbulence Parameter Description: The air turbulence intensity Default Value: 0...
Definition: weatherStateRepository.h:404
DtRwInt mySwellState
Parameter Name: swell-state Parameter Description: Swell state according to the Douglas Sea Scale Def...
Definition: weatherStateRepository.h:457
DtRwReal myThermoclineLayer4Permeability
Definition: weatherStateRepository.h:571
DtRwReal myThermoclineLayer2Depth
Parameter Name: &quot;thermocline-layer2-depth&quot; Parameter Description: Thermocline depth.
Definition: weatherStateRepository.h:554
virtual DtString type() const
returns DtSimObjectStateRepositoryType
DtRwBoolean myAirPressureAltitudeIsSeaLevel
Parameter Name: air-pressure-altitude-is-sea-level Parameter Description: Altitude of the pressure is...
Definition: weatherStateRepository.h:381
static DtVrfObjectStateRepository * creator(const DtString &name, DtVrfObject *vrfObject, const DtObjectType &objectType, DtVrfObjectParameters *parameters, DtReaderWriterRegistry *parentRegistry)
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
DtRwInt myPrecipitationType
Parameter Name: precipitation-type Parameter Description: An enumeration describing the type of preci...
Definition: weatherStateRepository.h:399
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal myThermoclineLayer1Depth
Parameter Name: &quot;thermocline-layer1-depth&quot; Parameter Description: Thermocline depth.
Definition: weatherStateRepository.h:540
DtRwReal myAmbientAirTemperature
Parameter Name: ambient-air-temperature Parameter Description: Ambient temperature of the air...
Definition: weatherStateRepository.h:353
DtRwReal mySeaStateDirection
Parameter Name: sea-state-direction Parameter Description: Direction of the sea state for Triton Defa...
Definition: weatherStateRepository.h:475
DtRwReal mySurfaceTransparency
Parameter Name: surface-transparency Parameter Description: Surface transparency (only affects the vi...
Definition: weatherStateRepository.h:420
DtRwReal myAirPressureAltitude
Parameter Name: air-pressure-altitude Parameter Description: Altitude of the pressure, in meters Default Value: 0.
Definition: weatherStateRepository.h:371
Definition: vrfOverlayObjectStateRepository.h:29
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Override getSelf to handle mapping of old pre-2.0 oob files.
DtRwInt mySeaState
Parameter Name: sea-state Parameter Description: Sea state according to the Douglas Sea Scale Default...
Definition: weatherStateRepository.h:469
DtRwReal myChoppiness
Parameter Name: choppiness Parameter Description: Wave choppiness for Triton Default Value: 0...
Definition: weatherStateRepository.h:488
virtual void postGetSelf()
Hook function called immediately following getSelf().
DtRwReal myWaterCurrentDirection
Parameter Name: water-current-direction Parameter Description: The direction the water currents are f...
Definition: weatherStateRepository.h:432
Reader-Writer wind level specified by floor altitude, speed and direction.
Definition: rwWindLevel.h:18
DtRwReal myAirTemperatureAltitude
Parameter Name: air-temperature-altitude Parameter Description: Altitude of the air temperature...
Definition: weatherStateRepository.h:365
DtRwReal myThermoclineLayer5Permeability
Definition: weatherStateRepository.h:579
Definition: rwWindLevels.h:17
DtRwReal myThermoclineLayer3Depth
Parameter Name: &quot;thermocline-layer3-depth&quot; Parameter Description: Thermocline depth.
Definition: weatherStateRepository.h:562
DtRwReal mySwellStateDirection
Parameter Name: swell-state-direction Parameter Description: Direction of the swell for Triton Defaul...
Definition: weatherStateRepository.h:463
DtRwReal mySnowAccumulation
Parameter Name: snow-accumulation Parameter Description: Snow accumulation Default Value: 0...
Definition: weatherStateRepository.h:515
DtRwReal mySurgeDepth
Parameter Name: surge-depth Parameter Description: Depth at which wave action starts getting calmed...
Definition: weatherStateRepository.h:495
DtRwReal myThermoclineLayer3Permeability
Definition: weatherStateRepository.h:563

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)