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
objectPublisherDIS.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
9
10
#if DtDIS
11
12
13
#ifndef DtDISObjectPublisher_H_
14
#define DtDISObjectPublisher_H_
15
16
17
#include <
vlutil/vlMachineTypes.h
>
18
#include "
objectId.h
"
19
#include <
vlutil/vlTime.h
>
20
21
class
DT_DLL_VL
DtStateRepository
;
22
class
DT_DLL_VL
DtExerciseConn
;
23
class
DT_DLL_VL
DtPdu
;
24
30
class
DT_DLL_VL
DtObjectPublisher
31
{
32
public
:
33
39
DtObjectPublisher
(
DtExerciseConn
* conn,
40
DtStateRepository
* stateRep,
41
DtStateRepository
* asSeenByRemote,
42
bool
okToDeleteStateRep =
true
);
43
45
virtual
~
DtObjectPublisher
();
46
47
private
:
48
50
DtObjectPublisher
(
const
DtObjectPublisher
& orig);
51
53
DtObjectPublisher
& operator= (
const
DtObjectPublisher
& orig);
54
55
public
:
56
59
virtual
DtStateRepository
* stateRep();
60
63
virtual
DtStateRepository
* sr();
64
66
virtual
DtExerciseConn
* exerciseConn();
67
69
virtual
const
DtObjectId
& localId()
const
= 0;
71
virtual
const
DtObjectId
& id()
const
= 0;
73
virtual
const
DtGlobalObjectDesignator
& globalId()
const
= 0;
74
76
virtual
void
forceUpdate()=0;
77
79
virtual
void
tick
() = 0;
80
83
virtual
void
setTimeThreshold(
DtTime
time);
85
virtual
DtTime
timeThreshold()
const
;
86
91
virtual
DtStateRepository
* approximateRemoteStateRep();
92
95
virtual
DtTime
lastTimeUpdated()
const
;
96
99
virtual
DtTime
lastSimTimeUpdated()
const
;
100
103
virtual
void
setUseCustomThreshold(
bool
useCustom);
104
107
virtual
bool
useCustomThreshold();
108
109
public
:
110
115
static
void
setDfltTimeThreshold(
DtTime
time);
116
118
static
DtTime
dfltTimeThreshold();
119
120
protected
:
121
122
124
virtual
void
send
(
DtPdu
* pdu)
const
;
125
126
127
protected
:
128
129
DtExerciseConn
*
myExConn
;
130
DtStateRepository
*
myStateRep
;
131
DtStateRepository
*
myAsSeenByRemote
;
132
bool
myOkToDeleteStateRepFlag
;
133
bool
myUseCustomThreshold
;
134
135
DtTime
myTimeThreshold
;
136
138
mutable
DtTime
mySimTimeLastUpdate
;
139
141
mutable
DtTime
myRealTimeLastUpdate
;
142
143
protected
:
144
145
static
DtTime
theDfltTimeThreshold
;
146
147
};
148
149
inline
DtStateRepository
*
DtObjectPublisher::stateRep
()
150
{
151
return
myStateRep
;
152
}
153
154
inline
DtStateRepository
*
DtObjectPublisher::sr
()
155
{
156
return
myStateRep
;
157
}
158
159
inline
DtExerciseConn
*
DtObjectPublisher::exerciseConn
()
160
{
161
return
myExConn
;
162
}
163
164
inline
DtStateRepository
*
DtObjectPublisher::approximateRemoteStateRep
()
165
{
166
return
myAsSeenByRemote
;
167
}
168
169
#endif //DtObjectPublisher_H_
170
#endif //DtDIS
171
Document ID: Generated on Wed Jan 7 13:31:29 EST 2015 from SVN revision 149162
Copyright © 2005-2014 VT MÄK. All Rights Reserved (
www.mak.com
)