VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfmsgs
signalMessageHeader.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2009 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
/*******************************************************************************
6
** $RCSfile: signalMessageHeader.h,v $ $Revision: 1.2 $ $State: Exp $
7
*******************************************************************************/
8
14
15
16
#ifndef DtSignalMessageHeader_H_
17
#define DtSignalMessageHeader_H_
18
19
#include <vlpi/NetStructs.h>
20
#include <vlpi/simulationAddress.h>
21
#include "
vrfmsgs/splitMsgHandle.h
"
22
26
struct
DtNetSignalMessageHeader
27
{
28
DtNetU32
myUsingVrfVersionPrefixA
;
29
DtNetU16
myUsingVrfVersionPrefixB
;
30
DtNetU32
myVrfMessageVersion
;
31
DtNetFederateId
myMessageSimulatorId
;
32
DtNetU16
myMessageNumber
;
33
DtNetU32
myFullMessageSize
;
34
DtNetU16
mySequenceId
;
35
DtNetU16
myNumberOfChunks
;
36
DtNetU32
mySizeOfThisChunk
;
37
DtNetU32
padding2
;
38
39
};
40
45
46
#include "
vrfmsgs/vrfmsgsDefines.h
"
47
class
DT_DLL_vrfmsgs
DtSignalMessageHeader
48
{
49
public
:
50
52
DtSignalMessageHeader
();
53
55
DtSignalMessageHeader
(
const
DtSignalMessageHeader
& orig);
56
58
virtual
~
DtSignalMessageHeader
();
59
61
const
DtSignalMessageHeader
& operator=(
DtSignalMessageHeader
& orig);
62
63
public
:
64
66
virtual
DtSignalMessageHeader
* clone()
const
;
67
70
virtual
unsigned
fullMessageSize()
const
;
71
virtual
void
setFullMessageSize(
unsigned
nSize);
73
76
virtual
unsigned
messageIdNumber()
const
;
77
virtual
void
setMessageIdNumber(
unsigned
sNum);
79
82
virtual
const
DtSimulationAddress& messageIdSenderAddress()
const
;
83
virtual
void
setMessageIdSenderAddress(
const
DtSimulationAddress& simAddr);
85
87
virtual
int
netRepSize()
const
;
88
91
virtual
unsigned
numberOfChunks()
const
;
92
virtual
void
setNumberOfChunks(
unsigned
nNum);
94
96
virtual
bool
setFromNet(
const
char
* networkBuffer,
97
unsigned
contentSize);
98
104
virtual
bool
setToNet(
char
* networkBuffer)
const
;
105
108
virtual
unsigned
sequenceId()
const
;
109
virtual
void
setSequenceId(
unsigned
sSeqId);
111
114
virtual
unsigned
sizeOfThisChunk()
const
;
115
virtual
void
setSizeOfThisChunk(
unsigned
nSize);
117
118
virtual
void
printDataToString(
DtString
& str);
119
121
public
:
122
125
DtU32 vrfMessageVersion()
const
;
126
void
setVrfMessageVersion (DtU32 msgver);
128
129
protected
:
130
unsigned
myFullMessageSize
;
131
unsigned
myMessageNumber
;
132
DtSimulationAddress
myMessageSimulatorId
;
133
unsigned
myNumberOfChunks
;
134
unsigned
mySequenceId
;
135
unsigned
mySizeOfThisChunk
;
136
138
DtU32
myVrfMessageVersionSupported
;
139
140
};
141
142
inline
unsigned
DtSignalMessageHeader::fullMessageSize
()
const
143
{
144
return
(
myFullMessageSize
);
145
}
146
147
inline
void
DtSignalMessageHeader::setFullMessageSize
(
unsigned
nSize)
148
{
149
myFullMessageSize
= nSize;
150
}
151
152
inline
unsigned
DtSignalMessageHeader::messageIdNumber
()
const
153
{
154
return
(
myMessageNumber
);
155
}
156
157
inline
void
DtSignalMessageHeader::setMessageIdNumber
(
unsigned
sNum)
158
{
159
myMessageNumber
= sNum;
160
}
161
162
inline
const
DtSimulationAddress&
DtSignalMessageHeader::messageIdSenderAddress
()
const
163
{
164
return
(
myMessageSimulatorId
);
165
}
166
167
inline
void
DtSignalMessageHeader::setMessageIdSenderAddress
(
const
DtSimulationAddress& simAddr)
168
{
169
myMessageSimulatorId
= simAddr;
170
}
171
172
inline
unsigned
DtSignalMessageHeader::numberOfChunks
()
const
173
{
174
return
(
myNumberOfChunks
);
175
}
176
177
inline
void
DtSignalMessageHeader::setNumberOfChunks
(
unsigned
nNum)
178
{
179
myNumberOfChunks
= nNum;
180
}
181
182
inline
unsigned
DtSignalMessageHeader::sequenceId
()
const
183
{
184
return
(
mySequenceId
);
185
}
186
187
inline
void
DtSignalMessageHeader::setSequenceId
(
unsigned
sSeqId)
188
{
189
mySequenceId
= sSeqId;
190
}
191
192
inline
unsigned
DtSignalMessageHeader::sizeOfThisChunk
()
const
193
{
194
return
(
mySizeOfThisChunk
);
195
}
196
197
inline
void
DtSignalMessageHeader::setSizeOfThisChunk
(
unsigned
nSize)
198
{
199
mySizeOfThisChunk
= nSize;
200
}
201
202
inline
DtU32
DtSignalMessageHeader::vrfMessageVersion
()
const
203
{
204
return
(
myVrfMessageVersionSupported
);
205
}
206
207
inline
void
DtSignalMessageHeader::setVrfMessageVersion
(DtU32 msgver)
208
{
209
myVrfMessageVersionSupported
= msgver;
210
}
211
212
namespace
DtBufferSerialize
213
{
216
DT_DLL_vrfmsgs
int
getSize
(
const
DtSignalMessageHeader
*
const
& messagePtr);
217
222
DT_DLL_vrfmsgs
char
*
encode
(
const
DtSignalMessageHeader
*
const
& messagePtr,
char
*buffer);
223
231
DT_DLL_vrfmsgs
const
char
*
decode
(
DtSignalMessageHeader
*& messagePtr,
const
char
*buffer);
232
}
233
234
#endif
235
236
Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)