VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedDesignatorListDIS.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 
9 
10 #ifndef DtDisReflectedDesignatorList_H_
11 #define DtDisReflectedDesignatorList_H_
12 
13 #if DtDIS
14 
15 
16 #include "reflectedObjectListDIS.h"
17 #include "reflectedDesignatorDIS.h"
18 #include "globalObjectDesignator.h"
19 
22 
27 {
28 public:
30  DtReflectedDesignatorList( DtExerciseConn* exConn, int numBucketsPrimeNumber = 503);
32  virtual ~DtReflectedDesignatorList();
33 
34 public:
37  virtual DtReflectedDesignator* lookup(
38  const DtGlobalObjectDesignator& designatingEntity,
39  int designtrCode ) const;
40 
42  virtual DtReflectedDesignator* first() const;
43  virtual DtReflectedDesignator* last() const;
44 
46  virtual void addDesignatorAdditionCallback(
47  DtDesignatorCallbackFunction cb, void* userData );
48  virtual void removeDesignatorAdditionCallback(
49  DtDesignatorCallbackFunction cb, void* userData );
50 
52  virtual void addDesignatorRemovalCallback(
53  DtDesignatorCallbackFunction cb, void* userData );
54  virtual void removeDesignatorRemovalCallback(
55  DtDesignatorCallbackFunction cb, void* userData );
56 
58  virtual void print() const;
59 
61  virtual void printDataToStream(std::ostream& stream) const;
62 
63 protected:
65  virtual DtReflectedObject* newReflectedObj( const DtStateMsg& msg );
66 
69  virtual DtReflectedDesignator* newReflectedDesignator(
70  const DtEntityIdentifier& designatingEntity, int designatorCode);
71 
74  virtual int acceptPdu( const DtStateMsg& msg ) const;
75 
77  virtual DtReflectedObject* processStateMessage( const DtStateMsg& msg );
78 
82  virtual void removeAndDelete( DtReflectedObject* obj, char* msg=0 );
83 
86  virtual void objectAdded( DtReflectedObject* obj );
87 
94 
95 protected:
97  static void designatorCb( DtDesignatorPdu* pdu, void* usr );
98 
99 protected:
101 
102 protected:
105 
108 };
109 
110 #endif
111 
112 #endif
113 
virtual void print() const
Print the SRs of all objects.
Instances of DtReflectedObjectList are lists of instances of classes derived from DtReflectedObject...
Definition: reflectedObjectListDIS.h:38
DtSystemHashKey myHashKey
Definition: reflectedDesignatorListDIS.h:100
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
virtual const DtBaseHashKey & hashKeyFromStateMessage(const DtStateMsg *msg)=0
Get a hash key from a state message.
Instances of DtDesignatorPduare used to communicate information about designator objects in DIS...
Definition: designatorPdu.h:28
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Instances of DtSystemHashKey are used as hash keys for an emitter system.
Definition: systemHashKey.h:18
virtual int acceptPdu(const DtStateMsg &) const
Determines if a PDU should be processed or not.
This file contains typedefs used to represent objects in a protocol neutral way.
void(* DtDesignatorCallbackFunction)(DtReflectedDesignator *, void *)
Callback function that takes a DtReflectedDesignator and user data.
Definition: reflectedDesignatorDIS.h:26
DtReflectedObjectList & operator=(const DtReflectedObjectList &orig)
assignment operator – not implemented
Instances of DtReflectedDesignator represent designator object simulated by remote applications...
Definition: reflectedDesignatorDIS.h:31
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
Instances of this class provide a protocol independent interface to a list of reflected designators i...
Definition: reflectedDesignatorListDIS.h:26
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
virtual void removeAndDelete(DtReflectedObject *obj, char *msg=NULL)
Remove the remote object from the list if found and delete it.
virtual DtReflectedObject * newReflectedObj(const DtStateMsg &msg)=0
Create a new object from a state message.
virtual void objectAdded(DtReflectedObject *object)
Called after a remote object has been added to the list.
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
virtual DtReflectedObject * processStateMessage(const DtStateMsg &msg)
Process an incoming state message.

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)