VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
changeWeatherCommand.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 
13 #include "vrfplan/simCommand.h"
14 #include "vrfplan/vrfplanDefines.h"
16 #include <readerWriter/rwReal.h>
17 #include <readerWriter/rwInt.h>
18 #include <readerWriter/rwBoolean.h>
19 #include <readerWriter/rwString.h>
20 #include "readerWriter/rwVector.h"
21 #include "vrfutil/rwWindLevels.h"
22 #include "vrfutil/rwUUID.h"
23 
30 {
31 public:
32 
35 
37  DtChangeWeatherCommand(const DtString& writeName,
38  DtReaderWriterRegistry* parentRegistry = NULL);
39 
41  DtChangeWeatherCommand(const DtString & writeName, const DtChangeWeatherCommand& orig,
42  DtReaderWriterRegistry* parentRegistry = NULL);
43 
45  virtual ~DtChangeWeatherCommand() override;
46 
49 
51  virtual const DtSimCommandMessageType& type() const override;
52 
54  virtual DtSimCommand * clone(const DtString& name, DtReaderWriterRegistry* parentRegistry = 0) const override;
55 
56  virtual int netRepSize() const override;
57  virtual bool setFromNet(const char* contentBuffer, unsigned contentSize) override;
58  virtual bool setToNet() override;
59 
61 
62  virtual void setAmbientAirTemperature(double celsius);
63  virtual double ambientAirTemperature() const;
65  virtual bool ambientAirTemperatureSpecified() const;
67  virtual void clearAmbientAirTemperature();
69 
71 
72  virtual void setAmbientAirPressure(double factor);
73  virtual double ambientAirPressure() const;
75  virtual bool ambientAirPressureSpecified() const;
77  virtual void clearAmbientAirPressure();
79 
81 
82  virtual void setAirPressureAltitude(double factor);
83  virtual double airPressureAltitude() const;
85  virtual bool airPressureAltitudeSpecified() const;
87  virtual void clearAirPressureAltitude();
89 
91 
92  virtual void setAirTemperatureAltitude(double factor);
93  virtual double airTemperatureAltitude() const;
95  virtual bool airTemperatureAltitudeSpecified() const;
97  virtual void clearAirTemperatureAltitude();
99 
101 
102  virtual void setAirPressureAltitudeIsSeaLevel(bool seaLevel);
103  virtual bool airPressureAltitudeIsSeaLevel() const;
105  virtual bool airPressureAltitudeIsSeaLevelSpecified() const;
107  virtual void clearAirPressureAltitudeIsSeaLevel();
109 
111 
112  virtual void setAirTemperatureAltitudeIsSeaLevel(bool seaLevel);
113  virtual bool airTemperatureAltitudeIsSeaLevel() const;
115  virtual bool airTemperatureAltitudeIsSeaLevelSpecified() const;
117  virtual void clearAirTemperatureAltitudeIsSeaLevel();
119 
121 
122  virtual void setSeaLevelWaterConcentration(double factor);
123  virtual double seaLevelWaterConcentration() const;
125  virtual bool seaLevelWaterConcentrationSpecified() const;
127  virtual void clearSeaLevelWaterConcentration();
129 
131 
132  virtual void setPrecipitationIntensity(double factor);
133  virtual double precipitationIntensity() const;
135  virtual bool precipitationIntensitySpecified() const;
137  virtual void clearPrecipitationIntensity();
139 
141 
142  virtual void setPrecipitationType(DtVrfWeatherPrecipitationType type);
143  virtual DtVrfWeatherPrecipitationType precipitationType() const;
145  virtual bool precipitationTypeSpecified() const;
147  virtual void clearPrecipitationType();
149 
152 
153  virtual void setVisibilityAndObscurant(double visibility, int obscurant);
154  virtual bool visibilityAndObscurant(double& visibility, int& obscurant) const;
156 
160 
161  virtual void setVisibility(double visibility);
162  virtual double visibility() const;
164 
166 
167  virtual void setWindDirection(double radians);
168  virtual double windDirection() const;
170 
172 
173  virtual void setWindSpeed(double value);
174  virtual double windSpeed() const;
176 
178 
179  virtual void setAirTurbulence(int value);
180  virtual int airTurbulence() const;
182  virtual bool airTurbulenceSpecified() const;
184  virtual void clearAirTurbulence();
186 
187 
188 
190 
191  virtual void setUnderwaterVisibility(double underwaterVisibility);
192  virtual double underwaterVisibility() const;
195  virtual bool underwaterVisibilitySpecified() const;
197  virtual void clearUnderwaterVisibility();
199 
201 
202  virtual void setSurfaceTransparency(double transparency);
203  virtual double surfaceTransparency() const;
206  virtual bool surfaceTransparencySpecified() const;
208  virtual void clearSurfaceTransparency();
210 
212 
213  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
214  virtual double waterCurrentSpeed() const;
216  virtual bool waterCurrentSpeedSpecified() const;
218  virtual void clearWaterCurrentSpeed();
220 
222 
223  virtual void setWaterCurrentDirection(double waterCurrentDirection);
224  virtual double waterCurrentDirection() const;
226  virtual bool waterCurrentDirectionSpecified() const;
228  virtual void clearWaterCurrentDirection();
230 
232 
233  virtual void setAmbientWaterTemperature(double waterTemperature);
234  virtual double ambientWaterTemperature() const;
237  virtual bool ambientWaterTemperatureSpecified() const;
239  virtual void clearAmbientWaterTemperature();
241 
243 
244  virtual void setTidalOffset(double tidalOffset);
245  virtual double tidalOffset() const;
247  virtual bool tidalOffsetSpecified() const;
249  virtual void clearTidalOffset();
251 
253 
254  virtual void setSwellState(unsigned int state);
255  virtual unsigned int swellState() const;
256  virtual bool swellStateSpecified() const;
257  virtual void clearSwellState();
259 
261 
262  virtual void setSwellStateDirection(double direction);
263  virtual double swellStateDirection() const;
264  virtual bool swellStateDirectionSpecified() const;
265  virtual void clearSwellStateDirection();
267 
269 
270  virtual void setSeaState(unsigned int state);
271  virtual unsigned int seaState() const;
272  virtual bool seaStateSpecified() const;
273  virtual void clearSeaState();
275 
277 
278  virtual void setSeaStateDirection(double direction);
279  virtual double seaStateDirection() const;
280  virtual bool seaStateDirectionSpecified() const;
281  virtual void clearSeaStateDirection();
283 
286  virtual void setWindDrivenSeaStateEnabled(bool enabled);
287  virtual bool windDrivenSeaStateEnabled() const;
288  virtual bool windDrivenSeaStateEnabledSpecified() const;
289  virtual void clearWindDrivenSeaStateEnabled();
291 
293 
294  virtual void setChoppiness(double choppiness);
295  virtual double choppiness() const;
296  virtual bool choppinessSpecified() const;
297  virtual void clearChoppiness();
299 
301 
302  virtual void setDepthOffset(double depth);
303  virtual double depthOffset() const;
304  virtual bool depthOffsetSpecified() const;
305  virtual void clearDepthOffset();
307 
309 
310  virtual void setWindFetch(double depth);
311  virtual double windFetch() const;
312  virtual bool windFetchSpecified() const;
313  virtual void clearWindFetch();
315 
317 
318  virtual void setSurgeDepth(double depth);
319  virtual double surgeDepth() const;
320  virtual bool surgeDepthSpecified() const;
321  virtual void clearSurgeDepth();
323 
325 
326  virtual void setFogHeight(double depth);
327  virtual double fogHeight() const;
328  virtual bool fogHeightSpecified() const;
329  virtual void clearFogHeight();
331 
333 
334  virtual void setFogColor(const DtVector&);
335  virtual const DtVector& fogColor() const;
336  virtual bool fogColorSpecified() const;
337  virtual void clearFogColor();
339 
341 
342  virtual void setBlowingParticulateMatter(int);
343  virtual int blowingParticulateMatter() const;
344  virtual bool blowingParticulateMatterSpecified() const;
345  virtual void clearBlowingParticulateMatter();
347 
349 
350  virtual void setSnowAccumulation(double snow);
351  virtual double snowAccumulation() const;
352  virtual bool snowAccumulationSpecified() const;
353  virtual void clearSnowAccumulation();
355 
357 
358  virtual void setSnowMinimumAltitude(double snow);
359  virtual double snowMinimumAltitude() const;
360  virtual bool snowMinimumAltitudeSpecified() const;
361  virtual void clearSnowMinimumAltitude();
363 
365 
366  virtual void setSnowRoadAccumulation(double snow);
367  virtual double snowRoadAccumulation() const;
368  virtual bool snowRoadAccumulationSpecified() const;
369  virtual void clearSnowRoadAccumulation();
371 
373 
374  virtual void setRainAccumulation(double rain);
375  virtual double rainAccumulation() const;
376  virtual bool rainAccumulationSpecified() const;
377  virtual void clearRainAccumulation();
379 
382 
383  virtual void setThermoclineLayer1Depth(double depth);
384  virtual double thermoclineLayer1Depth() const;
385  virtual bool thermoclineLayer1DepthSpecified() const;
386  virtual void clearThermoclineLayer1Depth();
387  virtual void setThermoclineLayer1Permeability(double depth);
388  virtual double thermoclineLayer1Permeability() const;
389  virtual bool thermoclineLayer1PermeabilitySpecified() const;
390  virtual void clearThermoclineLayer1Permeability();
391 
392  virtual void setThermoclineLayer2Depth(double depth);
393  virtual double thermoclineLayer2Depth() const;
394  virtual bool thermoclineLayer2DepthSpecified() const;
395  virtual void clearThermoclineLayer2Depth();
396  virtual void setThermoclineLayer2Permeability(double depth);
397  virtual double thermoclineLayer2Permeability() const;
398  virtual bool thermoclineLayer2PermeabilitySpecified() const;
399  virtual void clearThermoclineLayer2Permeability();
400 
401  virtual void setThermoclineLayer3Depth(double depth);
402  virtual double thermoclineLayer3Depth() const;
403  virtual bool thermoclineLayer3DepthSpecified() const;
404  virtual void clearThermoclineLayer3Depth();
405  virtual void setThermoclineLayer3Permeability(double depth);
406  virtual double thermoclineLayer3Permeability() const;
407  virtual bool thermoclineLayer3PermeabilitySpecified() const;
408  virtual void clearThermoclineLayer3Permeability();
409 
410  virtual void setThermoclineLayer4Depth(double depth);
411  virtual double thermoclineLayer4Depth() const;
412  virtual bool thermoclineLayer4DepthSpecified() const;
413  virtual void clearThermoclineLayer4Depth();
414  virtual void setThermoclineLayer4Permeability(double depth);
415  virtual double thermoclineLayer4Permeability() const;
416  virtual bool thermoclineLayer4PermeabilitySpecified() const;
417  virtual void clearThermoclineLayer4Permeability();
418 
419  virtual void setThermoclineLayer5Depth(double depth);
420  virtual double thermoclineLayer5Depth() const;
421  virtual bool thermoclineLayer5DepthSpecified() const;
422  virtual void clearThermoclineLayer5Depth();
423  virtual void setThermoclineLayer5Permeability(double depth);
424  virtual double thermoclineLayer5Permeability() const;
425  virtual bool thermoclineLayer5PermeabilitySpecified() const;
426  virtual void clearThermoclineLayer5Permeability();
428 
430 
431  virtual void setLightningPresent(bool isPresent);
432  virtual bool lightningPresent() const;
433  virtual bool lightningPresentSpecified() const;
434  virtual void clearLightningPresent();
436 
442 
443  virtual void setGeneratedByRemoteWeatherSetter(bool value);
444  virtual bool generatedByRemoteWeatherSetter() const;
446 
448  virtual DtString stringRep() const override;
449 
450  static DtSimCommand* creator();
451 
453  virtual void setUUID(const DtUUID&);
454  virtual const DtUUID& uuid() const;
455 
457  virtual void setPriority(int p);
458  virtual int priority() const;
459  virtual bool prioritySpecified() const;
460  virtual void clearPriority();
461 
466  virtual void clearWindLevels();
467  virtual bool windLevelsSpecified() const;
468  virtual void clearWindLevelsSpecified();
469 
471  virtual void setWindLevels(const DtRwWindLevels&);
472 
473  virtual const DtRwWindLevels& windLevels() const;
474  virtual DtRwWindLevels& windLevels();
476 
477  virtual bool operator==(const DtChangeWeatherCommand&) const;
478  virtual bool operator!=(const DtChangeWeatherCommand& rhs) const
479  {
480  return !(*this == rhs);
481  }
482 
484  virtual void setAllValuesSpecified(bool);
485 
487  virtual bool fromXml(const DtString& s) override;
488  virtual bool fromXmlFile(const DtFilename& s) override;
489 
491  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
492  const DtVariableBindingsList& variableBindings) override;
493 
494 protected:
531 
534 
538 
540 
542 
544 
546 
548 
550 };
551 
bool operator==(const DtReaderWriter &) const
Equivalence operator.
DtRwInt myAirTurbulence
Definition: changeWeatherCommand.h:504
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:13
DtRwReal myThermoclineLayer1Depth
Definition: changeWeatherCommand.h:520
DtRwBoolean myLightningPresent
Definition: changeWeatherCommand.h:549
DtRwReal mySeaLevelWaterConcentration
Definition: changeWeatherCommand.h:501
DtRwReal myAmbientAirPressure
Definition: changeWeatherCommand.h:496
DtRwUUID myUUID
Definition: changeWeatherCommand.h:545
DtRwReal myThermoclineLayer3Permeability
Definition: changeWeatherCommand.h:525
DtRwReal mySurfaceTransparency
Definition: changeWeatherCommand.h:506
virtual bool fromXmlFile(const DtFilename &)
Restores object from given xml file.
DtRwReal myRainAccumulation
Definition: changeWeatherCommand.h:541
DtRwReal myThermoclineLayer2Depth
Definition: changeWeatherCommand.h:522
virtual bool setToNet()
Calls netRep() to create the network buffer. Casts the resulting myNetRep to type DtNetSimSimCommand*...
DtRwReal myThermoclineLayer4Permeability
Definition: changeWeatherCommand.h:527
DtRwReal myThermoclineLayer2Permeability
Definition: changeWeatherCommand.h:523
DtRwReal myThermoclineLayer5Depth
Definition: changeWeatherCommand.h:528
DtRwReal myThermoclineLayer4Depth
Definition: changeWeatherCommand.h:526
DtRwReal myWindFetch
Definition: changeWeatherCommand.h:519
DtRwReal myTidalOffset
Definition: changeWeatherCommand.h:510
virtual DtString stringRep() const =0
Returns a human-readable string representation of the command. This string representation is used to ...
Definition: readerWriterRegistry.h:39
Contains the DtUUID class declaration.
DtRwReal myWaterCurrentDirection
Definition: changeWeatherCommand.h:508
DtRwReal mySnowAccumulation
Definition: changeWeatherCommand.h:535
DtRwInt myPriority
Definition: changeWeatherCommand.h:530
DtRwReal mySurgeDepth
Definition: changeWeatherCommand.h:517
virtual bool fromXml(const DtString &)
Restores object from given xml string. Returns true if valid.
uuid class
Definition: rwUUID.h:26
DtRwReal myWaterCurrentSpeed
Definition: changeWeatherCommand.h:507
DtRwReal myPrecipitationIntensity
Definition: changeWeatherCommand.h:502
DtRwReal myThermoclineLayer3Depth
Definition: changeWeatherCommand.h:524
Definition: rwVector.h:23
DtRwReal mySeaStateDirection
Definition: changeWeatherCommand.h:514
DtRwReal myThermoclineLayer1Permeability
Definition: changeWeatherCommand.h:521
DtRwVector myFogColor
Definition: changeWeatherCommand.h:533
virtual int netRepSize() const
Returns the size in bytes of the network representation of the class. This is the size in bytes of th...
DtRwReal mySnowRoadAccumulation
Definition: changeWeatherCommand.h:537
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
virtual bool setFromNet(const char *contentBuffer, unsigned contentSize)
Sets mySubsimCommand member from the incoming contentBuffer (cast to type DtNetSimSimCommand). Derived classes should call down to this function first, and then extract their own data starting at the location contentBuffer + DtSimCommand::netRepSize().
Description: Readable, Writable int.
Definition: rwInt.h:25
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwReal myAmbientAirTemperature
Definition: changeWeatherCommand.h:495
DtRwReal myDepthOffset
Definition: changeWeatherCommand.h:518
const DtSimCommand & operator=(const DtSimCommand &orig)
assignment operator; same as copy constructor
DtRwReal mySnowMinimumAltitude
Definition: changeWeatherCommand.h:536
DtRwReal myAirTemperatureAltitude
Definition: changeWeatherCommand.h:497
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:29
DtRwInt myBlowingParticulateMatter
Definition: changeWeatherCommand.h:539
DtRwReal myUnderwaterVisibility
Definition: changeWeatherCommand.h:505
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
DtRwReal myFogHeight
Definition: changeWeatherCommand.h:532
DtRwReal myThermoclineLayer5Permeability
Definition: changeWeatherCommand.h:529
DtRwInt myPrecipitationType
Definition: changeWeatherCommand.h:503
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
DtRwReal myChoppiness
Definition: changeWeatherCommand.h:516
DtRwReal myAirPressureAltitude
Definition: changeWeatherCommand.h:498
virtual DtSimCommand * clone() const
Version of clone that preserves the existing name, and assigns a null parent registry.
DtRwBoolean myGeneratedByRemoteWeatherSetter
Definition: changeWeatherCommand.h:543
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal mySwellStateDirection
Definition: changeWeatherCommand.h:512
virtual const DtSimCommandMessageType & type() const =0
#define DT_DLL_vrfplan
This file is used to determine how to build.
Definition: vrfplanDefines.h:28
virtual bool operator!=(const DtChangeWeatherCommand &rhs) const
Definition: changeWeatherCommand.h:478
DtRwInt mySwellState
Definition: changeWeatherCommand.h:511
Definition: rwWindLevels.h:17
DtRwBoolean myAirPressureAltitudeIsSeaLevel
Definition: changeWeatherCommand.h:500
DtRwBoolean myWindDrivenSeaStateEnabled
Definition: changeWeatherCommand.h:515
DtRwBoolean myAirTemperatureAltitudeIsSeaLevel
Definition: changeWeatherCommand.h:499
DtRwReal myAmbientWaterTemperature
Definition: changeWeatherCommand.h:509
DtRwInt mySeaState
Definition: changeWeatherCommand.h:513
DtRwWindLevels myWindLevels
Definition: changeWeatherCommand.h:547
File: rwVector.h.

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)