VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vl
environmentalProcessPdu.h
Go to the documentation of this file.
1
/****************************************************************************
2
* Copyright (c) 2013 VT MAK
3
* All rights reserved.
4
****************************************************************************/
5
9
10
#pragma once
11
12
#include <
vlutil/vlMachineTypes.h
>
13
14
#include <
vl/pdu.h
>
15
#include <
vl/stateMsg.h
>
16
#include <
vl/environmentalGeometryRecord.h
>
17
#include <
vl/exerciseConn.h
>
18
#include <
vlpi/environmentTypeRecord.h
>
19
20
#include <
vl/packets/envProcP.h
>
21
22
#include <vector>
23
24
class
DT_DLL_VL
DtEnvironmentalProcessPdu
;
25
27
typedef
void (*
DtEnvironmentalProcessPduCb
)(
28
DtEnvironmentalProcessPdu
* pdu,
void
* usr);
29
33
#if DtDIS
34
class
DT_DLL_VL
DtEnvironmentalProcessPdu
:
public
DtStateMsg
35
#else
36
class
DT_DLL_VL
DtEnvironmentalProcessPdu
:
public
DtPdu
37
#endif
38
{
39
public
:
40
42
DtEnvironmentalProcessPdu
(
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
);
43
44
DtEnvironmentalProcessPdu
(
const
DtNetEnvironmentalProcessPdu
* initial,
45
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
,
DtPduFactory
* pduFactory = 0);
46
47
DtEnvironmentalProcessPdu
(
const
DtEnvironmentalProcessPdu
& orig);
48
50
virtual
~DtEnvironmentalProcessPdu
();
51
53
DtEnvironmentalProcessPdu
&
operator=
(
const
DtEnvironmentalProcessPdu
& orig);
54
56
virtual
void
setEnvironmentalProcessID
(
const
DtEntityIdentifier
& entity);
57
virtual
const
DtEntityIdentifier
&
environmentalProcessID
()
const
;
58
60
virtual
void
setEnvironmentType
(
const
DtEnvironmentTypeRecord
& type);
61
virtual
const
DtEnvironmentTypeRecord
&
environmentType
()
const
;
62
64
virtual
void
setModelType
(
DtEnvironmentalModelType
value);
65
virtual
DtEnvironmentalModelType
modelType
()
const
;
66
68
virtual
void
setEnvironmentalStatus
(
DtU8
value);
69
virtual
DtU8
environmentalStatus
()
const
;
70
72
virtual
void
setEnvironmentalStatusBit
(
73
DtEnvironmentalStatusBit
bit,
bool
value);
74
virtual
bool
environmentalStatusBit
(
75
DtEnvironmentalStatusBit
bit)
const
;
76
78
virtual
bool
setNumberOfEnvironmentalRecords
(
DtU16
newNumberOfRecords);
79
virtual
DtU16
numberOfEnvironmentalRecords
()
const
;
80
82
virtual
void
setSequenceNumber
(
DtU16
value);
83
virtual
DtU16
sequenceNumber
()
const
;
84
87
virtual
bool
setRecordBitSize
(
int
recordIndex,
int
newRecordBitSize);
88
91
virtual
DtNetEnvironmentalRecord
*
recordPointer
(
int
recordIndex)
const
;
92
94
virtual
void
printData
()
const
;
95
virtual
void
printDataToStream
(std::ostream& stream)
const
;
96
97
//****
100
101
106
virtual
int
numberOfGeometryRecords
()
const
;
107
109
virtual
DtEnvironmentalRecordType
geometryRecordType
(
int
index)
const
;
110
114
virtual
DtEnvironmentalRecordType
stateRecordType
(
int
index)
const
;
115
121
virtual
bool
getGeometryRecord
(
int
index,
122
DtEnvironmentalGeometryRecord
& geometryRecord)
const
;
123
129
virtual
bool
getStateRecord
(
int
index,
130
DtEnvironmentalRecord
& stateRecord)
const
;
131
133
virtual
void
setEnvironmentalRecord
(
int
index,
134
const
DtEnvironmentalRecord
& envRecord);
135
136
public
:
137
140
static
DtPdu
*
create
(
const
DtNetPacket
* initial,
141
DtBufferPtr
buffer =
DtUSE_INTERNAL_BUFFER
,
DtPduFactory
* pduFactory = 0);
142
145
static
void
addCallback
(
DtExerciseConn
* conn,
146
DtEnvironmentalProcessPduCb
cb,
void
* usr);
147
static
void
removeCallback
(
DtExerciseConn
* conn,
148
DtEnvironmentalProcessPduCb
cb,
void
* usr);
149
160
static
void
setLengthIsWholeEnvRec
(
bool
lengthMode);
161
static
bool
lengthIsWholeEnvRec
();
162
163
protected
:
164
166
virtual
DtPduKind
internalGetPduKind
()
const
;
167
170
DtNetEnvironmentalProcessPdu
*
netPduStruct
()
const
;
171
174
DtEnvironmentalProcessPdu
*
self
()
const
;
175
177
virtual
char
*
var
()
const
;
178
181
virtual
int
recordOffset
(
int
recordIndex)
const
;
182
183
virtual
void
invalidateCache
();
184
185
protected
:
186
192
void
verifyRecDataSize
();
193
194
196
static
const
int
theStaticSize
;
197
static
bool
theLengthIsWholeRec
;
198
199
protected
:
200
202
DtEntityIdentifier
myEntityID
;
203
DtEnvironmentTypeRecord
myEnvironmentType
;
204
mutable
std::vector<int>
myOffsetCache
;
205
206
};
Document ID: Generated on Fri May 15 06:36:13 EDT 2015 from SVN revision 153263
Copyright © 2005-2014 VT MÄK. All Rights Reserved (
www.mak.com
)