VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtRunwayElementProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #if XXX // For intellisense - remember to remove
13 #define DtHLA 1
14 #define DT_DLL_VL
15 #define DT_PROTOCOL_NAMESPACE vrvHla1516e
16 #define DL_DLL_IGCONVRLINK
17 #define DT_DLL_VLPROTIND
18 #include <vlpi/entityIdentifier.h>
19 #endif
20 
21 #include <vrvVrl/vrvVrl.h>
22 
25 
26 #include <vrvCore/DtUniqueID.h>
27 #include <unordered_map>
28 
29 class DtVrlUuid;
31 
32 namespace makVrv
33 {
34  class DtAerodromeStatusManager;
35 
36  namespace DT_PROTOCOL_NAMESPACE
37  {
38  class DtVrlinkConnection;
39 
45  {
46  public:
49 
51  virtual ~DtRunwayElementProcessor();
52 
54  DtRunwayElementProcessor() = delete;
55 
58 
60  DtRunwayElementProcessor& operator=(const DtRunwayElementProcessor&) = delete;
61 
62  public:
65  static void registerInstance(DtVrlinkConnection& conn,
66  DtRunwayElementProcessor* instance);
67 
69  static DtRunwayElementProcessor* findInstance(DtVrlinkConnection& conn);
70 
71  public:
72  // Find the DtUniqueID assigned to the runway with the given uuid
73  virtual DtUniqueID runwayId(const std::string& uuidString) const;
74 
75  protected:
77  virtual void onRunwayDiscovered(DtRunwayStateRepository* aeroSR);
78 
80  virtual void onRunwayToBeDestroyed(const DtVrlUuid& uuid);
81 
82  protected:
86  std::unordered_map<std::string, DtUniqueID> myUUidToUniqueIdMap;
87  };
88 
89  } // protocol namespace
90 } // makVRV namespace
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
The DtRunwayElementProcessor listens to signals from the DtAerodromeExistenceManager to find out when...
Definition: DtRunwayElementProcessor.h:44
DtAerodromeStatusManager manages status data for all the aerodromes and related runways in a VR-Link ...
Definition: DtAerodromeStatusManager.h:57
DtSignalConnectionManager myConnections
Definition: DtRunwayElementProcessor.h:84
std::unordered_map< std::string, DtUniqueID > myUUidToUniqueIdMap
Definition: DtRunwayElementProcessor.h:86
DtVrlinkConnection & myConnection
Definition: DtRunwayElementProcessor.h:83
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
Contains makVrv::DtVirtualBaseClass class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Base class to provide boost signal/slot management.
Contains makVrv::DtUniqueID type.
Contains DLL export macros.
DtAerodromeStatusManager & myAerodromeStatusManager
Definition: DtRunwayElementProcessor.h:85

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)