VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationCommandSetGlobalWeather.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
18 #include <vrfutil/rwUUID.h>
20 #endif
21 
22 class DtSimCommandStmt;
23 
24 namespace makVrv
25 {
26  class DtEnvironmentConditionsLogic;
27  class DtPersistenceToolbarWidget;
28 }
29 
30 namespace makVrf
31 {
32  class DtLocalEnvironment;
33 
36  {
37  public:
40 
41  virtual void setObject(const DtUUID&) override;
42  virtual DtUUID object() const override;
43 
44  virtual DtSimCommandObjectWrapper* clone() const override;
45  };
46 
49  {
50  Q_OBJECT
51 
52  public:
53  //CTOR
55  QWidget* parent, const Qt::WindowFlags& flags = 0,
57 
58  //DTOR
60 
61  virtual makVrv::DtUnicode broadcastTitle() const override {
62  return makVrv::DtUnicode::tr("Global Weather");
63  }
64 
66  virtual void setDisplayMode(int mode) override
69 
70  virtual void commandFromDialogData(DtChangeWeatherCommand&) override;
71  virtual void setPrecipitationIntensity(double intensity);
72  virtual void setAmbientAirTemperature(double intensity);
73  virtual void setAmbientAirPressure(double value);
74  virtual void setAirTemperatureAltitude(double altitude);
75  virtual void setAirPressureAltitude(double altitude);
76  virtual void setAirTemperatureAltitudeIsSeaLevel(bool seaLevel);
77  virtual void setAirPressureAltitudeIsSeaLevel(bool seaLevel);
78  virtual void setSeaLevelWaterConcentration(double water);
79  virtual void setPrecipitationType(int type);
80  virtual void setVisibilityDistance(double distance);
81  virtual void setBlowingParticulateMatter(int);
82 
84  virtual void setWindDirection(float altMSL, float);
85  virtual void setWindSpeed(float altMSL, float);
86  virtual void setVisibilityDistance(float altMSL, float);
87  virtual void setVisibilityObscurant(float altMSL, unsigned int);
88 
89  virtual void setCloudType(float altMSL, int);
90  virtual void setCloudDensity(float altMSL, float);
91  virtual void setSkyCoverage(float altMSL, float);
92 
93  virtual void setUnderwaterVisibility(double visibility);
94  virtual void setSurfaceTransparency(double transparency);
95  virtual void setSwellState(unsigned int state);
96  virtual void setSwellStateDirection(double direction);
97  virtual void setSeaState(unsigned int state);
98  virtual void setSeaStateDirection(double direction);
99  virtual void setWindDrivenSeaStateEnabled(bool enabled);
100  virtual void setChoppiness(double choppiness);
101  virtual void setSurgeDepth(double depth);
102  virtual void setWaterCurrentSpeed(double speed);
103  virtual void setWaterCurrentDirection(double dir);
104  virtual void setFogHeight(double depth);
105  virtual void setFogColor(const DtVector&);
106  virtual void setSnowAccumulation(double snow);
107  virtual void setSnowMinimumAltitude(double snow);
108  virtual void setSnowRoadAccumulation(double snow);
109  virtual void setRainAccumulation(double rain);
110  virtual void setLightningPresent(bool isPresent);
111 
112  virtual double ambientAirTemperature();
113  virtual double ambientAirPressure();
114  virtual double airTemperatureAltitude();
115  virtual double airPressureAltitude();
116  virtual bool airTemperatureAltitudeIsSeaLevel();
117  virtual bool airPressureAltitudeIsSeaLevel();
118  virtual double seaLevelWaterConcentration();
119  virtual double precipitationIntensity();
120  virtual unsigned int precipitationType();
121  virtual double visibilityDistance();
122  virtual double windDirection(float altMSL);
123  virtual double windSpeed(float altMSL);
124  virtual double visibilityDistance(float altMSL);
125  virtual unsigned int visibilityObscurant(float altMSL);
126  virtual unsigned int cloudType(float altMSL);
127  virtual double cloudDensity(float altMSL);
128  virtual double skyCoverage(float altMSL);
129  virtual double underwaterVisibility();
130  virtual double surfaceTransparency();
131  virtual unsigned int swellState();
132  virtual double swellStateDirection();
133  virtual unsigned int seaState();
134  virtual double seaStateDirection();
135  virtual int blowingParticulateMatter() const;
136  virtual bool windDrivenSeaStateEnabled();
137  virtual double waterCurrentSpeed();
138  virtual double waterCurrentDirection();
139  virtual double fogHeight();
140  virtual DtVector fogColor();
141  virtual double snowAccumulation();
142  virtual double snowMinimumAltitude();
143  virtual double snowRoadAccumulation();
144  virtual double rainAccumulation();
145 
146  virtual bool lightningPresent();
147 
148  virtual double choppiness();
149  virtual double surgeDepth();
150  virtual bool editStatement(const std::set<makVrv::DtUniqueID>& data, const DtSimStatement* s) override;
151 
152  virtual void setCurrentEnvironment(const QString& s) override;
153 
154  protected:
155  virtual QWidget* contents(const std::set<makVrv::DtUniqueID>& data) override;
156 
157  virtual void sendRequest() override;
158  virtual void setupStatement(const DtSimStatement*) override;
159 
160  virtual bool wantsSelectionOfObjectInCommandMode(const std::set<makVrv::DtUniqueID>&) const override;
161 
163  virtual std::vector<std::string> commandDialogFiltersFor(
164  const std::set<makVrv::DtUniqueID>& data, const DtSimStatement* stmt, int& initialSelection) const override;
165 
166  virtual void setupFrom(const std::set<makVrv::DtUniqueID>& s) override;
167  virtual void setupFromCommand(const DtChangeWeatherCommand& cmd);
168 
170  virtual bool initiallyBroadcast() const override;
171 
172  protected:
179 
182  };
183 
186  {
187  public:
188  virtual DtSimulationCommandDialogInterface* create(makVrv::DtDe&, QWidget* parent) override;
189  virtual bool supportsType(makVrv::DtDe&, const DtSimCommandMessageType&, const DtSimStatement*) const override;
190  virtual DtUUID objectFromStatement(makVrv::DtDe&, const DtSimCommand*) const override;
191  };
192 
194  {
195  public:
198 
199  virtual void blockEnvironmentSignals(bool b) override;
200  virtual void sendEnvironmentToGUI(bool b) override;
201 
202  virtual void onAddEnvironmentConditions(const makVrv::DtUnicode& name) override;
203  virtual void onRemoveEnvironmentConditions(const makVrv::DtUnicode& name) override;
204  virtual void onElevationalConfigurationAltitudeChanged(float newAltitude, float oldAltitude) override;
205 
206  virtual void onUpdateElevationalConfiguration(float baseMSLAltitude,
207  float windSpeed, float windDirection,
208  float visibilityDistance, makVrv::DtEnvironmentInterface::VisibilityObscurant obscurant,
209  makVrv::DtEnvironmentInterface::CloudType cloudType, float cloudDensity, int skyCoverage) override;
210 
211  virtual void onChangePrecipitationIntensity(double value) override;
212  virtual void onSaveEnvironmentConditions(const makVrv::DtUnicode& name) override;
213 
214  virtual void onChangeWindSpeed(double value) override;
215  virtual void onChangeWindDirection(double value) override;
216 
217  protected:
218  virtual void elevationalConfigurationAdded(makVrv::DtEnvironmentInterface::DtElevationalConfigurationRecord rec) override;
219  virtual void elevationalConfigurationUpdated(makVrv::DtEnvironmentInterface::DtElevationalConfigurationRecord rec) override;
220  virtual void onAddElevationalConfiguration() override;
221  virtual void onRemoveElevationalConfiguration(float altitude) override;
222  virtual void updateWeatherConditions();
223 
224  virtual void updateWeatherConditions(const makArchives::DtEnvironmentRecord& rec);
225 
226  protected:
228  };
229 }
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Instances of DtSimCommandStmt represent a single sim-command in a DtPlan.
Definition: simCommandStmt.h:32
A widget that displays a persistence GUI in some way Operations presented are import, export, save, and restore.
Definition: DtPersistenceToolbarWidget.h:26
QString myCurrentEnvironment
Definition: simulationCommandSetGlobalWeather.h:180
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
Declaration for the makVrv::DtEnvironmentConditionsLogic class.
Definition: simulationCommandSetGlobalWeather.h:47
Class that is used as a template for task/set dialogs.
Definition: simulationCommandDialogInterface.h:39
makVrv::DtPersistenceToolbarWidget * myToolbar
Definition: simulationCommandSetGlobalWeather.h:174
Definition: localEnvironment.h:27
A GUI widget for configuring the environmental conditions.
Definition: vrfEnvironmentConditionsWeatherWidget.h:49
DtVrfEnvironmentConditionsWeatherWidget::DisplayMode myDisplayMode
Definition: simulationCommandSetGlobalWeather.h:178
The logic for displaying/editing the environment conditions.
Definition: DtEnvironmentConditionsLogic.h:35
Contains the DtUUID class declaration.
VisibilityObscurant
Definition: DtEnvironmentRecord.h:30
bool mySetFromSimCommand
Definition: simulationCommandSetGlobalWeather.h:181
Abstract interface for controlling persistence of state in a dialog.
Definition: DtPersistenceControlsInterface.h:20
Record for an elevational configuration A record of this type consists of 1) a base MSL altitude...
Definition: DtEnvironmentRecord.h:251
Definition: simulationCommandDialogInterface.h:47
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
The DtEnvironmentInterface is an interface class providing abstraction for different managers of envi...
Definition: DtEnvironmentInterface.h:40
static DtUnicode tr(const char *ascii)
Ascii translation function, used to be compatible with Qt&#39;s translation tools. This will simply call ...
Definition: DtUnicode.h:92
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
virtual makVrv::DtUnicode broadcastTitle() const override
Definition: simulationCommandSetGlobalWeather.h:61
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:45
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:29
Specialized version for weather dialogs.
Definition: simulationCommandDialogInterface.h:62
Definition: simCommandObjectWrapper.h:42
makVrv::DtEnvironmentConditionsLogic * myLogic
Definition: simulationCommandSetGlobalWeather.h:175
DtVrfEnvironmentConditionsWeatherWidget * myContentsWidget
Definition: simulationCommandSetGlobalWeather.h:173
class DtSimStatement:
Definition: simStatement.h:38
const char int mode
Definition: ioapi.h:38
Definition: simulationCommandSetGlobalWeather.h:184
An abstract interface for a weather condition settings widget.
Definition: DtEnvironmentConditionsInterface.h:30
Definition: simulationCommandSetGlobalWeather.h:34
DtLocalEnvironment * myEnvironmentInterface
Definition: simulationCommandSetGlobalWeather.h:176
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
const DtSimCommandStmt * mySimCommand
Definition: simulationCommandSetGlobalWeather.h:177
makVrv::DtSignalConnectionManager mySignals
Definition: simulationCommandSetGlobalWeather.h:227
Definition: simulationCommandSetGlobalWeather.h:193
DtVrfEnvironmentConditionsWeatherWidget::DisplayMode displayMode() const
Definition: simulationCommandSetGlobalWeather.h:68
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
DisplayMode
Definition: vrfEnvironmentConditionsWeatherWidget.h:56
Contains makVrf::DtVrfEnvironmentConditionsWidget class.
virtual void setDisplayMode(int mode) override
Must be set before contents() is called.
Definition: simulationCommandSetGlobalWeather.h:66
CloudType
Cloud layer types.
Definition: DtCloudTypeMapper.h:35
Definition: vrfEnvironmentConditionsWeatherWidget.h:59

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)