VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
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
30
class
DT_DLL_VL
DtLeFirePdu
;
31
33
typedef
void (*
DtLeFirePduCb
)(
DtLeFirePdu
* pdu,
void
* usr);
34
35
39
class
DT_DLL_VL
DtLeFirePdu
:
public
DtInteraction
40
{
41
42
public
:
43
45
DtLeFirePdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
46
DtLeFirePdu
(
const
DtNetLeFirePdu
* initial,
47
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
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(
106
DtLeEntityLocationWorldCoordinates
& value)
const
;
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,
153
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
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
210
DtLeEntityID
myEntityID
;
211
DtLeEntityLinearVelocity
myVelocity
;
212
DtEntityType
myEntityType
;
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
)