VR-Link API Documentation for DIS
 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 
96  virtual DtReflectedObject* newReflectedObject(DtHlaObject* obj) const;
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;
126  DtReflectedRunwayList myRunwayList;
127 
128 };
129 
130 
131 
132 #endif
Instances of DtReflectedObjectList are lists of instances of classes derived from DtReflectedObject...
Definition: reflectedObjectListDIS.h:38
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: exerciseConnDIS.h:62
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: reflectedRunwayDIS.h:28
DtReflectedObjectList & operator=(const DtReflectedObjectList &orig)
assignment operator – not implemented
DtList is deprecated, please use std::list&lt;T&gt;.
Definition: vlList.h:71
Instances of this class provide a protocol independent interface to a list of Runways in a DIS enviro...
Definition: reflectedRunwayListDIS.h:24
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
A Universally Unique Identifier DtVrlUuid stores a 16byte encoded UUID string.
Definition: vlUuid.h:28
Definition: reflectedAerodromeDIS.h:28
Instances of this class provide a protocol independent interface to a list of Aerodromes in a DIS env...
Definition: reflectedAerodromeListDIS.h:26
virtual void objectAdded(DtReflectedObject *object)
Called after a remote object has been added to the list.

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)