VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfTDLMessageDataProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
15 
16 #pragma once
17 
18 #include <vrfGuiCore/vrfGuiCore.h>
19 
20 #include <vrvCore/DtUniqueID.h>
23 #include <vrfutil/rwUUID.h>
24 #include <vrvCore/DtUniqueID.h>
25 
26 #include <boost/bind/bind.hpp>
27 #include <set>
28 
29 class DtSpotReport;
30 
31 namespace makVrv
32 {
33  class DtDe;
34 }
35 
36 namespace makVrf
37 {
38  class DtGuiLocalObject;
39  class DtVrfTDLMessageDataHandler;
40  class DtVrfSimBackendManager;
41  class DtTDLGenericNetworkMessage;
42  class DtVrfTDLMessageDataHandlerCreatorInterface;
43 
45  {
46  public:
47 
49  static DtVrfTDLMessageDataProcessor& instance(makVrv::DtDe& de);
50 
52  void forceObjectUpdate(makVrv::DtUniqueID uniqueId);
53 
54  public:
55 
60  virtual bool addOrUpdateTDLMessage(const std::string& type, const DtTDLGenericNetworkMessage& message);
61 
63  virtual DtVrfTDLMessageDataHandler* lookup(const DtTDLGenericNetworkMessage& message) const;
64  virtual DtVrfTDLMessageDataHandler* lookup(const std::string& message) const;
65 
67  virtual void removeTDLMessage(makVrv::DtUniqueID id);
68 
70  virtual void removeTDLMessage(const std::string& uniqueIdentifier);
71 
73  virtual void removeAllTDLMessages();
74 
77  virtual void addTDLMessageDataHandler(const std::string& s, DtVrfTDLMessageDataHandlerCreatorInterface*);
78 
79  virtual void removeTDLMessageDataHandler(const std::string& s);
80 
81  virtual bool isTDLMessageData(makVrv::DtUniqueID id) const;
82 
83  protected:
84  virtual DtVrfTDLMessageDataHandler* createVrfTDLMessageDataHandler(const std::string& type, makVrv::DtUniqueID) const;
85 
87  virtual bool createTDLMessageData(const std::string& type, const DtTDLGenericNetworkMessage&);
88 
91  virtual void slot_localObjectRemoved(DtGuiLocalObject*);
92 
93  virtual DtVrfSimBackendManager& backendManager() const;
94 
95  virtual double simTime() const;
96 
97  protected:
100 
102  virtual ~DtVrfTDLMessageDataProcessor() override;
103 
105  virtual void tick();
106 
107  protected:
109 
110  typedef std::map<std::string, DtVrfTDLMessageDataHandler*> VrfTDLMessageDataHandlers;
112 
113  typedef std::map<makVrv::DtUniqueID, DtVrfTDLMessageDataHandler*> VrfTDLMessageDataHandlersById;
115 
117 
118  typedef std::set<makVrv::DtUniqueID> VrfTDLMessageDataIdList;
120 
122 
123  typedef std::map<std::string, DtVrfTDLMessageDataHandlerCreatorInterface*> VrfTDLMessageDataHandlerCreators;
125  };
126 }
makVrv::DtSignalConnectionManager myConnections
Definition: vrfTDLMessageDataProcessor.h:108
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
VrfTDLMessageDataIdList myForceUpdateList
Definition: vrfTDLMessageDataProcessor.h:119
makVrv::DtDe & myDe
Definition: vrfTDLMessageDataProcessor.h:121
std::set< makVrv::DtUniqueID > VrfTDLMessageDataIdList
Definition: vrfTDLMessageDataProcessor.h:118
Contains the DtUUID class declaration.
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Contains makVrv::DtVirtualBaseClass class.
std::map< makVrv::DtUniqueID, DtVrfTDLMessageDataHandler * > VrfTDLMessageDataHandlersById
Definition: vrfTDLMessageDataProcessor.h:113
std::map< std::string, DtVrfTDLMessageDataHandlerCreatorInterface * > VrfTDLMessageDataHandlerCreators
Definition: vrfTDLMessageDataProcessor.h:123
Definition: vrfTDLMessageDataProcessor.h:44
Definition: tdlGenericNetworkMessage.h:20
Definition: vrfTDLMessageDataHandler.h:34
VrfTDLMessageDataHandlersById myVrfTDLMessageDataHandlersById
Definition: vrfTDLMessageDataProcessor.h:114
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
std::map< std::string, DtVrfTDLMessageDataHandler * > VrfTDLMessageDataHandlers
Definition: vrfTDLMessageDataProcessor.h:110
Definition: guiLocalObject.h:18
DtVrfSimBackendManager * myBackendManager
Definition: vrfTDLMessageDataProcessor.h:116
Base class to provide boost signal/slot management.
Maintains and signals state of the simulation engines that are currently connected to the GUI...
Definition: vrfSimBackendManager.h:79
Definition: vrfTDLMessageDataHandler.h:88
Contains makVrv::DtUniqueID type.
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
VrfTDLMessageDataHandlerCreators myVrfTDLMessageDataHandlerCreators
Definition: vrfTDLMessageDataProcessor.h:124
VrfTDLMessageDataHandlers myVrfTDLMessageDataHandlers
Definition: vrfTDLMessageDataProcessor.h:111
DtSpotReport; subclass of DtSimReport.
Definition: spotReport.h:35

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)