VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfConnectionHelper.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
14 #include <vrfMsgTransport/events.h>
16 #include <vrfutil/scenario.h>
17 #include <vrfutil/backend.h>
18 #include <vrfmsgs/ifSaveComplete.h>
19 
20 #include <matrix/vlVector.h>
21 #include <boost/function.hpp>
22 #include <boost/signals2.hpp>
23 #include <vlutil/vlThread.h>
24 
28 class DtEntityType;
29 class DtSetDataRequest;
30 class DtVrfObjectMessage;
33 class DtSimulationAddress;
35 class Coordinate_System;
36 class DtAddressMap;
37 class DtBackendMap;
38 class DtMtlParameterDb;
39 class DtVrfObjectMessage;
42 
43 namespace makVrv
44 {
45  class DtDe;
46  class DtBaseConnection;
47  class DtCoordinateSystem;
48  class DtSharedSettingsManager;
49 }
50 
51 namespace Legion
52 {
53  class SimulationDatabase;
54 }
55 
56 namespace makVrf
57 {
58  class DtNetworkMessageInterface;
59  class DtNetworkMessageInterfaceHandlerAgent;
60  class DtStateDataManager;
61  class DtSimDataProcessorManager;
62  class DtRadioProcessor;
63  class DtVrfBackendInterceptor;
64  class DtVantageToLegionIdMapper;
65  class DtTDLMessageProcessor;
66  class DtExtendedStateDataProcessor;
67  class DtVrfCommunicationManager;
68  struct DtSimpleTypedDictionary;
69 
71  {
72  public:
73  virtual void callback(const makVrfEvents::DtEvent&) = 0;
75  {
76  return true;
77  }
78 
80  {
81  return !(*this == orig);
82  }
83  };
84 
85  template <typename _Class, typename _CallbackFunction>
87  {
88  public:
89  DtVrfDriverEventManagerCallbackHandler(_CallbackFunction fcn, void* usr)
90  : myCallbackFcn(fcn)
91  , myUser(usr)
92  {
93  }
94 
96  {
97  myConnection.disconnect();
98  }
99 
100  virtual void callback(const makVrfEvents::DtEvent& e)
101  {
102  (myCallbackFcn)(dynamic_cast<const _Class*>(&e), myUser);
103  }
104 
106  {
107  const DtVrfDriverEventManagerCallbackHandler* handler = dynamic_cast<const DtVrfDriverEventManagerCallbackHandler*>(&orig);
108 
109  if (handler)
110  {
111  return ((handler->myCallbackFcn == myCallbackFcn) &&
112  (handler->myUser == myUser));
113  }
114 
115  return false;
116  }
117 
118  _CallbackFunction myCallbackFcn;
119  void* myUser;
120  boost::signals2::connection myConnection;
121  };
122 
126  {
127  public:
128 
130  DtVrfConnectionHelper(makVrv::DtDe&, bool inThread = true);
131 
133  virtual ~DtVrfConnectionHelper();
134 
136  virtual void beginFrame();
137 
139  virtual void advanceFrame();
140 
141  virtual bool onStop();
142 
147  virtual DtSimpleTypedDictionary& extendedStateFor(makVrv::DtUniqueID id, bool forceUpdate = true);
148 
149  typedef boost::function<void (DtVrfConnectionHelper*)> RemoteControllerInitialization;
150 
153  virtual void createStateDataManager(Legion::SimulationDatabase* db = 0);
154 
155  virtual void init(const DtSimulationAddress&, makVrv::DtBaseConnection*, int sessionId = -1,
156  int fileReceiveTransferPort = 9000, Legion::SimulationDatabase* db = 0,
157  RemoteControllerInitialization remoteControllerInitializationFunction = RemoteControllerInitialization(),
158  bool disableRemoteDiscovery = false);
159 
161  virtual void setupQueuedConenctions(makVrv::DtSharedSettingsManager& manager);
162 
165  virtual void receivedNetworkMessage(DtNetworkMessageInterface* iface);
166 
168  virtual void registerCommentInteractionCallback(DtCommentCallbackFcn, void*);
169 
171  virtual void unregisterCommentInteractionCallback(DtCommentCallbackFcn, void*);
172 
174  virtual void queueConnectionFunction(const boost::function<void ()>& function);
175 
177  virtual void queuePostAdvanceFrameConnectionFunction(const boost::function<void ()>& function);
178 
180  virtual void rollbackToSnapshot(double);
181 
182  virtual void setCoordinateSystem(const makVrv::DtCoordinateSystem&);
183 
185  virtual void loadScenario(const DtScenarioLoadInformation*, bool deleteMemory = false);
186 
188  virtual void clearSavingCheckpoints();
189 
191  virtual DtSimulationStatus simulationStatus() const;
192 
194  virtual void simulationStatusChanged(DtSimulationStatus);
195 
197  {
198  return myVantageToLegionIdMapper;
199  }
200 
202  {
203  return myRadioProcessor;
204  }
205 
207  {
208  return myRemoteController;
209  }
210 
211  DtCommunicationManager* communicationManager() const;
212 
214  {
215  return myCoordinateSystem;
216  }
217 
219  {
220  return myVrfMessageInterface;
221  }
222 
224  {
225  return myVrfTDLMessageInterface;
226  }
227 
229  {
230  return myTDLMessageProcessor;
231  }
232 
234  {
235  return myExtendedStateDataProcessor;
236  }
237 
239  {
240  return myStateDataManager;
241  }
242 
244  virtual void sendMessageToObject(const DtVrfObjectMessage* m, DtSimulationAddress addr);
245 
248  virtual void sendMessage(const DtSimInterfaceContent* m, DtSimulationAddress addr);
249 
251  virtual void importScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
252  std::map<std::string, std::string> importData);
253 
255  virtual void exportScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
256  std::map<std::string, std::string> importData);
257 
259  virtual void createGlobalEnvironment(bool);
260 
262  virtual void createEnvironmentalObject(DtSimulationAddress addr,
264 
267  virtual void newScenario(const DtScenario*, time_t startTimeOfDay = 12 * 3600, const DtChangeWeatherCommand& initialCondition = DtChangeWeatherCommand());
268 
270  virtual void closeScenario(DtFilename, bool forceCloseAll = false);
271 
273  virtual void getMessageFilterStatus(std::map<std::string,bool>& statusMap) const;
274 
276  virtual void setMessageFilterStatus(const std::map<std::string,bool>& statusMap);
277 
279  virtual void getMessageProcessorStatus(std::map<std::string,bool>& statusMap) const;
280 
282  virtual void setMessageProcessorStatus(const std::map<std::string,bool>& statusMap);
283 
285  virtual void addSetCreatorFcn(const DtSetMessageType&, DtSetDataRequestCreatorFcn);
286 
288  virtual void addTaskCreatorFcn(const DtSimTaskMessageType&, DtSimTaskCreatorFcn);
289 
291  virtual void addInterfaceContentCreatorFcn(int, DtInterfaceContentCreatorFcn);
292 
294  virtual void addObjectMessageCreatorFcn(int, DtVrfObjectMessageCreatorFcn);
295 
297  virtual void addReportCreatorFcn(const DtSimReportMessageType&, DtSimReportCreatorFcn);
298 
300  virtual void addAdminContentCreatorFcn(const DtAdminContentMessageType&, DtAdminContentCreatorFcn);
301 
303  virtual void addSimulationCommandCreatorFcn(const DtSimCommandMessageType&, DtSimCommandCreatorFcn);
304 
306  virtual void addConditionCreatorFcn(std::string, int, DtCondExprCreatorFcn);
307 
309  virtual void setTimeoutInterval(int i);
310 
313  virtual void registerSimMessageCallbackFor(int t, bool reg);
314 
317  virtual void registerSimReportMessageCallbackFor(const DtSimReportMessageType& s, bool reg);
318 
319  virtual void registerSimTaskMessageCallbackFor(const DtSimTaskMessageType& s, bool reg);
320 
321  virtual void registerSetMessageCallbackFor(const DtSetMessageType& s, bool reg);
322 
325  virtual void registerAdminMessageCallbackFor(const DtAdminContentMessageType& t, bool reg);
326 
328  {
329  return myProposedNumberOfObjectsToBeLoaded;
330  }
331 
334  boost::signals2::signal<void (bool)> signal_parameterDatabaseInitialized;
335  boost::signals2::signal<void (DtSimulationStatus)> signal_simulationStatusChanged;
336  boost::signals2::signal<void ()> signal_scenarioLoaded;
337  boost::signals2::signal<void (DtScenario&)> signal_scenarioAboutToBeSaved;
338  boost::signals2::signal<void (DtSaveResult, const DtString&)> signal_scenarioSaved;
339 
340  protected:
341  virtual void processNetworkMessage(DtNetworkMessageInterface* iface);
342 
344  virtual void slot_onSaveScenario(const DtScenario*, DtPreserveMappingsFcn fcn = 0, void* userData = 0,
345  bool saveInZipFile = false, bool queueSave = false, int putIntoPlayMode = 0);
346 
350  virtual void slot_onSaveCheckpoints(std::vector<DtScenario*>, DtFilename);
351 
353  virtual void slot_onClearSavingCheckpoints();
354 
356  virtual void slot_onLoadScenario(const DtScenarioLoadInformation&);
357 
359  virtual void slot_onRollbackToSnapshot(double);
360 
362  virtual void slot_registerCommentInteraction(bool);
363 
366  virtual void slot_registerInfluenceInteraction(bool);
367 
370  static void influenceInteractionCallback(const makVrfEvents::DtInfluenceEvent *inter, void* usr);
371 
374  virtual void processInfluenceInteraction(const makVrfEvents::DtInfluenceEvent* inter);
377  static void commentInteractionCallback(const makVrfEvents::DtCommentEvent *inter, void* usr);
378 
381  virtual void processCommentInteraction(const makVrfEvents::DtCommentEvent* inter);
382 
384  virtual void regsiterInfluenceIteractionCallback(DtInfluenceEventCb, void*);
385 
387  virtual void unregsiterInfluenceIteractionCallback(DtInfluenceEventCb, void*);
388 
390 
392  static void scenarioAboutToBeSaved(DtScenario&, void*);
393  virtual void processScenarioAboutToBeSaved(DtScenario&) const;
394 
397  virtual void saveScenario(const DtScenario*, DtPreserveMappingsFcn fcn = 0, void* userData = 0,
398  bool deleteMemory = false, bool saveInZipFile = false, bool queueSave = false, int putIntoPlayMode = 0);
399 
402  virtual void saveCheckpoints(const std::vector<DtScenario*>&, const DtFilename& baseName);
403 
405  virtual void saveNextCheckpoint();
406 
408  virtual void slot_quitBackend(DtSimulationAddress);
409  virtual void symbolDecorationsChanged();
410 
411  virtual void setupParameterDatabase(std::vector<DtFilename> searchPaths);
412  virtual void setupEnumerations(const std::vector<DtSimulationModelSet*>& sets);
413 
415  virtual void createGlobalDynamicTerrain(bool);
416 
417  protected:
418  virtual void slot_modelSetLoaded(std::vector<DtFilename> searchPaths);
419 
420  virtual void setupDirectConnections();
421  virtual void disconnectConnections();
422 
423  virtual void sendScenarioLoadSuccessMessage();
424  virtual void sendScenarioLoadErrorMessage(DtString error);
425 
426  static void scenarioSavedCallback(DtSaveResult result, const DtString& error, void* usr);
427  virtual void processScenarioSaved(DtSaveResult, const DtString&);
428 
429  static void scenarioCheckpointed(DtSaveResult result, double, void*);
430  virtual void processScenarioCheckpointed(DtSaveResult result, double);
431 
433  virtual void runFunctionQueue();
434 
436  virtual void runPostAdvanceFrameFunctionQueue();
437 
439  static void simMessageCallback(DtSimMessage* msg, void* usr);
440  virtual void processSimMessage(DtSimMessage* msg);
441 
443  static void radioMessageCallback(const DtVrfObjectMessage* msg, void* usr);
444  virtual void processRadioMessage(const DtVrfObjectMessage* msg);
445 
446  virtual void registerExistingMessages();
447 
448  template <typename _Class, typename _CallbackFunction>
450  {
451  EventHandlerCallbacksMap::iterator iter = myEventHandlerCallbacksMap.find(et);
452 
453  if (iter == myEventHandlerCallbacksMap.end())
454  {
455  myEventHandlerCallbacksMap[et] = EventHandlerCallbacks();
456  iter = myEventHandlerCallbacksMap.find(et);
457  }
458 
461 
462  EventHandlerCallbacks::const_iterator currentIter = iter->second.begin();
463  EventHandlerCallbacks::const_iterator currentEnd = iter->second.end();
464 
465  while (currentIter != currentEnd)
466  {
467  if (**currentIter == *adder)
468  {
469  delete adder;
470  return 0;
471  }
472 
473  ++currentIter;
474  }
475 
476  return adder;
477  }
478 
479  template <typename _Class, typename _CallbackFunction>
480  void removeEventManagerCallback(makVrfEvents::DtEvent::EventType et, _CallbackFunction fcn, void* usr)
481  {
482  EventHandlerCallbacksMap::iterator iter = myEventHandlerCallbacksMap.find(et);
483 
484  if (iter == myEventHandlerCallbacksMap.end())
485  {
486  myEventHandlerCallbacksMap[et] = EventHandlerCallbacks();
487  iter = myEventHandlerCallbacksMap.find(et);
488  }
489 
492 
493  EventHandlerCallbacks::const_iterator currentIter = iter->second.begin();
494  EventHandlerCallbacks::const_iterator currentEnd = iter->second.end();
495 
496  while (currentIter != currentEnd)
497  {
498  if (**currentIter == *adder)
499  {
500  delete adder;
501  return;
502  }
503 
504  ++currentIter;
505  }
506  }
507 
508  virtual void remoteControllerInitialized();
509 
510  protected:
511  typedef std::vector<std::pair<DtVrfObjectConsoleMessageCallbackFcn, void*> > DtCommentInteractionCallbackList;
512 
515 
517 
520  DtNetworkMessageInterfaceHandlerAgent* myNetworkMessageInterfaceHandlerAgent;
521 
523 
524  typedef std::vector<DtVrfConnectionHelperMessageCallbackHandler*> EventHandlerCallbacks;
525  typedef std::map<makVrfEvents::DtEvent::EventType, EventHandlerCallbacks> EventHandlerCallbacksMap;
527 
529  typedef std::vector<boost::function<void ()> > FunctionCallList;
530 
533 
540 
543 
545  typedef std::map<double, std::pair<DtScenario, int> > CheckpointsToSave;
554  bool myStopped;
555 
557  std::vector<DtFilename> myLastSearchPaths;
559 
563 
564  std::set<int> mySimMessageCallbacks;
565  std::set<DtAdminContentMessageType> myAdminMessageCallbacks;
566  std::set<DtSimReportMessageType> myReportMessageCallbacks;
567  std::set<DtSimTaskMessageType> myTaskMessageCallbacks;
568  std::set<DtSetMessageType> mySetMessageCallbacks;
569 
570  std::map<DtSetMessageType, DtSetDataRequestCreatorFcn> mySetCreator;
571  std::map<DtSimTaskMessageType, DtSimTaskCreatorFcn> myTaskCreator;
572  std::map<int, DtInterfaceContentCreatorFcn> myInterfaceContentCreator;
573  std::map<DtAdminContentMessageType, DtAdminContentCreatorFcn> myAdminContentCreator;
574  std::map<DtSimCommandMessageType, DtSimCommandCreatorFcn> mySimulationCommandCreator;
575  std::map<std::string, std::pair<int, DtCondExprCreatorFcn> > myConditionCommandCreator;
576  std::map<int, DtVrfObjectMessageCreatorFcn> myObjectMessageCreator;
577  std::map<DtSimReportMessageType, DtSimReportCreatorFcn> myReportCreator;
578 
579  std::vector<DtFilename> myModelSetSearchPaths;
580 
581  DtThreadId myThreadId;
582  int myProposedNumberOfObjectsToBeLoaded = 0;
583  };
584 }
std::vector< boost::function< void()> > FunctionCallList
Definition: vrfConnectionHelper.h:529
This class allows itself to be registered with the connection.
Definition: vrfCommunicationManager.h:25
Definition: vantageToLegionIdMapper.h:28
virtual bool operator==(const DtVrfConnectionHelperMessageCallbackHandler &orig)
Definition: vrfConnectionHelper.h:74
std::map< std::string, std::pair< int, DtCondExprCreatorFcn > > myConditionCommandCreator
Definition: vrfConnectionHelper.h:575
DtNetworkMessageInterfaceHandlerAgent * myNetworkMessageInterfaceHandlerAgent
Agent for sending notification of messages received to the gui. This message will need to be deleted ...
Definition: vrfConnectionHelper.h:520
EventType
Definition: event.h:16
The protocol specific processor for entity sim data.
Definition: extendedStateDataProcessor.h:38
The DtVrfTDLMessageInterface is a transporter for sending TDL messages as data interactions using a V...
Definition: vrfTDLMessageInterface.h:37
DtSimulationStatus
Definition: backend.h:26
int proposedNumberOfObjectsToBeLoaded() const
Definition: vrfConnectionHelper.h:327
Helper code for connectors. Does not exist in it&#39;s own project but is included by all projects that u...
Definition: vrfConnectionHelper.h:125
DtExtendedStateDataProcessor * extendedDataStateProcessor() const
Definition: vrfConnectionHelper.h:233
Coordinate_System * coordinateSystem() const
Definition: vrfConnectionHelper.h:213
Definition: networkMessageInterface.h:22
DtSetDataRequestFactory::DtCreatorFcn DtSetDataRequestCreatorFcn
Definition: setDataRequestFactory.h:41
Definition: scenario.h:52
Definition: radioProcessor.h:29
double myParameterDatabaseTimerStart
Definition: vrfConnectionHelper.h:558
DtStateDataManager * myStateDataManager
Definition: vrfConnectionHelper.h:535
DtVrfRemoteController * myRemoteController
Definition: vrfConnectionHelper.h:534
Definition: commentEvent.h:15
_CallbackFunction myCallbackFcn
Definition: vrfConnectionHelper.h:118
DtExtendedStateDataProcessor * myExtendedStateDataProcessor
Definition: vrfConnectionHelper.h:553
FunctionCallQueue myAdvancedFrameConnectionThreadFunctions
Definition: vrfConnectionHelper.h:532
boost::signals2::signal< void(bool)> signal_parameterDatabaseInitialized
Signal sent when the parameter database has been asked to be changed. Flag will be true if it has bee...
Definition: vrfConnectionHelper.h:334
boost::signals2::signal< void()> signal_scenarioLoaded
Definition: vrfConnectionHelper.h:336
Contains makVrv:DtSelectionManager class.
virtual ~DtVrfDriverEventManagerCallbackHandler()
Definition: vrfConnectionHelper.h:95
This class will manage the data processors. It will be the spot that the data processors can post mes...
Definition: simDataProcessorManager.h:25
DtTDLMessageProcessor * tdlMessageProcessor() const
Definition: vrfConnectionHelper.h:228
boost::signals2::signal< void(DtSimulationStatus)> signal_simulationStatusChanged
Definition: vrfConnectionHelper.h:335
DtRadioProcessor * radioProcessor() const
Definition: vrfConnectionHelper.h:201
void removeEventManagerCallback(makVrfEvents::DtEvent::EventType et, _CallbackFunction fcn, void *usr)
Definition: vrfConnectionHelper.h:480
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
Coordinate_System * myCoordinateSystem
Definition: vrfConnectionHelper.h:537
virtual bool operator!=(const DtVrfConnectionHelperMessageCallbackHandler &orig)
Definition: vrfConnectionHelper.h:79
DtTDLMessageProcessor * myTDLMessageProcessor
Definition: vrfConnectionHelper.h:551
std::vector< DtFilename > myModelSetSearchPaths
Definition: vrfConnectionHelper.h:579
Definition: vrfConnectionHelper.h:86
std::map< DtSimTaskMessageType, DtSimTaskCreatorFcn > myTaskCreator
Definition: vrfConnectionHelper.h:571
std::map< DtSimCommandMessageType, DtSimCommandCreatorFcn > mySimulationCommandCreator
Definition: vrfConnectionHelper.h:574
CheckpointsToSave myCheckpointsToSave
Definition: vrfConnectionHelper.h:546
DtVrfDriverEventManagerCallbackHandler(_CallbackFunction fcn, void *usr)
Definition: vrfConnectionHelper.h:89
int myFileTransporterReceivePort
Definition: vrfConnectionHelper.h:539
DtSimInterfaceContent *(* DtInterfaceContentCreatorFcn)()
Definition: interfaceContentFactory.h:21
Contains makVrv::DtLockedBufferedQueue class.
DtAdminContentFactory::DtCreatorFcn DtAdminContentCreatorFcn
Definition: adminContentFactory.h:36
std::set< DtAdminContentMessageType > myAdminMessageCallbacks
Definition: vrfConnectionHelper.h:565
class DtBackendMap:
Definition: backendMap.h:21
DtVrfCommunicationManager * myCommunicationManager
Definition: vrfConnectionHelper.h:536
std::vector< std::pair< DtVrfObjectConsoleMessageCallbackFcn, void * > > DtCommentInteractionCallbackList
Definition: vrfConnectionHelper.h:511
DtVrfBackendInterceptor * myBackEndInterceptor
Definition: vrfConnectionHelper.h:561
boost::signals2::signal< void(DtScenario &)> signal_scenarioAboutToBeSaved
Definition: vrfConnectionHelper.h:337
DtSimTaskFactory::DtCreatorFcn DtSimTaskCreatorFcn
Definition: simTaskFactory.h:41
Definition: addressMap.h:24
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
boost::signals2::signal< void(DtSaveResult, const DtString &)> signal_scenarioSaved
Definition: vrfConnectionHelper.h:338
std::map< DtAdminContentMessageType, DtAdminContentCreatorFcn > myAdminContentCreator
Definition: vrfConnectionHelper.h:573
DtSetDataRequest is an abstract base class from which real setDataRequests can derive. It manages the read/write capability; derived classes need only use and register read/writatble data types for derived information.
Definition: setDataRequest.h:41
std::vector< DtFilename > myLastSearchPaths
Definition: vrfConnectionHelper.h:557
The main class for the remote control interface to VR-Forces. Instantiating this class allows the sen...
Definition: vrfRemoteController.h:201
DtSaveResult
Definition: ifSaveComplete.h:18
std::set< DtSimReportMessageType > myReportMessageCallbacks
Definition: vrfConnectionHelper.h:566
makVrv::DtSignalConnectionManager myConnections
Definition: vrfConnectionHelper.h:516
A locked buffered queue which allows multiple writers and a single reader. Internally the queue is st...
Definition: DtLockedBufferedQueue.h:24
Definition: coordSystem.h:54
Definition: simpleTypedDictionary.h:36
Definition: event.h:13
DtVrfMessageInterface * myVrfMessageInterface
Definition: vrfConnectionHelper.h:548
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:51
DtSimReportFactory::DtCreatorFcn DtSimReportCreatorFcn
Definition: simReportFactory.h:38
makVrv::DtLockedBufferedQueue< boost::function< void()> > FunctionCallQueue
Definition: vrfConnectionHelper.h:528
File: simMsg.h.
Definition: simMessage.h:35
DtVrfRemoteController * remoteController() const
Definition: vrfConnectionHelper.h:206
DtVrfTDLMessageInterface * vrfTDLMessageInterface() const
Definition: vrfConnectionHelper.h:223
std::vector< DtVrfConnectionHelperMessageCallbackHandler * > EventHandlerCallbacks
Definition: vrfConnectionHelper.h:524
EventHandlerCallbacksMap myEventHandlerCallbacksMap
Definition: vrfConnectionHelper.h:526
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtVrfObjectMessage *(* DtVrfObjectMessageCreatorFcn)()
Creator function for DtVrfObjectMessage instances.
Definition: vrfObjectMessageFactory.h:21
DtVantageToLegionIdMapper * myVantageToLegionIdMapper
Definition: vrfConnectionHelper.h:562
DtAddressMap * myLastAddressMap
Definition: vrfConnectionHelper.h:541
DtThreadId myThreadId
Definition: vrfConnectionHelper.h:581
Definition: vrfConnectionHelper.h:70
std::map< int, DtVrfObjectMessageCreatorFcn > myObjectMessageCreator
Definition: vrfConnectionHelper.h:576
DtMtlParameterDb * myParameterDatabase
Definition: vrfConnectionHelper.h:556
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:29
The base class for all messages to/from a specific DtVrfObject. Various subclasses of this class will...
Definition: vrfObjectMessage.h:30
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Definition: asyncJobServer.h:39
std::set< int > mySimMessageCallbacks
Definition: vrfConnectionHelper.h:564
DtSimCommand *(* DtSimCommandCreatorFcn)()
Definition: simCommandFactory.h:20
Contains makVrf::DtSharedNetworkSignaler class.
DtSimDataProcessorManager * mySimDataProcessorManager
Definition: vrfConnectionHelper.h:550
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
The DtTDLMessageProcessor is a base class that will create the agent that can be used to send more ge...
Definition: tdlMessageProcessor.h:27
Instances of DtMtlParameterDb are a database of DtVrfObjectParameters* entries that are loaded from a...
Definition: mtlParameterDb.h:40
std::map< DtSetMessageType, DtSetDataRequestCreatorFcn > mySetCreator
Definition: vrfConnectionHelper.h:570
DtStateDataManager * stateDataManager() const
Definition: vrfConnectionHelper.h:238
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
#define DT_DLL_vrfGuiNetworkCommon
This file is used to determine how to build.
Definition: vrfGuiNetworkCommonDefines.h:24
virtual void callback(const makVrfEvents::DtEvent &e)
Definition: vrfConnectionHelper.h:100
DtRadioProcessor * myRadioProcessor
Definition: vrfConnectionHelper.h:552
Base class to provide boost signal/slot management.
bool(* DtPreserveMappingsFcn)(void *usr)
Used by saveScenario to determine if original (true) or new mappings should be saved.
Definition: vrfRemoteController.h:89
std::set< DtSetMessageType > mySetMessageCallbacks
Definition: vrfConnectionHelper.h:568
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::map< int, DtInterfaceContentCreatorFcn > myInterfaceContentCreator
Definition: vrfConnectionHelper.h:572
DtSimulationStatus mySimulationStatus
Definition: vrfConnectionHelper.h:560
CheckpointsToSave myCheckpointsSaving
Definition: vrfConnectionHelper.h:547
bool myStopped
Definition: vrfConnectionHelper.h:554
void * myUser
Definition: vrfConnectionHelper.h:119
bool myInThreadFlag
Definition: vrfConnectionHelper.h:522
virtual bool operator==(const DtVrfConnectionHelperMessageCallbackHandler &orig)
Definition: vrfConnectionHelper.h:105
void(* DtCommentCallbackFcn)(const makVrfEvents::DtCommentEvent *, void *usr)
Definition: commentEvent.h:41
void(* DtInfluenceEventCb)(const makVrfEvents::DtInfluenceEvent *inter, void *usr)
Definition: influenceEvent.h:147
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:72
Definition: simInterfaceContent.h:45
std::map< DtSimReportMessageType, DtSimReportCreatorFcn > myReportCreator
Definition: vrfConnectionHelper.h:577
boost::signals2::connection myConnection
Definition: vrfConnectionHelper.h:120
DtVantageToLegionIdMapper * vantageToLegionIdMapper() const
Definition: vrfConnectionHelper.h:196
boost::function< void(DtVrfConnectionHelper *)> RemoteControllerInitialization
Definition: vrfConnectionHelper.h:149
Coordinate_System * createVrfCoordinateSystem(const makVrv::DtCoordinateSystem &coodSysIn)
Definition: influenceEvent.h:14
Definition: scenario.h:634
std::map< double, std::pair< DtScenario, int > > CheckpointsToSave
Checkpoints left to save.
Definition: vrfConnectionHelper.h:545
std::set< DtSimTaskMessageType > myTaskMessageCallbacks
Definition: vrfConnectionHelper.h:567
DtVrfTDLMessageInterface * myVrfTDLMessageInterface
Definition: vrfConnectionHelper.h:549
int mySessionId
Definition: vrfConnectionHelper.h:538
makVrv::DtDe & myDe
Definition: vrfConnectionHelper.h:513
std::map< makVrfEvents::DtEvent::EventType, EventHandlerCallbacks > EventHandlerCallbacksMap
Definition: vrfConnectionHelper.h:525
Provides sim engine status messages to the DtVrfSimBackendManager. This class will make calls to the ...
Definition: vrfBackendInterceptor.h:34
DtSimCondExpr *(* DtCondExprCreatorFcn)()
Definition: condExprFactory.h:28
DtVrfMessageInterface * messageInterface() const
Definition: vrfConnectionHelper.h:218
makVrv::DtBaseConnection * myConnection
Definition: vrfConnectionHelper.h:514
DtBackendMap * myLastBackendMap
Definition: vrfConnectionHelper.h:542
FunctionCallQueue myConnectionThreadFunctions
Definition: vrfConnectionHelper.h:531
Definition: vrfMessageInterface.h:40
DtVrfConnectionHelperMessageCallbackHandler * addEventManagerCallback(makVrfEvents::DtEvent::EventType et, _CallbackFunction fcn, void *usr)
Definition: vrfConnectionHelper.h:449
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:73

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)