VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedEmitterSystemListHLA.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2013 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtHLA
13 
17 
22 {
23 public:
24 
29  bool beamsUpdateSystems = true, const DtDDMRegionSet* regionSetToUse = 0,
30  const DtString& updateRateTag = DtString(""));
31 
35  const DtList *handleList, bool beamsUpdateSystems = true,
36  const DtDDMRegionSet* regionSetToUse = 0,
37  const DtString& updateRateTag = DtString(""));
38 
41 
43  virtual DtReflectedEmitterSystem* lookup(
44 #if DtHLA_1516
45  RTI::ObjectInstanceHandle id );
46 #else
47  RTI::ObjectHandle id );
48 #endif
49 
51  virtual DtReflectedEmitterSystem* lookup(
52  const DtGlobalObjectDesignator& objName );
53 
55  virtual DtReflectedEmitterSystem* lookup(
56  const DtGlobalObjectDesignator& emittingEntity, int systemId ) const;
57 
59  virtual DtReflectedEmitterSystem* first() const;
60  virtual DtReflectedEmitterSystem* last() const;
61 
65  virtual void addEmitterSystemAdditionCallback(
66  DtEmitterSystemCallbackFunction cb, void* usr );
67  virtual void removeEmitterSystemAdditionCallback(
68  DtEmitterSystemCallbackFunction cb, void* usr );
69 
73  virtual void addEmitterSystemRemovalCallback(
74  DtEmitterSystemCallbackFunction cb, void* usr );
75  virtual void removeEmitterSystemRemovalCallback(
76  DtEmitterSystemCallbackFunction cb, void* usr );
77 
88  virtual DtReflectedEmitterBeamList* refBeamList();
89 
95  virtual void setDiscoveryCondition( DtDiscoveryCondition fn, void* usr );
96 
100  virtual void clearDiscoveryCondition();
101 
108  virtual void setBeamDiscoveryCondition( DtDiscoveryCondition fn, void* usr );
109 
111  virtual void clearBeamDiscoveryCondition();
112 
117  virtual bool delayBeamDiscovery( DtReflectedObject* beam, void* usr );
118 
119 protected:
120 
124  virtual void processDiscoverObject( DtHlaObject* obj );
125 
130  virtual void processRemoveObject( DtHlaObject* obj );
131 
138  virtual void processEmitterBeamAddition( DtReflectedEmitterBeam* beam );
139  virtual void processEmitterBeamUpdate( DtReflectedEmitterBeam* beam );
140  virtual void processEmitterBeamRemoval( DtReflectedEmitterBeam* beam );
141 
145  virtual void resolveOrphans();
146 
148  virtual DtReflectedObject* newReflectedObject( DtHlaObject* obj ) const;
149 
152  virtual DtReflectedEmitterSystem* newReflectedEmitterSystem(
153  const DtGlobalObjectDesignator& des ) const;
154 
159  virtual void objectAdded( DtReflectedObject* obj );
160 
164  virtual bool shouldBeTimedOut( DtReflectedObject* object );
165 
168  virtual const DtList* dfltHandleList();
169 
170 protected:
171 
174  static void emitterBeamAdditionCb(
175  DtReflectedEmitterBeam* beam, void* usr );
176  static void emitterBeamUpdateCb(
177  DtReflectedEmitterBeam* beam, void* usr );
178  static void emitterBeamRemovalCb(
179  DtReflectedEmitterBeam* beam, void* usr );
180 
182  static void resolveOrphansPostDrainCb( void* usr );
183 
188  static bool delayBeamDiscoveryCondition(
189  DtReflectedObject* beam, void* usr );
190 
191 private:
192 
195 
198 
199 protected:
200 
201 #if !DtHLA_1516
203 #endif
207 
210 
211 };
212 
213 #endif // DtHLA
DtDiscoveryCondition myBeamDiscoveryCondition
Definition: reflectedEmitterSystemListHLA.h:208
class DtReflectedObjectList
Definition: reflectedObjectListHLA.h:36
Contains the HLA DtReflectedObjectList class declaration.
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:58
DtReflectedEmitterBeamList myBeamList
Definition: reflectedEmitterSystemListHLA.h:205
virtual DtReflectedObject * newReflectedObject(DtHlaObject *obj) const =0
Create a remote object object for the HLA object.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual void processDiscoverObject(DtHlaObject *obj)
Process the discovery of a remote object on the network.
class DtReflectedEmitterBeam:
Definition: reflectedEmitterBeamHLA.h:32
std::set< DtDDMRegionSP > DtDDMRegionSet
Definition: region13.h:34
Instances of DtReflectedEmitterBeamList manage the list of of remote EmitterBeams in the exercise...
Definition: reflectedEmitterBeamListHLA.h:20
Contains the DtReflectedEmitterBeamList class declaration.
DtReflectedObjectList & operator=(const DtReflectedObjectList &orig)
assignment operator – not implemented
bool myBeamsUpdateSystems
Definition: reflectedEmitterSystemListHLA.h:206
Instances of DtReflectedEmitterSystemList manage the list of of remote EmitterSystems in the exercise...
Definition: reflectedEmitterSystemListHLA.h:21
Instances of DtHlaObject are used to represent HLA objects which are communicated across the network...
Definition: hlaObject.h:56
DtList is deprecated, please use std::list&lt;T&gt;.
Definition: vlList.h:71
bool(* DtDiscoveryCondition)(DtReflectedObject *refObj, void *usr)
Definition: reflectedObjectListHLA.h:26
class DtReflectedObject:
Definition: reflectedObjectHLA.h:36
DtObjectId myCounterId
Definition: reflectedEmitterSystemListHLA.h:202
void(* DtEmitterSystemCallbackFunction)(DtReflectedEmitterSystem *obj, void *usr)
Callback function that takes a DtReflectedObject and user data.
Definition: reflectedEmitterSystemHLA.h:21
void * myBeamDiscoveryConditionParameter
Definition: reflectedEmitterSystemListHLA.h:209
virtual void setDiscoveryCondition(DtDiscoveryCondition fn, void *usr)
Set the checker function which will determine when an object gets discovered and put into the reflect...
virtual void objectAdded(DtReflectedObject *object)
Called from processDiscoverObject() after a remote object has been added to the list.
DtObjectId instances are used to represent RTI::ObjectInstances in VR-Link.
Definition: objectId.h:38
DtList myOrphanBeams
used for generating dummy obj ids
Definition: reflectedEmitterSystemListHLA.h:204
Instances of DtString are used to represent strings.
Definition: vlString.h:29
virtual void processRemoveObject(DtHlaObject *obj)
Process the removal of a remote object from the network.
virtual void clearDiscoveryCondition()
Unregisters the checker function set in setDiscoverCondition.
virtual bool shouldBeTimedOut(DtReflectedObject *object)
Returns whether or not the object should be timed out.
Instances of DtReflectedEmitterSystem represent EmitterSystem objects simulated by remote application...
Definition: reflectedEmitterSystemHLA.h:28

Document ID: Generated on Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)