MAK Data Logger API Documentation for HLA
Home
Modules
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
libsrc
lgrSim
hlaStateObject.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#ifndef hlaStateObject_H_
11
#define hlaStateObject_H_
12
13
#include "
lgrSim.h
"
14
15
#include "
stateObject.h
"
16
#include "
absoluteTime.h
"
17
#include "
hlaMessageFactory.h
"
18
#include "
hlaTimeStampedAttr.h
"
19
20
#include <list>
21
#include <map>
22
23
#include <vl/rtiCompatibility.h>
24
25
namespace
MAKLogger
26
{
27
class
DtLgrHlaMessage;
28
class
DtLgrHlaMessageState;
29
class
DtLgrHlaSimulationManager;
30
33
class
DT_DLL_LGRSIM
DtHlaTimeStampledStateRep
34
{
35
public
:
36
37
DtHlaTimeStampledStateRep
();
38
~
DtHlaTimeStampledStateRep
();
39
40
void
update(
DtAbsoluteTime
time,
DtLgrHandleValueReferenceMap
* attributes);
41
42
//Generate a list of timed AHVPSets.
43
void
generate(
DtTimedHandleValueMapList
& outputList);
44
45
typedef
std::map<DtLgrHlaHandle,DtHlaTimeStampedAttribute*>
HandleTimedAttributeMap
;
46
const
HandleTimedAttributeMap
& attributes()
const
;
47
48
protected
:
49
50
HandleTimedAttributeMap
myAttributes
;
51
};
52
55
class
DT_DLL_LGRSIM
DtHlaStateObject
:
public
DtStateObject
56
{
57
58
public
:
59
61
DT_VIRTUAL_CTR
(
DtHlaStateObject
,(
DtLgrHlaMessageState
&,
DtPacket
&))
62
63
64
DT_VIRTUAL_BASE_CTR
(
DtStateObject
,(
DtMessageState
&,
DtPacket
&))
65
66
67
virtual
~
DtHlaStateObject
();
68
70
virtual
bool
isEntity()
const
;
71
73
virtual
bool
isAggregate()
const
;
74
76
virtual
DtU64 uniqueId()
const
;
77
79
virtual
DtU64 uniqueId(
const
DtHlaObject*
object
)
const
;
80
82
DtU64 packetId(
DtPacket
& packet)
const
;
83
86
void
setPacketId(DtU64,
DtPacket
&)
const
;
87
89
virtual
DtPacket
* createUpdate(
const
DtAbsoluteTime
& currentTime)
const
;
90
92
virtual
DtPacket
* createUpdates(
const
DtAbsoluteTime
& currentTime)
const
;
93
95
virtual
DtPacket
* createRemoval(
const
DtAbsoluteTime
& currentTime)
const
;
96
98
virtual
bool
packetForMe(
DtPacket
&)
const
;
99
101
virtual
void
updateViaPacket(
DtPacket
&);
102
104
virtual
DtHlaTimeStampledStateRep
* attributes();
105
107
virtual
const
DtRegionDescSet
& regionSet()
const
;
108
109
inline
DtLgrHlaHandle
objectHandle
()
const
{
return
myObjectHandle;}
110
inline
DtLgrHlaHandle
classHandle
()
const
{
return
myClassHandle;}
111
inline
const
DtString
&
name
()
const
{
return
myName;}
112
inline
const
DtString
&
tag
()
const
{
return
myTag;}
113
114
protected
:
115
116
DtLgrHlaHandle
myObjectHandle
;
117
DtLgrHlaHandle
myClassHandle
;
118
DtString
myName
;
119
DtString
myTag
;
120
121
DtLgrHlaMessageState
*
myState
;
122
DtHlaTimeStampledStateRep
*
myAttributes
;
123
DtRegionDescSet
myRegions
;
124
125
mutable
const
DtBaseObjClassDesc
*
myClassDesc
;
126
127
};
128
129
}
130
131
#endif
Document ID: Generated on Sun Dec 15 18:04:30 EST 2013 from SVN revision 134418
Copyright © 2005-2012 VT MÄK. All Rights Reserved (
www.mak.com
)