VR-Forces 4.6.1 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
vrvVrl
DtDetonationElementProcessor.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* Copyright (c) 2014 MAK Technologies, Inc.
3
* All rights reserved.
4
*****************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvVrl/vrvVrl.h
>
13
#include <
vrvUtil/DtVirtualBaseClass.h
>
14
#include <
vrvUtil/DtSignalConnectionManager.h
>
15
#include <set>
16
#include <
vrvCore/DtVisualizerSet.h
>
17
#include <
vrvCore/DtDetonationInteractionStateListener.h
>
18
19
#include <vl/detonationInteraction.h>
20
21
#ifndef DT_PROTOCOL_NAMESPACE
22
#error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
23
#endif
24
25
namespace
makVrv
26
{
27
28
class
DtAgent;
29
class
DtModelAgent;
30
31
namespace
DT_PROTOCOL_NAMESPACE
32
{
33
class
DtVrlinkConnection;
34
37
class
DL_DLL_IGCONVRLINK
DtVrlinkDetonationInteractionStateListener
38
:
public
DtDetonationInteractionStateListener
39
{
40
public
:
41
42
DtVrlinkDetonationInteractionStateListener
(
DtUniqueID
elementId )
43
:
DtDetonationInteractionStateListener
( elementId )
44
, myForceId( 0 )
45
{
46
}
47
void
setForceId(
int
i)
48
{
49
myForceId = i;
50
}
51
52
int
forceId()
const
53
{
54
return
myForceId;
55
}
56
57
void
setDetonationPdu(
const
DtDetonationInteraction
& pdu)
58
{
59
myDetonation = pdu;
60
}
61
62
const
DtDetonationInteraction
& detonation()
const
63
{
64
return
myDetonation;
65
}
66
67
const
DtGlobalObjectDesignator
& attackerId()
const
68
{
69
return
myDetonation.attackerId();
70
}
71
72
const
DtGlobalObjectDesignator
& targetId()
const
73
{
74
return
myDetonation.targetId();
75
}
76
77
DtDetonationResult detonationResult()
const
78
{
79
return
myDetonation.result();
80
}
81
82
protected
:
83
84
int
myForceId
;
85
DtDetonationInteraction
myDetonation
;
86
87
};
88
89
class
DL_DLL_IGCONVRLINK
DtVrlinkDetonationVisualizerSet
:
public
DtVisualizerSet
90
{
91
public
:
92
93
DtVrlinkDetonationVisualizerSet
(
DtVrlinkConnection
& c );
94
95
virtual
~
DtVrlinkDetonationVisualizerSet
();
96
97
virtual
void
visualize(
const
DtUnicode
& visDefName,
int
modelSet);
98
virtual
void
setLocation(
const
DtVector
&);
99
100
DtVrlinkDetonationInteractionStateListener
& detonationListener()
101
{
102
return
myInteractionListener;
103
}
104
105
protected
:
106
107
DtVrlinkDetonationInteractionStateListener
myInteractionListener
;
108
109
};
110
111
class
DL_DLL_IGCONVRLINK
DtDetonationElementProcessor
:
public
DtVirtualBaseClass
112
{
113
public
:
114
117
static
void
registerInstance(
DtVrlinkConnection
& conn,
118
DtDetonationElementProcessor
* instance);
119
121
static
DtDetonationElementProcessor
* findInstance(
DtVrlinkConnection
& conn);
122
124
DtDetonationElementProcessor
(
DtVrlinkConnection
& baseSimulation);
125
127
virtual
~
DtDetonationElementProcessor
();
128
130
virtual
void
processInteraction(
const
DtDetonationInteraction
& fireInteraction );
131
132
protected
:
133
134
const
DtUnicode
& chooseModelDefinition(
135
const
std::vector<DtUnicode>& definitions);
136
137
protected
:
138
139
DtVrlinkConnection
&
mySimulation
;
140
DtSignalConnectionManager
myConnections
;
141
142
bool
myFireDetonatedEnabledFlag
;
143
144
};
145
}
146
}
Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)