VR-Link API Documentation for DIS
leFirePdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
7 #ifndef DtLeFirePdu_H_
8 #define DtLeFirePdu_H_
9 
13 
14 #if DtDIS
15 
16 #include <vlutil/vlMachineTypes.h>
17 #include "hostStructs.h"
18 #include "dInteraction.h"
19 #include <matrix/vlMath.h>
20 #include "exerciseConn.h"
21 
22 #include "packets/leFireP.h"
23 
24 #include "leDeadReck.h"
25 #include "leEntityID.h"
26 #include "leLocWorld.h"
27 #include "leEntityVel.h"
28 
29 
31 
33 typedef void (*DtLeFirePduCb)(DtLeFirePdu* pdu, void* usr);
34 
35 
40 {
41 
42 public:
43 
46  DtLeFirePdu(const DtNetLeFirePdu* initial,
48  DtLeFirePdu(const DtLeFirePdu& orig);
49 
51  virtual ~DtLeFirePdu();
52 
54  DtLeFirePdu& operator=(const DtLeFirePdu& orig);
55 
57  virtual void setSubProtocol(DtSubProtocol value);
58  virtual DtSubProtocol subProtocol() const;
59 
61  virtual void setFiringEntityID(const DtLeEntityID& id);
62  virtual const DtLeEntityID& firingEntityID() const;
63 
66  virtual DtU8 fireFlagsField() const;
67 
69  virtual bool fireFlag(DtLE_FireFieldFlag flag) const;
70 
74 
76  virtual void setTargetEntityID(const DtLeEntityID& id);
77  virtual bool getTargetEntityID(DtLeEntityID& id) const;
78 
80  virtual void setMunitionID_Site(DtU8 value);
81  virtual bool getMunitionID_Site(DtU8& value) const;
82 
84  virtual void setMunitionID_Application(DtU8 value);
85  virtual bool getMunitionID_Application(DtU8& value) const;
86 
88  virtual void setMunitionID_Entity(DtU16 value);
89  virtual bool getMunitionID_Entity(DtU16& value) const;
90 
92  virtual void setEventID_Site(DtU8 value);
93  virtual bool getEventID_Site(DtU8& value) const;
94 
96  virtual void setEventID_Application(DtU8 value);
97  virtual bool getEventID_Application(DtU8& value) const;
98 
100  virtual void setEventID_Event(DtU16 value);
101  virtual DtU16 eventID_Event() const;
102 
104  virtual void setLocation(const DtLeEntityLocationWorldCoordinates& value);
105  virtual bool getLocation(
107 
109  virtual void setBurstMunitionType(DtEntityType& type);
110  virtual const DtEntityType& burstMunitionType() const;
111 
113  virtual void setBurstWarhead(DtU16 value);
114  virtual bool getBurstWarhead(DtU16& value) const;
115 
117  virtual void setBurstFuse(DtU16 value);
118  virtual bool getBurstFuse(DtU16& value) const;
119 
121  virtual void setBurstQuantity(DtU16 value);
122  virtual bool getBurstQuantity(DtU16& value) const;
123 
125  virtual void setBurstRate(DtU16 value);
126  virtual bool getBurstRate(DtU16& value) const;
127 
129  virtual void setVelocity(const DtLeEntityLinearVelocity& value);
130  virtual const DtLeEntityLinearVelocity& velocity() const;
131 
133  virtual void setRange(DtU16 value);
134  virtual DtU16 range() const;
135 
137  virtual void printData() const;
138 
140  virtual void printDataToStream(std::ostream& stream) const;
141 
143  virtual void printHeader() const;
144 
146  virtual void printHeaderToStream(std::ostream& stream) const;
147 
148 public:
149 
152  static DtPdu* create(const DtNetPacket* initial,
154 
157  static void addCallback(DtExerciseConn* conn,
158  DtLeFirePduCb cb, void* usr);
159  static void removeCallback(DtExerciseConn* conn,
160  DtLeFirePduCb cb, void* usr);
161 
162 protected:
163 
165  virtual DtPduKind internalGetPduKind() const;
166 
168  virtual DtNetLeFirePdu* netPduStruct() const;
169 
172  DtLeFirePdu* self() const;
173 
175  virtual char* var() const;
176 
178  virtual void setFireFlagsField(DtU8 value);
179 
181  virtual void setFireFlag(DtLE_FireFieldFlag flag);
182 
184  virtual void clearFireFlags(DtLE_FireFieldFlag flag);
185 
189  virtual int fireFlagFieldOffset() const;
190  virtual int targetEntityID_Offset() const;
191  virtual int munitionID_Offset1() const;
192  virtual int munitionID_Offset2() const;
193  virtual int eventID_Offset1() const;
194  virtual int eventID_Offset2() const;
195  virtual int locationOffset() const;
196  virtual int burstOffset1() const;
197  virtual int burstOffset2() const;
198  virtual int burstOffset3() const;
199  virtual int velocityOffset() const;
200  virtual int rangeOffset() const;
201 
202 protected:
203 
205  static const int theStaticSize;
206 
207 protected:
208 
213 
214 };
215 
216 #endif
217 #endif
218 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)