VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedEmitterSystemDIS.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #ifndef DtReflectedEmitterSystem_H_
11 #define DtReflectedEmitterSystem_H_
12 
13 #if DtDIS
14 
15 
17 #include "reflectedObjectDIS.h"
18 #include "systemHashKey.h"
19 
22 
26  DtReflectedEmitterSystem* obj, void* userData);
27 
28 
34 {
35 public:
36 
38  typedef DtEmitterSystemRepository* (*DtStateRepCreator)();
39 
40 public:
41 
44  const DtGlobalObjectDesignator& emittingEntity,
45  DtU8 systemNumber);
46 
48  virtual ~DtReflectedEmitterSystem();
49 
51  virtual DtEmitterSystemRepository* emitterSysRep() const;
52 
54  virtual DtEmitterSystemRepository* esr() const;
55 
59  virtual DtStateRepository* stateRep() const;
60 
63  virtual void processStateMessage(const DtStateMsg& msg);
64 
66  virtual DtReflectedEmitterSystem* next() const;
67 
69  virtual DtReflectedEmitterSystem* prev() const;
70 
73  virtual DtReflectedEmitterSystem* wrapNext() const;
74 
77  virtual DtReflectedEmitterSystem* wrapPrev() const;
78 
80  virtual void addPostUpdateCallback(
81  DtEmitterSystemCallbackFunction cb, void* userData);
82 
83  virtual void removePostUpdateCallback(
84  DtEmitterSystemCallbackFunction cb, void* userData);
85 
87  virtual const DtBaseHashKey& hashKey() const;
88 
90  virtual DtString idString() const;
91 
94  virtual const DtGlobalObjectDesignator& globalId() const;
95 
96 public:
97 
99  static void setStateRepCreator(DtStateRepCreator creator);
100  static DtStateRepCreator stateRepCreator(void);
101 
102 protected:
103 
106 
109  const DtReflectedEmitterSystem& orig);
110 
111 protected:
112 
117 protected:
118 
119  static DtStateRepCreator theStateRepCreator;
120 
121 };
122 
123 
124 #endif
125 #endif
126 
DtEmitterSystemRepository * myStateRepository
Definition: reflectedEmitterSystemDIS.h:114
Instances of DtEmitterSystemStateDecoder are used to take state information from an emission state PD...
Definition: emitterSystemStateDecoder.h:31
void * next() const
Return next (previous) elements on the list, or NULL if hit the end (beginning) of the list...
Definition: vlList.h:272
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
virtual const DtBaseHashKey & hashKey() const =0
Get a hash key for this object.
#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
DtEmitterSystemStateDecoder * myDecoder
Definition: reflectedEmitterSystemDIS.h:116
DtSystemHashKey myHashKey
Definition: reflectedEmitterSystemDIS.h:115
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
unsigned char DtU8
An eight bit unsigned integer value.
Definition: vlMachineTypes.h:137
virtual const DtGlobalObjectDesignator & globalId() const =0
Get the Global ID for this object.
void * prev() const
Definition: vlList.h:277
void * wrapNext() const
Return next (previous) elements on the list, but wrap to the beginning (end) of the list when you hit...
Definition: vlList.h:282
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
void(* DtEmitterSystemCallbackFunction)(DtReflectedEmitterSystem *obj, void *userData)
Callback function that takes a DtReflectedObject and user data.
Definition: reflectedEmitterSystemDIS.h:25
DtString myIdString
Definition: reflectedEmitterSystemDIS.h:113
Instances of DtEmitterSystemRepository are used to store state data for emitter systems in both HLA a...
Definition: emitterSystemRepository.h:29
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
virtual DtString idString() const =0
Get a string identification of this object.
void * wrapPrev() const
Definition: vlList.h:288
Instances of DtString are used to represent strings.
Definition: vlString.h:29
virtual DtStateRepository * stateRep() const =0
Returns a pointer to the StateRepository - through which you can inspect current state information...
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
static DtStateRepCreator theStateRepCreator
Definition: reflectedEmitterSystemDIS.h:119
Instances of DtReflectedEmitterSystem represent EmitterSystem object simulated by remote applications...
Definition: reflectedEmitterSystemDIS.h:33

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)