VR-Link API Documentation for HLA Evolved
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
vl
envProcPdu.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
7
8
#pragma once
9
10
#include "
exerciseConn.h
"
11
#include <
vlutil/vlMachineTypes.h
>
12
#include "
hostStructs.h
"
13
#include "
pdu.h
"
14
#include <
vlpi/enviroTypeRec.h
>
15
#include "
stateMsg.h
"
16
#include "
envGeometry.h
"
17
18
#include "
packets/envProcP.h
"
19
20
21
#include <vector>
22
23
class
DT_DLL_VL
DtEnvironmentalProcessPdu
;
24
26
typedef
void (*
DtEnvironmentalProcessPduCb
)(
27
DtEnvironmentalProcessPdu
* pdu,
void
* usr);
28
29
32
#if (DtHLA || DtTENA)
33
class
DT_DLL_VL
DtEnvironmentalProcessPdu
:
public
DtPdu
34
#else
35
class
DT_DLL_VL
DtEnvironmentalProcessPdu
:
public
DtStateMsg
36
#endif
37
{
38
39
public
:
40
42
DtEnvironmentalProcessPdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
43
DtEnvironmentalProcessPdu
(
const
DtNetEnvironmentalProcessPdu
* initial,
44
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
45
DtEnvironmentalProcessPdu
(
const
DtEnvironmentalProcessPdu
& orig);
46
48
virtual
~DtEnvironmentalProcessPdu
();
49
51
DtEnvironmentalProcessPdu
&
operator=
(
const
DtEnvironmentalProcessPdu
& orig);
52
54
virtual
void
setEnvironmentalProcessID
(
const
DtEntityIdentifier
& entity);
55
virtual
const
DtEntityIdentifier
&
environmentalProcessID
()
const
;
56
58
virtual
void
setEnvironmentType
(
const
DtEnvironmentTypeRecord
& type);
59
virtual
const
DtEnvironmentTypeRecord
&
environmentType
()
const
;
60
62
virtual
void
setModelType
(
DtEnvironmentalModelType
value);
63
virtual
DtEnvironmentalModelType
modelType
()
const
;
64
66
virtual
void
setEnvironmentalStatus
(
DtU8
value);
67
virtual
DtU8
environmentalStatus
()
const
;
68
70
virtual
void
setEnvironmentalStatusBit
(
71
DtEnvironmentalStatusBit
bit,
bool
value);
72
virtual
bool
environmentalStatusBit
(
73
DtEnvironmentalStatusBit
bit)
const
;
74
76
virtual
bool
setNumberOfEnvironmentalRecords
(
DtU16
newNumberOfRecords);
77
virtual
DtU16
numberOfEnvironmentalRecords
()
const
;
78
80
virtual
void
setSequenceNumber
(
DtU16
value);
81
virtual
DtU16
sequenceNumber
()
const
;
82
85
virtual
bool
setRecordBitSize
(
int
recordIndex,
int
newRecordBitSize);
86
89
virtual
DtNetEnvironmentalRecord
*
recordPointer
(
int
recordIndex)
const
;
90
92
virtual
void
printData
()
const
;
93
virtual
void
printDataToStream
(std::ostream& stream)
const
;
94
95
//****
98
99
104
virtual
int
numberOfGeometryRecords
()
const
;
105
107
virtual
DtEnvironmentalRecordType
geometryRecordType
(
int
index)
const
;
108
112
virtual
DtEnvironmentalRecordType
stateRecordType
(
int
index)
const
;
113
119
virtual
bool
getGeometryRecord
(
int
index,
120
DtEnvironmentalGeometryRecord
& geometryRecord)
const
;
121
127
virtual
bool
getStateRecord
(
int
index,
128
DtEnvironmentalRecord
& stateRecord)
const
;
129
131
virtual
void
setEnvironmentalRecord
(
int
index,
132
const
DtEnvironmentalRecord
& envRecord);
133
134
public
:
135
138
static
DtPdu
*
create
(
const
DtNetPacket
* initial,
139
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
140
143
static
void
addCallback
(
DtExerciseConn
* conn,
144
DtEnvironmentalProcessPduCb
cb,
void
* usr);
145
static
void
removeCallback
(
DtExerciseConn
* conn,
146
DtEnvironmentalProcessPduCb
cb,
void
* usr);
147
158
static
void
setLengthIsWholeEnvRec
(
bool
lengthMode);
159
static
bool
lengthIsWholeEnvRec
();
160
161
protected
:
162
164
virtual
DtPduKind
internalGetPduKind
()
const
;
165
168
DtNetEnvironmentalProcessPdu
*
netPduStruct
()
const
;
169
172
DtEnvironmentalProcessPdu
*
self
()
const
;
173
175
virtual
char
*
var
()
const
;
176
179
virtual
int
recordOffset
(
int
recordIndex)
const
;
180
181
virtual
void
invalidateCache
();
182
183
protected
:
189
void
verifyRecDataSize
();
190
191
193
static
const
int
theStaticSize
;
194
static
bool
theLengthIsWholeRec
;
195
196
protected
:
197
199
DtEntityIdentifier
myEntityID
;
200
DtEnvironmentTypeRecord
myEnvironmentType
;
201
mutable
std::vector<int>
myOffsetCache
;
202
};
203
204
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
)