VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedAerodromeListHLA.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 DtHLA
13 
14 
18 
19 
20 class DtReflectedRunway;
21 
26 {
27 public:
30  const DtDDMRegionSet* regionSetToUse = 0);
31 
35  const DtList *handleList, const DtDDMRegionSet* regionSetToUse = 0);
36 
38  virtual ~DtReflectedAerodromeList();
39 
40 private:
41 
44 
47 
48 public:
49 
51  virtual DtReflectedAerodrome* lookup(
52 #if DtHLA_1516
53  RTI::ObjectInstanceHandle id);
54 #else
55  RTI::ObjectHandle id);
56 #endif
57 
59  virtual DtReflectedAerodrome* lookup(
60  const DtGlobalObjectDesignator& objName);
61 
63  virtual DtReflectedAerodrome* lookupByUuid( const DtVrlUuid& aerodromeUuid );
64 
66  virtual DtReflectedAerodrome* first() const;
67 
69  virtual DtReflectedAerodrome* last() const;
70 
72  virtual void addAerodromeAdditionCallback(
73  DtAerodromeCallbackFunction cb, void* userData);
74 
76  virtual void removeAerodromeAdditionCallback(
77  DtAerodromeCallbackFunction cb, void* userData);
78 
80  virtual void addAerodromeRemovalCallback(
81  DtAerodromeCallbackFunction cb, void* userData);
82 
84  virtual void removeAerodromeRemovalCallback(
85  DtAerodromeCallbackFunction cb, void* userData);
86 
87  virtual void processRunwayAddition(DtReflectedRunway* refRunway);
88 
89  virtual void processRunwayUpdate(DtReflectedRunway* refRunway);
90 
91  virtual void processRunwayRemoval(DtReflectedRunway* refRunway);
92 
93 protected:
94 
97 
102  virtual void objectAdded(DtReflectedObject* obj);
103 
106  static void runwayAdditionCb(
107  DtReflectedRunway* runway, void* usr);
108  static void runwayUpdateCb(
109  DtReflectedRunway* runway, void* usr);
110  static void runwayRemovalCb(
111  DtReflectedRunway* runway, void* usr);
112 
114  static void resolveOrphansPostDrainCb(void* usr);
115 
117  void resolveOrphans();
118 
121  virtual const DtList* dfltHandleList();
122 
123 
124 protected:
125  std::vector<DtReflectedRunway*> myOrphanRunways;
127 
128 };
129 
130 
131 
132 #endif
class DtReflectedObjectList
Definition: reflectedObjectListHLA.h:58
Contains the DtReflectedRunwayList class declaration.
Contains the HLA DtReflectedObjectList class declaration.
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
virtual DtReflectedObject * newReflectedObject(DtHlaObject *obj) const =0
Create a remote object object for the HLA object.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
std::set< DtDDMRegionSP > DtDDMRegionSet
Definition: region13.h:34
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
std::vector< DtReflectedRunway * > myOrphanRunways
Definition: reflectedAerodromeListHLA.h:125
Instances of DtHlaObject are used to represent HLA objects which are communicated across the network...
Definition: hlaObject.h:58
DtList is deprecated, please use std::list&lt;T&gt;.
Definition: vlList.h:71
Instances of DtReflectedRunwayList manage a list of DtReflectedRunway objects.
Definition: reflectedRunwayListHLA.h:22
class DtReflectedObject:
Definition: reflectedObjectHLA.h:36
void(* DtAerodromeCallbackFunction)(DtReflectedAerodrome *obj, void *userData)
Signature of the callback function that takes a DtReflectedAerodrome and user data.
Definition: reflectedAerodromeHLA.h:23
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.
Instances of DtString are used to represent strings.
Definition: vlString.h:29
DtReflectedRunwayList myRunwayList
Definition: reflectedAerodromeListHLA.h:126

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)