VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEnvironmentStateInterceptorBase.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 
21 #include <vl/geoReferenceVariant.h>
22 
23 #include <vlpi/metocEnums.h>
24 
25 #include <matrix/vlVector.h>
26 
27 #include <vector>
28 
29 class DtGeodeticLocation;
30 class DtPrecipitationStruct;
31 class DtHazeStruct;
32 class DtCloudStruct;
33 
34 namespace makVrv
35 {
36  class DtEnvironmentStatusManager;
37 
38  namespace DT_PROTOCOL_NAMESPACE
39  {
48  {
49  public:
50 
53 
56 
59 
62 
65  virtual void setEnvironmentStatusManager(DtEnvironmentStatusManager* mgr);
66 
69  virtual void setWeatherAreaId(DtUniqueID areaId);
70 
72  virtual DtUniqueID weatherAreaId() const;
73 
74  // Set up an elevational layer based on a provided georeference. Returns true on success.
75  virtual bool processGeoReferenceLayer(const DtGeoReferenceVariant& val);
76 
77  protected:
80  virtual void initializeAll() = 0;
81 
83  virtual void getPolyGeoReferenceDimensions(const std::vector<DtGeodeticLocation>& vertices, DtVector& center, float& length, float &width);
84 
86  virtual void getQuadGeoReferenceDimensions(const DtGeodeticLocation& minGeodetic, const DtGeodeticLocation& maxGeodetic, DtVector& center, float& length, float &width);
87 
88  protected:
92  };
93  }
94 }
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
The declaration of the makArchives::DtEnvironmentRecord class.
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtEnvironmentStateInterceptorBase is a common base for all of the state interceptors managing METOC e...
Definition: DtEnvironmentStateInterceptorBase.h:47
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
DtUniqueID myWeatherAreaId
Definition: DtEnvironmentStateInterceptorBase.h:91
Contains makVrv::DtUniqueID type.
Contains DLL export macros.
DtEnvironmentStatusManager manages all of the environment-related data (including date and time) that...
Definition: DtEnvironmentStatusManager.h:50
DtEnvironmentStatusManager * myEnvironmentStatusManager
Definition: DtEnvironmentStateInterceptorBase.h:89
DtUniqueID myLayerId
Definition: DtEnvironmentStateInterceptorBase.h:90

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)