VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfEnvironmentConditionsWeatherLogic.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 
17 
18 namespace makVrv
19 {
20  class DtEnvironmentInterface;
21  class DtEnvironmentConditionsInterface;
22 }
23 
24 namespace makVrf
25 {
26  class DtVrfEnvironmentConditionsWeatherInterface;
27 
32  {
33 
34  public:
35 
38  makVrv::DtEnvironmentInterface& environment,
40  makVrv::DtPersistenceControlsInterface& persistanceIface);
41 
44 
46  {
47  return myEnvironment;
48  }
49 
50  protected:
51  virtual void updateWeatherConditions(const makArchives::DtEnvironmentRecord& rec);
52 
56  virtual void onChangeLightningPresent(bool lightningPresent);
57 
61  virtual void onChangePrecipitationType(int type);
62 
66  virtual void onChangePrecipitationIntensity(double value);
67 
70  virtual void onChangeAmbientAirTemperature(double value);
71 
74  virtual void onChangeAmbientAirPressure(double value);
75 
78  virtual void onChangeAirTemperatureAltitude(double value);
79 
82  virtual void onChangeAirPressureAltitude(double value);
83 
86  virtual void onChangeAirTemperatureAltitudeIsSeaLevel(bool value);
87 
90  virtual void onChangeAirPressureAltitudeIsSeaLevel(bool value);
91 
94  virtual void onChangeSeaLevelWaterConcentration(double value);
95 
99  virtual void onChangeSwellState(int index);
100 
104  virtual void onChangeSwellStateDirection(double degree);
105 
109  virtual void onEnableWindDrivenSeaState(bool enabled);
110 
114  virtual void onChangeSeaState(int index);
115 
119  virtual void onChangeSeaStateDirection(double degree);
120 
124  virtual void onChangeTidalCurrentSpeed(double);
125 
129  virtual void onChangeTidalCurrentDirection(double degree);
130 
134  virtual void onChangeSeaSurfaceTransparency(double alpha);
135 
139  virtual void onChangeUnderWaterVisibility(double distance);
140 
144  virtual void onChangeSeaChoppiness(double chop);
145 
149  virtual void onChangeSurgeDepth(double distance);
150 
153  virtual void onChangeFogHeight(double height);
154 
157  virtual void onChangeFogColor(double red, double green, double blue);
158 
161  virtual void onChangeGroundSnowAccumulation(double snow);
162 
165  virtual void onChangeSnowMinimumElevation(double snow);
166 
169  virtual void onChangeRoadSnowAccumulation(double snow);
170 
173  virtual void onChangeGroundRainAccumulation(double rain);
174 
177  virtual void onSelectEnvironmentConditions(const makVrv::DtUnicode& name);
178 
181  virtual void sendChangeGlobalWeatherCommandForCurrentValues();
182 
183  virtual void ambientAirTemperatureChanged(float);
184  virtual void ambientAirPressureChanged(float);
185  virtual void airTemperatureAltitudeChanged(float);
186  virtual void airPressureAltitudeChanged(float);
187  virtual void airTemperatureAltitudeIsSeaLevelChanged(bool);
188  virtual void airPressureAltitudeIsSeaLevelChanged(bool);
189  virtual void seaLevelWaterConcentrationChanged(float);
190 
191  virtual void sendEnvironmentToGUI(bool initialSettings);
192  virtual void onAddEnvironmentConditions(const makVrv::DtUnicode& name);
193  virtual void onRemoveEnvironmentConditions(const makVrv::DtUnicode& name);
194 
196  virtual void onAddElevationalWind();
197 
200  virtual void onRemoveElevationalWind(float altitude);
201 
205  virtual void onUpdateElevationalConfiguration( float baseMSLAltitude, float windSpeed, float windDirection, float visibilityDistance,
206  makVrv::DtEnvironmentInterface::VisibilityObscurant obscurant, makVrv::DtEnvironmentInterface::CloudType cloudType, float cloudDensity, int skyCoverage);
207 
210  virtual void onElevationalConfigurationAltitudeChanged(float newAltitude, float oldAltitude);
211 
212  virtual void sendEnvironmentConditionsToGUI();
213  virtual void updateWeatherConditions();
214 
215  virtual void sendElevationLevels();
216 
217  virtual void displayUnitsChanged();
218 
219  virtual void elevationalConfigurationAdded(makVrv::DtEnvironmentInterface::DtElevationalConfigurationRecord rec) override;
220 
221 
222  virtual void elevationalConfigurationUpdated(makVrv::DtEnvironmentInterface::DtElevationalConfigurationRecord rec) override;
223 
224  };
225 }
A unicode string.
Definition: DtUnicode.h:33
Declaration for the makVrv::DtEnvironmentConditionsLogic class.
The logic for displaying/editing the environment conditions.
Definition: DtEnvironmentConditionsLogic.h:35
VisibilityObscurant
Definition: DtEnvironmentRecord.h:21
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:236
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points.
The DtEnvironmentInterface is an interface class providing abstraction for different managers of envi...
Definition: DtEnvironmentInterface.h:39
virtual makVrv::DtEnvironmentInterface * environment() const
Definition: vrfEnvironmentConditionsWeatherLogic.h:45
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:36
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:22
Logic class for the DtVrfEnvironmentConditionsWeatherWidget.
Definition: vrfEnvironmentConditionsWeatherLogic.h:30
An abstract interface for a weather condition settings widget.
Definition: DtEnvironmentConditionsInterface.h:30
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
CloudType
Cloud layer types.
Definition: DtCloudTypeMapper.h:35

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)