VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtWeatherProcessor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #ifndef DT_PROTOCOL_NAMESPACE
11 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
12 #endif
13 
14 #pragma once
15 
16 #include <vrvVrl/vrvVrl.h>
21 
22 #include <boost/unordered_map.hpp>
23 #include <boost/shared_ptr.hpp>
24 
25 namespace makVrv
26 {
27  class DtSceneEnvironmentalsControllerObjectAgent;
28 
29  namespace DT_PROTOCOL_NAMESPACE
30  {
31  class DtVrlinkEnvironmentalStateListenerInterface;
32  class DtWeatherStateListener;
33 
38  {
39 
40  public:
41 
44 
46  virtual ~DtWeatherProcessor();
47 
48  protected:
49 
51  virtual void slot_environmentalDiscovered(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
52 
54  virtual void slot_environmentalToBeDestroyed(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface& listener);
55 
58  virtual void slot_airTurbidityChanged(float);
59 
62  virtual void slot_ambientAirTemperatureChanged(float);
63 
66  virtual void slot_cloudStateChanged(DtVrfWeatherCloudState);
67 
70  virtual void slot_precipitationIntensityChanged(float);
71 
74  virtual void slot_precipitationTypeChanged(DtVrfWeatherPrecipitationType);
75 
78  virtual void slot_visibilityChanged(float);
79 
81  virtual void slot_timeOfDayChanged(float);
82 
84  virtual void slot_dateAndTimeOfDayChanged(time_t);
85 
88  virtual void slot_useGlobalTimeZoneChanged(bool);
89 
92  virtual void slot_timeOfDayAdvancementSpeedChanged(float);
93 
96  virtual void slot_fogHeightChanged(float);
97 
100  virtual void slot_windDirectionChanged(float);
101 
104  virtual void slot_windSpeedChanged(float);
105 
108  virtual void slot_swellStateChanged(int);
109 
112  virtual void slot_swellStateDirectionChanged(float);
113 
116  virtual void slot_seaStateChanged(int);
117 
120  virtual void slot_seaStateDirectionChanged(float);
121 
124  virtual void slot_windDrivenSeaStateChanged(bool);
125 
128  virtual void slot_underwaterVisibilityChanged(float);
129 
132  virtual void slot_surfaceTransparencyChanged(float);
133 
136  virtual void slot_choppinessChanged(float);
137 
140  virtual void slot_surgeDepthChanged(float);
141 
144  virtual void slot_ambientWaterTemperatureChanged(float);
145 
148  virtual void slot_waterCurrentSpeedChanged(float);
149 
152  virtual void slot_waterCurrentDirectionChanged(float);
153 
156  virtual void slot_tidalOffsetChanged(float);
157 
160  virtual void slot_tidalDirectionChanged(bool);
161 
164  virtual void slot_thermoclineDepthChanged(int, float);
165 
168  virtual void slot_thermoclinePermeabilityChanged(int, float);
169 
172  virtual void slot_groundSnowAccumulationChanged(float value);
173 
176  virtual void slot_roadSnowAccumulationChanged(float value);
177 
180  virtual void slot_snowMinimumElevationChanged(float value);
181 
184  virtual void slot_groundRainAccumulationChanged(float value);
185 
188  virtual void slot_fogColorChanged(const DtVector&);
189 
192  virtual void slot_forceRefresh();
193 
196  virtual void forceUpdateFromListener( DtWeatherStateListener* wsl );
197  protected:
198 
200  DtSceneEnvironmentalsControllerObjectAgent* myWeatherControllerAgent;
202 
204  {
207  };
208 
209  typedef boost::unordered_map<DtUniqueID, boost::shared_ptr<WeatherListenerData> > WeatherListenerMap;
210 
212 
214  };
215  }
216 }
WeatherListenerMap myWeatherListenerMap
Definition: DtWeatherProcessor.h:211
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:18
Virtual base class.
Definition: DtVirtualBaseClass.h:22
Weather and ToD state listener.
Definition: DtWeatherStateListener.h:32
DtSignalConnectionManager signals
Definition: DtWeatherProcessor.h:206
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
Contains makVrv::DtVirtualBaseClass class.
A DtWeatherProcessor processes information from DtWeatherStateListeners and passes it to the GUI thro...
Definition: DtWeatherProcessor.h:37
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
boost::unordered_map< DtUniqueID, boost::shared_ptr< WeatherListenerData > > WeatherListenerMap
Definition: DtWeatherProcessor.h:209
DtVrlinkConnection & myConnection
Definition: DtWeatherProcessor.h:199
DtVrfWeatherCloudState
Definition: vrfWeatherStateEnums.h:28
#define DT_PROTOCOL_NAMESPACE
Make VR-Vantage VRLink code export with library #ifdef DL_DLL_IGCONVRLINK #undef DL_DLL_IGCONVRLINK #...
Definition: export.h:32
Base class to provide boost signal/slot management.
DtWeatherStateListener * stateListener
Definition: DtWeatherProcessor.h:205
DtSignalConnectionManager mySignals
Definition: DtWeatherProcessor.h:213
Contains DLL export macros.
DtSceneEnvironmentalsControllerObjectAgent * myWeatherControllerAgent
Definition: DtWeatherProcessor.h:200
bool myAcceptIncomingMessages
Definition: DtWeatherProcessor.h:201

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)