VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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>
15 #include <set>
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 
39  {
40  public:
41 
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 
58  {
59  myDetonation = pdu;
60  }
61 
63  {
64  return myDetonation;
65  }
66 
68  {
69  return myDetonation.attackerId();
70  }
71 
73  {
74  return myDetonation.targetId();
75  }
76 
77  DtDetonationResult detonationResult() const
78  {
79  return myDetonation.result();
80  }
81 
82  protected:
83 
84  int myForceId;
86 
87  };
88 
90  {
91  public:
92 
94 
96 
97  virtual void visualize(const DtUnicode& visDefName, int modelSet);
98  virtual void setLocation(const DtVector&);
99 
101  {
102  return myInteractionListener;
103  }
104 
105  protected:
106 
108 
109  };
110 
112  {
113  public:
114 
117  static void registerInstance(DtVrlinkConnection& conn,
118  DtDetonationElementProcessor* instance);
119 
121  static DtDetonationElementProcessor* findInstance(DtVrlinkConnection& conn);
122 
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 
141 
143 
144  };
145  }
146 }
Virtual base class.
Definition: DtVirtualBaseClass.h:19
A unicode string.
Definition: DtUnicode.h:33
Definition: DtDetonationElementProcessor.h:111
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
Contains makVrv::DtVirtualBaseClass class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtDetonationPdu DtDetonationInteraction
Definition: DistributedSimulationDriver3A.h:14
bool myFireDetonatedEnabledFlag
Definition: DtDetonationElementProcessor.h:142
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtSignalConnectionManager myConnections
Definition: DtDetonationElementProcessor.h:140
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:31
#define DT_PROTOCOL_NAMESPACE
Make VR-Vantage VRLink code export with library #ifdef DL_DLL_IGCONVRLINK #undef DL_DLL_IGCONVRLINK #...
Definition: export.h:32
Base class to provide boost signal/slot management.
DtVrlinkConnection & mySimulation
Definition: DtDetonationElementProcessor.h:139
Contains DLL export macros.
Contains the DtDetonationInteractionStateListener class declaration.
Base listener class for detonation interactions.
Definition: DtDetonationInteractionStateListener.h:21

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)