VR-Forces 4.7 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrfGuiCore
vrfTDLMessageDataHandler.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2017 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
12
13
#pragma once
14
15
#include <
vrfGuiCore/vrfGuiCore.h
>
16
#include <
vrfGuiCore/vrfTDLMessageDataState.h
>
17
18
#include <
vrvUtil/signalslib.h
>
19
#include <
vrvUtil/DtVirtualBaseClass.h
>
20
#include <
vrvCore/DtUniqueID.h
>
21
22
namespace
makVrv
23
{
24
class
DtDe;
25
}
26
27
namespace
makVrf
28
{
29
class
DtVrfTDLMessageDataStateObjectAgent;
30
class
DtTDLGenericNetworkMessage;
31
class
DtTDLPPLIMessage;
32
class
DtVrfTDLMessageManager;
33
34
class
DT_DLL_VRFGUICORE
DtVrfTDLMessageDataHandler
35
{
36
public
:
37
DtVrfTDLMessageDataHandler
(
makVrv::DtDe
&,
makVrv::DtUniqueID
);
38
virtual
~
DtVrfTDLMessageDataHandler
();
39
42
virtual
bool
update(
double
simTime,
const
DtTDLGenericNetworkMessage
&);
43
45
virtual
bool
tick(
double
simTime);
46
47
virtual
bool
objectEntryRemoved(
makVrv::DtUniqueID
,
makVrv::DtSimState
*);
48
49
virtual
void
updateState();
50
51
makVrv::DtUniqueID
uniqueId()
const
52
{
53
return
myUniqueID;
54
}
55
57
virtual
void
mergeState(
DtVrfTDLMessageDataState
& state,
const
DtTDLGenericNetworkMessage
& message);
58
59
static
std::string handlerType();
60
61
virtual
void
setTimeout(
double
);
62
virtual
double
timeout()
const
;
63
64
protected
:
65
virtual
DtVrfTDLMessageManager
& vrfTDLMessageManager()
const
;
66
67
virtual
void
updateGenericData(
DtVrfTDLMessageDataState
& state,
const
DtTDLGenericNetworkMessage
& message);
68
virtual
void
updatePositionData(
DtVrfTDLMessageDataState
& state,
const
DtTDLPPLIMessage
& message);
69
70
protected
:
71
makVrv::DtUniqueID
myUniqueID
;
72
makVrv::DtDe
&
myDe
;
73
DtVrfTDLMessageDataStateObjectAgent*
myAgent
;
74
double
myLastSimTimeUpdate
;
75
double
myLastReceipt
;
76
DtVrfTDLMessageDataState
myMergedState
;
77
mutable
DtVrfTDLMessageManager
*
myVrfTDLMessageManager
;
78
double
myTimeout
;
79
bool
myTimeoutSet
;
80
};
81
82
class
DT_DLL_VRFGUICORE
DtVrfTDLMessageDataHandlerCreatorInterface
83
{
84
public
:
85
virtual
DtVrfTDLMessageDataHandler
* create(
makVrv::DtDe
&,
makVrv::DtUniqueID
) = 0;
86
};
87
88
class
DT_DLL_VRFGUICORE
DtVrfTDLMessageDataHandlerCreator
:
public
DtVrfTDLMessageDataHandlerCreatorInterface
89
{
90
public
:
91
virtual
~
DtVrfTDLMessageDataHandlerCreator
();
92
93
virtual
DtVrfTDLMessageDataHandler
* create(
makVrv::DtDe
&,
makVrv::DtUniqueID
);
94
};
95
}
Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (
www.mak.com
)