VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
resupplyPdu.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 DtResupplyCancelPdu_H_
11
#define DtResupplyCancelPdu_H_
12
13
#if DtDIS
14
15
#include "
hostStructs.h
"
16
#include "
pdu.h
"
17
#include <
matrix/vlMath.h
>
18
#include "
packets/logisticsP.h
"
19
#include "
interaction.h
"
20
21
22
class
DT_DLL_VL
DtExerciseConn
;
23
24
class
DT_DLL_VL
DtResupplyCancelPdu
;
25
typedef
DtResupplyCancelPdu
DtResupplyCancelInteraction
;
26
typedef
void (*
DtResupplyCancelPduCb
)(
DtResupplyCancelPdu
*pdu,
void
*usr);
27
28
class
DT_DLL_VL
DtResupplyCancelPdu
:
public
DtInteraction
29
{
30
public
:
31
32
enum
{ PduStaticSize=24 };
33
34
public
:
35
36
DtResupplyCancelPdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
37
DtResupplyCancelPdu
(
const
DtNetResupplyCancelPdu
*initial,
38
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
39
DtResupplyCancelPdu
(
const
DtEntityIdentifier
&receiveId,
40
const
DtEntityIdentifier
&supplyId,
41
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
42
43
virtual
~DtResupplyCancelPdu
() {};
44
45
const
DtEntityIdentifier
&receivingId()
const
;
46
void
setReceivingId(
const
DtEntityIdentifier
&
id
);
47
48
const
DtEntityIdentifier
&supplyingId()
const
;
49
void
setSupplyingId(
const
DtEntityIdentifier
&
id
);
50
51
virtual
void
printData
()
const
;
52
virtual
void
printDataToStream
(std::ostream& stream)
const
;
53
54
public
:
55
56
static
DtPdu
*create(
const
DtNetPacket
*initial,
57
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
58
59
static
void
addCallback(
DtExerciseConn
*conn,
60
DtResupplyCancelPduCb
cb,
void
*usr);
61
static
void
removeCallback(
DtExerciseConn
*conn,
62
DtResupplyCancelPduCb
cb,
void
*usr);
63
64
protected
:
65
66
DtPduKind
internalGetPduKind
()
const
{
return
DtResupplyCancelPduKind
;}
67
DtEntityIdentifier
theId
;
68
69
};
70
71
/*******************************************************/
72
/******************* RESUPPLY OFFER PDU ****************/
73
/*******************************************************/
74
75
#define DtSUPPLY_VALID 1
76
#define DtSUPPLY_BAD_INDEX 0
77
78
class
DT_DLL_VL
DtResupplyOfferPdu
;
79
typedef
DtResupplyOfferPdu
DtResupplyOfferInteraction
;
80
typedef
void (*
DtResupplyOfferPduCb
)(
DtResupplyOfferPdu
*pdu,
void
*usr);
81
82
class
DT_DLL_VL
DtResupplyOfferPdu
:
public
DtInteraction
83
{
84
public
:
85
86
enum
{ PduStaticSize=28 };
87
88
public
:
89
90
91
DtResupplyOfferPdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
92
DtResupplyOfferPdu
(
const
DtNetResupplyOfferPdu
*initial,
93
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
94
95
DtResupplyOfferPdu
(
const
DtEntityIdentifier
&receiver,
96
const
DtEntityIdentifier
&supplier,
97
const
DtEntityType
&supply,
98
float
quantity,
99
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
100
101
const
DtEntityIdentifier
&supplyingId()
const
;
102
void
setSupplyingId(
const
DtEntityIdentifier
&servicer);
103
104
int
numSupplyTypes()
const
;
105
void
setNumSupplyTypes(
int
numTypes);
106
107
float
supplyQuantity(
const
DtEntityType
&supply)
const
;
108
109
void
setReceivingId(
const
DtEntityIdentifier
&requester);
110
const
DtEntityIdentifier
&receivingId()
const
;
111
112
const
DtEntityType
&nthSupply(
int
supplyIndex,
113
float
*quantity = 0,
114
int
*retCode = 0)
const
;
115
void
setNthSupply(
int
supplyIndex,
116
const
DtEntityType
&supply,
117
float
quantity,
118
int
*retCode = 0);
119
120
virtual
void
printData
()
const
;
121
virtual
void
printDataToStream
(std::ostream& stream)
const
;
122
123
public
:
124
125
static
DtPdu
*create(
const
DtNetPacket
*initial,
126
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
127
static
void
addCallback(
DtExerciseConn
*conn,
128
DtResupplyOfferPduCb
cb,
void
*usr);
129
static
void
removeCallback(
DtExerciseConn
*conn,
130
DtResupplyOfferPduCb
cb,
void
*usr);
131
132
protected
:
133
134
DtPduKind
internalGetPduKind
()
const
{
return
DtResupplyOfferPduKind
;}
135
int
indexInBounds(
int
ind)
const
;
136
DtEntityIdentifier
theId
;
137
DtEntityType
supType
;
138
};
139
140
/*******************************************************/
141
/******************* RESUPPLY RECEIVED PDU *************/
142
/*******************************************************/
143
144
class
DT_DLL_VL
DtResupplyReceivedPdu
;
145
typedef
DtResupplyReceivedPdu
DtResupplyRecInteraction
;
146
typedef
void (*
DtResupplyReceivedPduCb
)(
DtResupplyReceivedPdu
*pdu,
void
*usr);
147
148
class
DT_DLL_VL
DtResupplyReceivedPdu
:
public
DtInteraction
149
{
150
public
:
151
152
enum
{ PduStaticSize=28 };
153
154
155
public
:
156
157
158
DtResupplyReceivedPdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
159
DtResupplyReceivedPdu
(
const
DtNetResupplyReceivedPdu
*initial,
160
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
161
162
DtResupplyReceivedPdu
(
const
DtEntityIdentifier
&receiver,
163
const
DtEntityIdentifier
&supplier,
164
const
DtEntityType
&supply,
165
float
quantity,
166
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
167
168
const
DtEntityIdentifier
&receivingId()
const
;
169
void
setReceivingId(
const
DtEntityIdentifier
&requester);
170
171
const
DtEntityIdentifier
&supplyingId()
const
;
172
void
setSupplyingId(
const
DtEntityIdentifier
&servicer);
173
174
int
numSupplyTypes()
const
;
175
void
setNumSupplyTypes(
int
numTypes);
176
177
float
supplyQuantity(
const
DtEntityType
&supply)
const
;
178
179
const
DtEntityType
&nthSupply(
int
supplyIndex,
180
float
*quantity = 0,
181
int
*retCode = 0)
const
;
182
183
void
setNthSupply(
int
supplyIndex,
184
const
DtEntityType
&supply,
185
float
quantity,
186
int
*retCode = 0);
187
188
virtual
void
printData
()
const
;
189
virtual
void
printDataToStream
(std::ostream& stream)
const
;
190
191
public
:
192
193
static
DtPdu
*create(
const
DtNetPacket
*initial,
194
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
195
static
void
addCallback(
DtExerciseConn
*conn,
196
DtResupplyReceivedPduCb
cb,
void
*usr);
197
static
void
removeCallback(
DtExerciseConn
*conn,
198
DtResupplyReceivedPduCb
cb,
void
*usr);
199
200
201
protected
:
202
203
DtPduKind
internalGetPduKind
()
const
{
return
DtResupplyReceivedPduKind
;}
204
int
indexInBounds(
int
ind)
const
;
205
DtEntityIdentifier
theId
;
206
DtEntityType
supType
;
207
};
208
209
#endif
210
#endif
211
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
)