VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtLandSurfaceStateInterceptor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrvVrl/vrvVrl.h>
12 
13 #ifndef DT_PROTOCOL_NAMESPACE
14 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
15 #endif
16 
17 #include <vrvCore/DtUniqueID.h>
18 
20 
22 
23 #include <vl/landSurfaceStateRepository.h>
24 
25 
26 
27 class DtVrlUuid;
28 class DtString;
29 
30 namespace makVrv
31 {
32  class DtEnvironmentStatusManager;
33 
34  namespace DT_PROTOCOL_NAMESPACE
35  {
36  class DtVrlinkConnection;
37 
55  {
56  public:
59 
62 
65 
68 
70  virtual void setGeoReference(const DtGeoReferenceVariant& val);
71 
73  virtual void setTemperature(DtFloat32 val);
74 
76  virtual void setPrecipitation(const DtPrecipitationStruct& val);
77 
79  virtual void setHumidity(DtFloat32 val);
80 
82  virtual void setBarometricPressure(DtFloat32 val);
83 
85  virtual void setSnow(const DtSnowStruct& val) override;
86 
88  virtual void setMoisture(const DtSurfaceMoistureEnum16& val) override;
89 
91  virtual void setIceCondition(const DtRoadIceConditionEnum16& val) override;
92 
94  virtual void setSnowMinimumAltitude(const DtFloat64& val) override;
95 
97  virtual void setSnowRoadAccumulation(const DtFloat64& val) override;
98 
100  virtual void setRainAccumulation(const DtFloat32 val) override;
101 
103  virtual void setIsLightningPresent(bool val) override;
104 
106  virtual void setVisualObscurantColor(int r, int g, int b, int a) override;
107 
109  virtual void setVisualObscurantColor(unsigned int color) override;
110 
112  virtual void setVisualObscurantHeight(DtFloat32 val) override;
113 
114  virtual void setReferenceTemperatureAltitude(DtFloat32 val) override;
115 
117  virtual void setReferencePressureAltitude(DtFloat32 val) override;
118 
119  protected:
121  virtual void initializeAll() override;
122 
123  public:
125  static DtLandSurfaceStateRepository* create();
126 
128  static float moistureToRainDepth(const DtSurfaceMoistureEnum16& val);
129 
130  // This *should* return the enumerated type, but apparently some conflict between VRV and VRL
131  // forces us to do this and cast it in the .inl file to its proper type.
132  static int decodeVrlPrecipitationType(DtPrecipitationTypeEnum32 vrlPrecipType);
133 
134  private:
136  //\throws DtCorrutedState this class is not copyable.
137  virtual DtStateRepository* clone(bool copy = false) const override;
138  };
139  }
140 }
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
Contains makVrv::DtEnvironmentStateInterceptorBase class.
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
Contains makVrv::DtVirtualBaseClass class.
float DtFloat32
Definition: vrvControlStructTypes.h:35
DtLandSurfaceStateInterceptor extends the VR-Link DtLandSurfaceStateRepository class by overriding al...
Definition: DtLandSurfaceStateInterceptor.h:52
double DtFloat64
Definition: vrvControlStructTypes.h:36
DtEnvironmentStateInterceptorBase is a common base for all of the state interceptors managing METOC e...
Definition: DtEnvironmentStateInterceptorBase.h:47
Contains makVrv::DtUniqueID type.
Contains DLL export macros.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)