VR-Forces 5.0.2 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 DtConnection;
29  class DtLegionConnection;
30  class DtCoordinateSystem;
31 
33  {
34  public:
38  DtStateListener& listener, makVrv::DtSceneObjectAgent* agt, int modelSet);
39  };
40 
43 
44 
46  {
47  public:
49  virtual void setResult(int result) { myResult = result; };
50  int result() const { return myResult; };
51 
52  protected:
53  int myResult;
54  };
55 
56  class VRV_LEGION_DLL DtDetonationVisualizerSet : public DtVisualizerSet
57  {
58  public:
59 
60  DtDetonationVisualizerSet(DtLegionConnection& c, const LOM::DetonateEvent& evt);
61 
62  virtual ~DtDetonationVisualizerSet();
63 
64  virtual void visualize(const DtUnicode& visDefName, int modelSet);
65  virtual void setLocation(const DtVector&);
66 
68  {
69  return myInteractionListener;
70  }
71 
72  protected:
73 
75 
76  };
77 
79  {
80  public:
83 
86  static void registerInstance(DtConnection& conn, DtDetonationEventProcessor* instance);
87 
89  static DtDetonationEventProcessor* findInstance(DtConnection& conn);
90 
92  virtual ~DtDetonationEventProcessor();
93 
94  virtual void tick();
95 
96  virtual void setCoordinateSystem(makVrv::DtCoordinateSystem* cs) { myCoordinateSystem = cs; };
97 
98  protected:
99  virtual void handleDetonationEvents(Legion::Span<LOM::DetonateEvent>& detEvents);
100  virtual const DtUnicode& chooseModelDefinition(const std::vector<DtUnicode>& definitions);
101 
105 
106  };
107 }
DtLegionDetonationInteractionVisualizer(DtBaseConnection &simulation, DtStateListener &listener, int modelSet)
The base class for protocol specific VRLink Simulations.
Definition: DtConnection.h:43
virtual DtObserverMode::ModelSets modelSet()
Return the visualizer&#39;s model set enum.
unsigned int UInt32
Definition: stateDataTypes.h:18
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:49
makVrv::DtCoordinateSystem * myCoordinateSystem
Definition: DtDetonationEventProcessor.h:103
DtStateVisualizerCreatorTemplate< DtLegionDetonationInteractionVisualizer > DtLegionDetonationInteractionVisualizerCreator
Definition: DtDetonationEventProcessor.h:42
Legion::UInt32 myCbHandle
Definition: DtDetonationEventProcessor.h:104
int result() const
Definition: DtDetonationEventProcessor.h:50
Definition: DtDetonationEventProcessor.h:45
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:102
Definition: DtStateVisualizer.h:305
The base class for protocol specific VRLink Simulations.
Definition: DtLegionConnection.h:67
DtDetonationInteractionStateListener & detonationListener()
Definition: DtDetonationEventProcessor.h:67
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
Contains makVrv::DtVirtualBaseClass class.
#define VRV_LEGION_DLL
Definition: export.h:24
Definition: DtDetonationEventProcessor.h:78
DtBaseConnection & simulation()
Get the connection for this visualizer.
Definition: DtStateVisualizer.h:170
DtLegionDetonationInteractionStateListener(DtUniqueID id)
Definition: DtDetonationEventProcessor.h:48
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
DtLegionDetonationInteractionStateListener myInteractionListener
Definition: DtDetonationEventProcessor.h:74
int myResult
Definition: DtDetonationEventProcessor.h:50
virtual void setCoordinateSystem(makVrv::DtCoordinateSystem *cs)
Definition: DtDetonationEventProcessor.h:96
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
Contains the DtDetonationInteractionStateListener class declaration.
DtStateListener & listener()
Definition: DtStateVisualizer.h:159
Base listener class for detonation interactions.
Definition: DtDetonationInteractionStateListener.h:23

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)