VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedAerodromeListDIS.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 1992-2025 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 
11 #pragma once
12 
13 #if DtDIS
14 
19 
20 class DtExerciseConn;
21 class DtReflectedRunway;
22 
25 
27 {
28 
29 public:
30 
33 
35  virtual ~DtReflectedAerodromeList();
36 
37 private:
38 
41 
44 
45 public:
46  virtual DtReflectedAerodrome* first() const;
47  virtual DtReflectedAerodrome* last() const;
48 
50  virtual void addAerodromeAdditionCallback(
51  DtAerodromeStateCallbackFunction cb, void* userData);
52  virtual void removeAerodromeAdditionCallback(
53  DtAerodromeStateCallbackFunction cb, void* userData);
54 
56  virtual void addAerodromeRemovalCallback(
57  DtAerodromeStateCallbackFunction cb, void* userData);
58  virtual void removeAerodromeRemovalCallback(
59  DtAerodromeStateCallbackFunction cb, void* userData);
60 
62  virtual void print();
63 
64 
67  virtual DtReflectedAerodrome* processAerodromeState(
68  const DtAerodromePdu& pdu);
69 
71  virtual DtReflectedAerodrome* lookupByUuid(const DtVrlUuid& aerodromeUuid);
72 
73  virtual const DtReflectedRunwayList& runwayList() const { return myRunwayList; };
74 
75 protected:
76 
78  virtual DtReflectedObject* newReflectedObj(const DtStateMsg& msg);
79 
81  virtual DtReflectedObject* processStateMessage(const DtStateMsg& msg);
82 
85  virtual void objectAdded(DtReflectedObject* obj);
86 
89  virtual int acceptPdu(const DtStateMsg& msg) const;
90 
92  virtual const DtBaseHashKey&
93  hashKeyFromStateMessage(const DtStateMsg* msg);
94 
96  virtual DtReflectedAerodrome* newReflectedAerodrome() const;
97 
100  virtual void aerodromeAdded(DtReflectedAerodrome* agg);
101 
104  static void runwayAdditionCb(
105  DtReflectedRunway* runway, void* usr);
106  static void runwayUpdateCb(
107  DtReflectedRunway* runway, void* usr);
108  static void runwayRemovalCb(
109  DtReflectedRunway* runway, void* usr);
110 
111  virtual void processRunwayAddition(DtReflectedRunway* refRunway);
112 
113  virtual void processRunwayUpdate(DtReflectedRunway* refRunway);
114 
115  virtual void processRunwayRemoval(DtReflectedRunway* refRunway);
116 
118  static void resolveOrphansPostDrainCb(void* usr);
119 
121  void resolveOrphans();
122 
123 
124 
125 protected:
126 
128  static void aerodromeStateCb(DtAerodromePdu* pdu, void* usr);
129 protected:
130 
131  std::vector<DtReflectedRunway*> myOrphanRunways;
132  DtReflectedRunwayList myRunwayList;
133  DtEntityIdentifierHashKey myHashKey;
134 };
135 
136 #endif
Instances of DtEntityIdentifierHashKey are hash keys made from DtEntityIdentifiers.
Definition: entityIdentifierHashKey.h:21
class DtReflectedObjectList
Definition: reflectedObjectListHLA.h:58
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Instances of DtReflectedRunway are used to represent a simulated HLAobjectRoot.Runway object reflecte...
Definition: reflectedRunwayHLA.h:31
DtReflectedObjectList & operator=(const DtReflectedObjectList &orig)
assignment operator – not implemented
This file declares DtEntityIdentifierHashKey.
Instances of DtReflectedRunwayList manage a list of DtReflectedRunway objects.
Definition: reflectedRunwayListHLA.h:22
class DtReflectedObject:
Definition: reflectedObjectHLA.h:36
A Universally Unique Identifier DtVrlUuid stores a 16byte encoded UUID string.
Definition: vlUuid.h:28
Instances of DtReflectedAerodrome are used to represent a simulated HLAobjectRoot.Aerodrome object reflected across a network.
Definition: reflectedAerodromeHLA.h:30
Instances of DtReflectedAerodromeList manage a list of DtReflectedAerodrome objects.
Definition: reflectedAerodromeListHLA.h:25
virtual void objectAdded(DtReflectedObject *object)
Called from processDiscoverObject() after a remote object has been added to the list.
class DtStateMsg:
Definition: stateMsgHLA.h:32
virtual void print()
Print the SRs of all objects.

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)