MAK RTIspy API Documentation for HLA 1.3
Home
Modules
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
libsrc
RTI
netParms.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1998 MaK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: netParms.h,v $ $Revision: 1.9 $ $State: Exp $
7
*********************************************************************/
8
11
12
#ifndef DtNetParam_H_
13
#define DtNetParam_H_
14
15
#include "
rtiMsConfig.h
"
16
#include <vlutil/vlNetTypes.h>
17
#include "
netRtiMsgHdr.h
"
18
#include <vlutil/vlUtil.h>
19
21
22
class
DT_DLL_LRC
DtNetParamValue
23
{
24
public
:
25
unsigned
short
totalSize()
const
;
26
char
* valuePtr();
27
28
MAKRti::DtNetU16
handle
;
29
MAKRti::DtNetU16
size
;
33
};
34
35
inline
unsigned
short
DtNetParamValue::totalSize
()
const
36
{
37
// Start with static header bytes
38
unsigned
short
hdrSize =
sizeof
(
DtNetParamValue
);
39
40
if
(
size
>= 8)
41
{
42
// Data size >= 64 bit, assume data requires alignment to 64 bit
43
// Adjust header size with padding bytes before data
44
hdrSize += alignedPtrPadding(
this
+1, 8);
45
}
46
47
// Adjust total size for padding bytes after data
48
return
alignValue(hdrSize+
size
, 2);
49
}
50
51
inline
char
*
DtNetParamValue::valuePtr
()
52
{
53
if
(
size
< 4)
54
return
(
char
*)(&
size
+ 1);
55
else
if
(
size
< 8)
56
return
(
char
*)alignPtr(&
size
+ 1, 4);
57
else
58
return
(
char
*)alignPtr(&
size
+ 1, 8);
59
}
60
61
class
DT_DLL_LRC
DtNetBigParamValue
62
{
63
public
:
64
unsigned
long
totalSize()
const
;
65
char
* valuePtr();
66
67
DtNetU32
handle
;
68
DtNetU32
size
;
72
};
73
74
inline
unsigned
long
DtNetBigParamValue::totalSize
()
const
75
{
76
// Start with static header bytes
77
unsigned
short
hdrSize =
sizeof
(
DtNetBigParamValue
);
78
79
if
(
size
>= 8)
80
{
81
// Data size >= 64 bit, assume data requires alignment to 64 bit
82
// Adjust header size with padding bytes before data
83
hdrSize += alignedPtrPadding(
this
+1, 8);
84
}
85
86
// Adjust total size for padding bytes after data
87
return
alignValue(hdrSize+
size
, 4);
88
}
89
90
inline
char
*
DtNetBigParamValue::valuePtr
()
91
{
92
if
(
size
< 8)
93
return
(
char
*)alignPtr(&
size
+ 1, 4);
94
else
95
return
(
char
*)alignPtr(&
size
+ 1, 8);
96
}
97
98
class
DT_DLL_LRC
DtNetParams
99
{
100
public
:
101
int
baseSize()
const
;
102
103
MAKRti::DtNetU16
numParams
;
105
};
106
107
inline
int
DtNetParams::baseSize
()
const
108
{
109
return
sizeof
(
DtNetParams
);
110
}
111
112
class
DT_DLL_LRC
DtNetBigParams
113
{
114
public
:
115
int
baseSize()
const
;
116
117
DtNetU32
numParams
;
119
};
120
121
inline
int
DtNetBigParams::baseSize
()
const
122
{
123
return
sizeof
(
DtNetBigParams
);
124
}
125
126
#endif
Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (
www.mak.com
)