VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDetonationEventProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvLegion/vrvLegion.h>
13 
14 
18 
20 #include <vrvUtil/DtUnicode.h>
21 
22 
23 #include "legionDataStore/span.h"
24 #include "legionStandardOM/events/detonateEvent.hpp"
25 
26 namespace makVrv
27 {
28  class DtVrlinkBaseConnection;
29  class DtLegionConnection;
30  class DtCoordinateSystem;
31 
33  {
34  public:
36  DtStateListener& listener, makVrv::DtSceneObjectAgent* agt, DtModelSetId modelSet);
37  };
38 
41 
42 
44  {
45  public:
47  virtual void setResult(int result) { myResult = result; };
48  int result() const { return myResult; };
49 
50  protected:
51  int myResult;
52  };
53 
55  {
56  public:
57 
58  DtDetonationVisualizerSet(DtLegionConnection& c, const LOM::DetonateEvent& evt);
59 
60  virtual ~DtDetonationVisualizerSet();
61 
62  virtual void visualize(const DtUnicode& visDefName, DtModelSetId modelSet);
63  virtual void setLocation(const DtVector&);
64 
66  {
67  return myInteractionListener;
68  }
69 
70  protected:
71 
73 
74  };
75 
77  {
78  public:
81 
84  static void registerInstance(DtVrlinkBaseConnection& conn, DtDetonationEventProcessor* instance);
85 
87  static DtDetonationEventProcessor* findInstance(DtVrlinkBaseConnection& conn);
88 
90  virtual ~DtDetonationEventProcessor();
91 
92  virtual void tick();
93 
94  virtual void setCoordinateSystem(makVrv::DtCoordinateSystem* cs) { myCoordinateSystem = cs; };
95 
96  protected:
97  virtual void handleDetonationEvents(Legion::Span<LOM::DetonateEvent>& detEvents);
98  virtual const DtUnicode& chooseModelDefinition(const std::vector<DtUnicode>& definitions);
99 
103 
104  };
105 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
virtual void setResult(int result)
Definition: DtDetonationEventProcessor.h:47
makVrv::DtCoordinateSystem * myCoordinateSystem
Definition: DtDetonationEventProcessor.h:101
DtStateVisualizerCreatorTemplate< DtLegionDetonationInteractionVisualizer > DtLegionDetonationInteractionVisualizerCreator
Definition: DtDetonationEventProcessor.h:40
Legion::UInt32 myCbHandle
Definition: DtDetonationEventProcessor.h:102
int result() const
Definition: DtDetonationEventProcessor.h:48
unsigned int UInt32
Definition: stateDataTypes.h:18
Definition: DtDetonationEventProcessor.h:43
Definition: DtDetonationEventProcessor.h:32
Visualizer for detonation interactions. This class creates its own scene object agent, and then passes it off to the temporary effects manager.
Definition: DtDetonationInteractionVisualizer.h:26
DtLegionConnection & myConnection
Definition: DtDetonationEventProcessor.h:100
Definition: DtStateVisualizer.h:274
The base class for protocol specific VRLink Simulations.
Definition: DtLegionConnection.h:67
DtDetonationInteractionStateListener & detonationListener()
Definition: DtDetonationEventProcessor.h:65
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
Contains makVrv::DtVirtualBaseClass class.
#define VRV_LEGION_DLL
Definition: export.h:24
Definition: DtDetonationEventProcessor.h:76
DtBaseConnection & simulation()
Get the connection for this visualizer.
Definition: DtStateVisualizer.h:155
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtLegionDetonationInteractionStateListener(DtUniqueID id)
Definition: DtDetonationEventProcessor.h:46
Interaction makVrv:DtDetonationInteractionVisualizer class is used to visualize detonations.
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:31
DtLegionDetonationInteractionStateListener myInteractionListener
Definition: DtDetonationEventProcessor.h:72
int myResult
Definition: DtDetonationEventProcessor.h:48
DtLegionDetonationInteractionVisualizer(DtBaseConnection &simulation, DtStateListener &listener, makVrv::DtSceneObjectAgent *agt, DtModelSetId modelSet)
virtual void setCoordinateSystem(makVrv::DtCoordinateSystem *cs)
Definition: DtDetonationEventProcessor.h:94
DtModelSetId
Definition: DtModelSetEnums.h:19
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
virtual DtModelSetId modelSet()
Return the visualizer&#39;s model set enum.
Contains the DtDetonationInteractionStateListener class declaration.
DtStateListener & listener()
Definition: DtStateVisualizer.h:144
Base listener class for detonation interactions.
Definition: DtDetonationInteractionStateListener.h:23
Definition: DtDetonationEventProcessor.h:54

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)