VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedIffDIS.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 DtReflectedIff_H_
11 #define DtReflectedIff_H_
12 
13 #if DtDIS
14 
15 #include "hostStructs.h"
16 #include "iffStateRepository.h"
17 #include "reflectedObjectDIS.h"
18 #include "iffSystemHashKey.h"
19 
20 
23 
26 typedef void (*DtIffCallbackFunction)(
27  DtReflectedIff* obj, void* userData);
28 
29 
35 {
36 public:
37 
39  typedef DtIffStateRepository* (*DtStateRepCreator)();
40 
41 public:
42 
45  const DtGlobalObjectDesignator& emittingEntity,
46  DtU16 systemType, DtU16 systemName, DtU8 systemDesignator);
47 
49  virtual ~DtReflectedIff();
50 
52  virtual DtIffStateRepository* iffRep() const;
53 
55  virtual DtIffStateRepository* isr() const;
56 
58  virtual DtIffStateRepository* iffStateRep() const;
59 
63  virtual DtStateRepository* stateRep() const;
64 
67  virtual void processStateMessage(const DtStateMsg& msg);
68 
70  virtual DtReflectedIff* next() const;
71 
73  virtual DtReflectedIff* prev() const;
74 
77  virtual DtReflectedIff* wrapNext() const;
78 
81  virtual DtReflectedIff* wrapPrev() const;
82 
84  virtual void addPostUpdateCallback(
85  DtIffCallbackFunction cb, void* userData);
86 
87  virtual void removePostUpdateCallback(
88  DtIffCallbackFunction cb, void* userData);
89 
91  virtual const DtBaseHashKey& hashKey() const;
92 
95  virtual const DtGlobalObjectDesignator& globalId() const;
96 
98  virtual DtString idString() const;
99 
100 public:
101 
103  static void setStateRepCreator(DtStateRepCreator creator);
104  static DtStateRepCreator stateRepCreator(void);
105 
106 protected:
107 
109  DtReflectedIff(const DtReflectedIff& orig);
110 
113  const DtReflectedIff& orig);
114 
115 protected:
116 
121 
122 protected:
123 
124  static DtStateRepCreator theStateRepCreator;
125 
126 };
127 
128 
129 #endif
130 #endif
131 
DtString myIdString
Definition: reflectedIffDIS.h:119
Contains the DtIffStateRepository class declaration.
Instances of DtReflectedIff represent Iff object simulated by remote applications.
Definition: reflectedIffDIS.h:34
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
DtIFFSystemHashKey myHashKey
Definition: reflectedIffDIS.h:118
Instances of DtIffStateDecoder are used to take state information from an emission state PDU and plac...
Definition: iffStateDecoder.h:33
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Defines a protocol independent repository of attributes for IFF objects.
Definition: iffStateRepository.h:39
DtIffStateDecoder * myDecoder
Definition: reflectedIffDIS.h:120
DtIffStateRepository * myStateRepository
Definition: reflectedIffDIS.h:117
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
static DtStateRepCreator theStateRepCreator
Definition: reflectedIffDIS.h:124
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
Instances of DtIFFSystemHashKey are used as hash keys for an emitter system.
Definition: iffSystemHashKey.h:17
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
This file is deprecated - Please see simulationAddress.h, entityIdentifier.h, entityType.h, burstDescriptor.h, and NetStructs.h.
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
unsigned short DtU16
A 16 bit unsigned integer value.
Definition: vlMachineTypes.h:140
virtual DtString idString() const =0
Get a string identification of this object.
void(* DtIffCallbackFunction)(DtReflectedIff *obj, void *userData)
Callback function that takes a DtReflectedObject and user data.
Definition: reflectedIffDIS.h:26
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

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)