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