VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfDriver.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 #include <vrvVrl/DtConnection.h>
25 #include <vrfutil/backend.h>
27 
29 
30 #include <vlpi/entityType.h>
31 #include <matrix/vlVector.h>
32 
34 #include <vrfutil/scenario.h>
35 
36 #include <vl/commentInteraction.h>
37 
38 #if DtHLA
40 #endif
41 #include "vrfutil/rwColor.h"
42 
43 class DtVrfObjectMessage;
44 
49 class DtSetDataRequest;
50 class DtSimTask;
53 class DtAddressMap;
54 class DtBackendMap;
55 
56 #if DtHLA
57 namespace makVrfVrlinkExtToolkit
58 {
59  class DtReflectedExtendedAttributesObjectList;
60 }
61 #endif
62 
63 #if DtDIS
64 #define DtCommentCallbackFcn DtCommentPduCb
65 #elif DtHLA
66 #define DtCommentCallbackFcn DtCommentInteractionCb
67 #endif
68 
69 namespace makVrv
70 {
71  class DtVrlinkElement;
72 
73  namespace DT_PROTOCOL_NAMESPACE
74  {
76  class DtAggregateElement;
77  class DtEntityElement;
78  class DtEntitySimDataProcessor;
79  class DtSensorFieldOfViewSimDataProcessor;
81  class DtSensorFieldOfViewSimDataProcessorAccessory;
82  }
83 }
84 
85 namespace makVrf
86 {
87  class DtNetworkMessageInterface;
88  class DtNetworkMessageInterfaceHandlerAgent;
89 
90  namespace VRF_PROTOCOL_NAMESPACE
91  {
92  class DtTDLMessageProcessor;
93  class DtRadioProcessor;
94  class DtVrfBackendInterceptor;
95  class DtVrfConnectionHelper;
96  class DtVrfObjectDataStateProcessor;
97  class DtVrfWeatherStateProcessor;
98  class DtVrfCloudLayerStateProcessor;
99  class DtVrfEnvironmentObjectDataStateProcessor;
100  class DtEnvironmentSimDataProcessor;
101  class DtEmitterSystemSimDataProcessor;
102  class DtActiveSonarSimDataProcessor;
103  class DtVrfAggregateObjectDataStateProcessor;
104  class DtAggregateSimDataProcessor;
105  class DtOrbatSimDataProcessor;
106  class DtVrfFogOfWarHandler;
107  class DtVrfEmbarkationProcessor;
108  class DtIffSimDataProcessor;
109  class DtLaserDesignatorSimDataProcessor;
110  class DtPropulsionNoiseSimDataProcessor;
111  class DtWeatherStateCacheManager;
112  class DtCloudLayerStateCacheManager;
113  class DtVrfWeatherProcessor;
114  class DtVrfCloudLayerProcessor;
115  class DtVrfVrlinkGuiOrbatManager;
116 
118  {
119  public:
120  virtual void callback(const DtEvent&) = 0;
122  {
123  return true;
124  }
125 
127  {
128  return !(*this == orig);
129  }
130  };
131 
132  template <typename _Class, typename _CallbackFunction>
134  {
135  public:
136  DtVrfDriverEventManagerCallbackHandler(_CallbackFunction fcn, void* usr)
137  : myCallbackFcn(fcn)
138  , myUser(usr)
139  {
140  }
141 
143  {
144  myConnection.disconnect();
145  }
146 
147  virtual void callback(const DtEvent& e)
148  {
149  (myCallbackFcn)(static_cast<_Class*>(e.contents()), myUser);
150  }
151 
153  {
154  const DtVrfDriverEventManagerCallbackHandler* handler = dynamic_cast<const DtVrfDriverEventManagerCallbackHandler*>(&orig);
155 
156  if (handler)
157  {
158  return ((handler->myCallbackFcn == myCallbackFcn) &&
159  (handler->myUser == myUser));
160  }
161 
162  return false;
163  }
164 
165  _CallbackFunction myCallbackFcn;
166  void* myUser;
167  boost::signals2::connection myConnection;
168  };
169 
172  {
173  public:
174  DtVrfDriver(makVrv::DtAgentManager& agentManager, const std::string& uniqueName);
175 
176  virtual ~DtVrfDriver();
177 
178  public:
179  virtual bool onStart();
180 
181  public:
183  virtual void realizeConfiguration(const makVrv::DtConfiguration& config);
184 
186  virtual void sendLoggerSetFilename(std::string filename);
187 
189  virtual void sendLoggerRecordMessage();
190 
192  virtual void sendLoggerStopMessage();
193 
196  virtual void newScenario(const DtScenario*, time_t startTimeOfDay = 12 * 3600, const DtChangeWeatherCommand& initialCondition = DtChangeWeatherCommand());
197 
199  virtual void rollbackToSnapshot(double);
200 
202  virtual void loadScenario(const DtScenarioLoadInformation*, bool deleteMemory = false);
203 
206  virtual void saveScenario(const DtScenario*, DtPreserveMappingsFcn fcn = 0, void* userData = 0,
207  bool deleteMemory = false, bool saveInZipFile = false, bool queueSave = false, int putIntoPlayMode = 0);
208 
211  virtual void saveCheckpoints(const std::vector<DtScenario*>&, const DtFilename& baseName);
212 
214  virtual void saveNextCheckpoint();
215 
217  virtual void clearSavingCheckpoints();
218 
220  virtual void closeScenario(DtFilename, bool forceCloseAll = false);
221 
223  virtual void createEnvironmentalObject(DtSimulationAddress addr,
225 
227  virtual DtSimulationStatus simulationStatus() const;
228 
230  virtual void getMessageFilterStatus(std::map<std::string,bool>& statusMap) const;
231 
233  virtual void setMessageFilterStatus(const std::map<std::string,bool>& statusMap);
234 
236  virtual void getMessageProcessorStatus(std::map<std::string,bool>& statusMap) const;
237 
239  virtual void setMessageProcessorStatus(const std::map<std::string,bool>& statusMap);
240 
243  virtual void registerSimMessageCallbackFor(int t, bool reg);
244 
247  virtual void registerSimReportMessageCallbackFor(const DtSimReportMessageType& s, bool reg);
248 
249  virtual void registerSimTaskMessageCallbackFor(const DtSimTaskMessageType& s, bool reg);
250 
251  virtual void registerSetMessageCallbackFor(const DtSetMessageType& s, bool reg);
252 
255  virtual void registerAdminMessageCallbackFor(const DtAdminContentMessageType& t, bool reg);
256 
258  virtual void setTimeoutInterval(int i);
259 
261  virtual void sendMessageToObject(const DtVrfObjectMessage* m, DtSimulationAddress addr);
262 
265  virtual void sendMessage(const DtSimInterfaceContent* m, DtSimulationAddress addr);
266 
268  virtual void addSetCreatorFcn(const DtSetMessageType&, DtSetDataRequestCreatorFcn);
269 
271  virtual void addTaskCreatorFcn(const DtSimTaskMessageType&, DtSimTaskCreatorFcn);
272 
274  virtual void addInterfaceContentCreatorFcn(int, DtInterfaceContentCreatorFcn);
275 
277  virtual void addObjectMessageCreatorFcn(int, DtVrfObjectMessageCreatorFcn);
278 
280  virtual void addReportCreatorFcn(const DtSimReportMessageType&, DtSimReportCreatorFcn);
281 
283  virtual void addAdminContentCreatorFcn(const DtAdminContentMessageType&, DtAdminContentCreatorFcn);
284 
286  virtual void addSimulationCommandCreatorFcn(const DtSimCommandMessageType&, DtSimCommandCreatorFcn);
287 
289  virtual void addConditionCreatorFcn(std::string, int, DtCondExprCreatorFcn);
290 
292  virtual void requestOrbatList();
293 
295  virtual void clearOrbatList();
296 
298  virtual void executeGesture(std::string gesture, std::vector<makVrv::DtUniqueID>);
299 
301  virtual void executeAnimation(std::string gesture, std::vector<makVrv::DtUniqueID>);
302  virtual void executeAnimations(std::map<makVrv::DtUniqueID, std::string>);
303 
305  virtual void setIconColor(DtRwColor iconColor, std::vector<makVrv::DtUniqueID>);
306 
308  virtual void blockNetworkAnimationChange(std::vector<makVrv::DtUniqueID>, bool, double);
309  virtual void blockNetworkGestureChange(std::vector<makVrv::DtUniqueID>, bool);
310 
311 #if DtHLA
312  virtual void regsiterInfluenceIteractionCallback(DtInfluenceInterCb, void*);
314 
316  virtual void unregsiterInfluenceIteractionCallback(DtInfluenceInterCb, void*);
317 #endif
318 
320  virtual void startFreezeScenario(DtSimulationAddress, bool sendStart);
321 
323  virtual void sendSensorFieldOfViewControl(const DtSensorFieldOfViewControlInteractionData* d);
324 
326  virtual void sendDetonation(const DtDetonationInteractionData* d);
327 
329  virtual void registerCommentInteractionCallback(DtCommentCallbackFcn, void*);
330 
332  virtual void unregisterCommentInteractionCallback(DtCommentCallbackFcn, void*);
333 
335  virtual void importScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
336  std::map<std::string, std::string> importData);
337 
339  virtual void exportScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
340  std::map<std::string, std::string> importData);
341 
346  virtual DtSimpleTypedDictionary& extendedStateFor(makVrv::DtUniqueID id, bool forceUpdate = true);
347 
349  virtual void createGlobalDynamicTerrain(bool);
350 
352  virtual void createGlobalEnvironment(bool);
353 
355  {
356  return myVrfObjectDataStateDataProcessor;
357  }
358 
361  {
362  return myDataProcessor;
363  }
364 
366  {
367  return myRadioProcessor;
368  }
369 
371  {
372  return myTDLMessageProcessor;
373  }
374 
376  {
377  return myEmitterSystemDataProcessor;
378  }
379 
381  {
382  return myWeatherDataProcessor;
383  }
384 
386  {
387  return myCloudLayerDataProcessor;
388  }
389 
391  {
392  return myActiveSonarDataProcessor;
393  }
394 
396  {
397  return myEnvironmentDataProcessor;
398  }
399 
401  {
402  return myAggregateDataProcessor;
403  }
404 
406  {
407  return myOrbatDataProcessor;
408  }
409 
411  {
412  return myEventManager;
413  }
414 
416  {
417  return myLaserDesignatorSimDataProcessor;
418  }
419 
421  {
422  return myOrbatManager;
423  }
424 
426  {
427  return myExtendedStateDataProcessor;
428  }
429 
430  void setUseThreadFlag(bool b)
431  {
432  myUseThreadFlag = b;
433  }
434 
435  bool connected() const
436  {
437  return myConnected;
438  }
439 
440  virtual bool onStop();
441 
442  virtual bool onTick();
445  virtual void receivedNetworkMessage(DtNetworkMessageInterface* iface);
446 
448  boost::signals2::signal<void ()> signal_connectionSetUp;
449  boost::signals2::signal<void ()> signal_connectionCleanedUp;
450  boost::signals2::signal<void ()> signal_connectionAboutToBeCleanedUp;
451  boost::signals2::signal<void ()> signal_onFirstTickDriverInitialization;
452  boost::signals2::signal<void ()> signal_driverStarted;
453  boost::signals2::signal<void ()> signal_driverAboutToBeSetUp;
454  boost::signals2::signal<void (DtSimulationStatus)> signal_simulationStatusChanged;
455 
456  public:
457 
460  virtual DtVrfRemoteController* remoteController();
461  virtual const DtVrfRemoteController* remoteController() const;
463 
466  virtual DtVrfMessageInterface* messageInterface();
467  virtual const DtVrfMessageInterface* messageInterface() const;
469 
472  virtual DtVrfTDLMessageInterface* vrfTDLMessageInterface();
473  virtual const DtVrfTDLMessageInterface* vrfTDLMessageInterface() const;
475 
477  const std::string& nonVrfObjectsUseUUIDScheme() const;
478 
479  virtual void simulationStatusChanged(DtSimulationStatus);
480 
481  protected:
482  virtual void onSetupExerciseConnection();
483  virtual void onCleanupExerciseConnection();
484 
485  virtual void connectionConnected();
486 
487  static void scenarioSavedCallback(DtSaveResult result, const DtString& error, void* usr);
488  virtual void processScenarioSaved(DtSaveResult, const DtString&);
489 
490  virtual void setupEntityData();
491  virtual void setupAggregateData();
492  virtual void setupEnvironmentalData();
493 
495  static void simMessageCallback(DtSimMessage* msg, void* usr);
496  virtual void processSimMessage(DtSimMessage* msg);
497 
499  static void radioMessageCallback(const DtVrfObjectMessage* msg, void* usr);
500  virtual void processRadioMessage(const DtVrfObjectMessage* msg);
501 
503  virtual void elementAttributeChangeRequested(
504  makVrv::DtUniqueID id, makVrv::DtUniqueID parentId, DtBoost::shared_ptr<const makVrv::DtElementAttribute> atr );
505 
506  makVrv::DtVrlinkElement* findElementWithId(makVrv::DtUniqueID id) const;
507 
508  virtual makVrv::DtConnection* createConnection();
509 
511  virtual void slot_quitBackend(DtSimulationAddress);
512 
514  virtual void symbolDecorationsChanged();
515  virtual void slot_entityElementCreated(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener& l,
517 
518  virtual void sendScenarioLoadSuccessMessage();
519  virtual void sendScenarioLoadErrorMessage(DtString error);
520 
521  static void scenarioCheckpointed(DtSaveResult result, double, void*);
522  virtual void processScenarioCheckpointed(DtSaveResult result, double);
523 
525  virtual void visualsLoaded();
526 
528  virtual void logGraphics();
529 
531  static void scenarioAboutToBeSaved(DtScenario&, void*);
532  virtual void processScenarioAboutToBeSaved(DtScenario&) const;
533 
534  virtual void setVisibleForElement(makVrv::DtVrlinkElement*, bool flag, int context) const;
535 
536  template <typename _Class, typename _CallbackFunction>
538  {
539  EventHandlerCallbacksMap::iterator iter = myEventHandlerCallbacksMap.find(et);
540 
541  if (iter == myEventHandlerCallbacksMap.end())
542  {
543  myEventHandlerCallbacksMap[et] = EventHandlerCallbacks();
544  iter = myEventHandlerCallbacksMap.find(et);
545  }
546 
549 
550  EventHandlerCallbacks::const_iterator currentIter = iter->second.begin();
551  EventHandlerCallbacks::const_iterator currentEnd = iter->second.end();
552 
553  while (currentIter != currentEnd)
554  {
555  if (**currentIter == *adder)
556  {
557  delete adder;
558  return 0;
559  }
560 
561  ++currentIter;
562  }
563 
564  return adder;
565  }
566 
567  template <typename _Class, typename _CallbackFunction>
568  void removeEventManagerCallback(DtEvent::EventType et, _CallbackFunction fcn, void* usr)
569  {
570  EventHandlerCallbacksMap::iterator iter = myEventHandlerCallbacksMap.find(et);
571 
572  if (iter == myEventHandlerCallbacksMap.end())
573  {
574  myEventHandlerCallbacksMap[et] = EventHandlerCallbacks();
575  iter = myEventHandlerCallbacksMap.find(et);
576  }
577 
580 
581  EventHandlerCallbacks::const_iterator currentIter = iter->second.begin();
582  EventHandlerCallbacks::const_iterator currentEnd = iter->second.end();
583 
584  while (currentIter != currentEnd)
585  {
586  if (**currentIter == *adder)
587  {
588  delete adder;
589  return;
590  }
591 
592  ++currentIter;
593  }
594  }
595 
596  protected:
603 
606 
618 
620 
622 
624 
630 
634 
636 
638  std::string myHostAddressString;
642 
645 
648 
651 
654  DtNetworkMessageInterfaceHandlerAgent* myNetworkMessageInterfaceHandlerAgent;
655 
656  typedef std::map<unsigned int, bool> ContextMap;
657  typedef std::map<makVrv::DtUniqueID, ContextMap> ShowHideContextMap;
658 
661 
664 
666  typedef std::map<double,
667  std::pair<DtScenario, int> > CheckpointsToSave;
670 
671  std::set<int> mySimMessageCallbacks;
672  std::set<DtAdminContentMessageType> myAdminMessageCallbacks;
673  std::set<DtSimReportMessageType> myReportMessageCallbacks;
674  std::set<DtSimTaskMessageType> myTaskMessageCallbacks;
675  std::set<DtSetMessageType> mySetMessageCallbacks;
676 
677  std::map<DtSetMessageType, DtSetDataRequestCreatorFcn> mySetCreator;
678  std::map<DtSimTaskMessageType, DtSimTaskCreatorFcn> myTaskCreator;
679  std::map<int, DtInterfaceContentCreatorFcn> myInterfaceContentCreator;
680  std::map<DtAdminContentMessageType, DtAdminContentCreatorFcn> myAdminContentCreator;
681  std::map<DtSimCommandMessageType, DtSimCommandCreatorFcn> mySimulationCommandCreator;
682  std::map<std::string, std::pair<int, DtCondExprCreatorFcn> > myConditionCommandCreator;
683  std::map<int, DtVrfObjectMessageCreatorFcn> myObjectMessageCreator;
684  std::map<DtSimReportMessageType, DtSimReportCreatorFcn> myReportCreator;
685 
686 #if DtHLA
688 #endif
689 
690 
692 
693 #ifdef DtDIS
694  int mySiteId;
696 #endif
697 
699 
700  typedef std::vector<DtVrfDriverMessageCallbackHandler*> EventHandlerCallbacks;
701  typedef std::map<DtEvent::EventType, EventHandlerCallbacks> EventHandlerCallbacksMap;
703  };
704 
706  {
707  return (myVrfMessageInterface);
708  }
709 
711  {
712  return (myVrfMessageInterface);
713  }
714 
716  {
717  return (myVrfTDLMessageInterface);
718  }
719 
721  {
722  return (myVrfTDLMessageInterface);
723  }
724 
726  {
727  return (myRemoteController);
728  }
729 
731  {
732  return (myRemoteController);
733  }
734 
735  inline const std::string& DtVrfDriver::nonVrfObjectsUseUUIDScheme() const
736  {
738  }
739  }
740 }
std::set< DtSimReportMessageType > myReportMessageCallbacks
Definition: vrfDriver.h:673
int mySiteId
Definition: vrfDriver.h:694
The base class for protocol specific VRLink Simulations.
Definition: DtConnection.h:41
makVrv::DtSignalConnectionManager myConnectionManager
Definition: vrfDriver.h:644
DtAggregateSimDataProcessor * myAggregateDataProcessor
Definition: vrfDriver.h:625
std::map< int, DtVrfObjectMessageCreatorFcn > myObjectMessageCreator
Definition: vrfDriver.h:683
#define VRF_PROTOCOL_EXPORT
Definition: vrfProtocol.h:24
The protocol specific processor for laserDesignator sim data.
Definition: laserDesignatorSimDataProcessor.h:42
DtVrfWeatherStateProcessor * myWeatherDataProcessor
Definition: vrfDriver.h:614
The DtVrfTDLMessageInterface is a transporter for sending TDL messages as data interactions using a V...
Definition: vrfTDLMessageInterface.h:25
DtCloudLayerStateCacheManager * myCloudLayerStateCacheManager
Definition: vrfDriver.h:629
The protocol specific processor for entity sim data.
Definition: DtEntitySimDataProcessor.h:41
DtSimulationStatus
Definition: backend.h:26
std::map< DtEvent::EventType, EventHandlerCallbacks > EventHandlerCallbacksMap
Definition: vrfDriver.h:701
Definition: vrfWeatherStateProcessor.h:41
Definition: networkMessageInterface.h:28
bool myConnected
Definition: vrfDriver.h:659
DtSetDataRequestFactory::DtCreatorFcn DtSetDataRequestCreatorFcn
Definition: setDataRequestFactory.h:41
Definition: scenario.h:52
DtTDLMessageProcessor * tdlMessageProcessor()
Definition: vrfDriver.h:370
DtRadioProcessor * myRadioProcessor
Definition: vrfDriver.h:617
boost::signals2::signal< void()> signal_driverStarted
Definition: vrfDriver.h:452
DtEmitterSystemSimDataProcessor * myEmitterSystemDataProcessor
Definition: vrfDriver.h:607
std::map< DtSimTaskMessageType, DtSimTaskCreatorFcn > myTaskCreator
Definition: vrfDriver.h:678
DtVrfObjectDataStateProcessor * myVrfObjectDataStateDataProcessor
Definition: vrfDriver.h:612
CheckpointsToSave myCheckpointsToSave
Definition: vrfDriver.h:668
DtEnvironmentSimDataProcessor * environmentDataProcessor()
Definition: vrfDriver.h:395
std::map< DtSimCommandMessageType, DtSimCommandCreatorFcn > mySimulationCommandCreator
Definition: vrfDriver.h:681
Provides sim engine status messages to the DtVrfSimBackendManager.
Definition: vrfBackendInterceptor.h:35
DtAddressMap * myLastAddressMap
Definition: vrfDriver.h:649
DtSimulationStatus mySimulationStatus
Definition: vrfDriver.h:698
std::map< makVrv::DtUniqueID, ContextMap > ShowHideContextMap
Definition: vrfDriver.h:657
void setUseThreadFlag(bool b)
Definition: vrfDriver.h:430
DtVrfWeatherProcessor * myVrfWeatherProcessor
Definition: vrfDriver.h:646
Class DtRemoteLoggerController.
Definition: remoteLoggerController.h:25
The protocol specific processor for entity sim data.
Definition: vrfObjectDataStateProcessor.h:45
void removeEventManagerCallback(DtEvent::EventType et, _CallbackFunction fcn, void *usr)
Definition: vrfDriver.h:568
The protocol specific processor for Aggregate sim data.
Definition: aggregateSimDataProcessor.h:48
The protocol specific processor for environmental sim data.
Definition: vrfEnvironmentObjectDataStateProcessor.h:36
Definition: vrfObjectMessageTypeTemplate.h:24
bool myNeedsFirstTickInitialization
Definition: vrfDriver.h:691
std::string myNonVrfObjectsUseUUIDScheme
Definition: vrfDriver.h:663
The protocol specific processor for EmitterSystem sim data.
Definition: emitterSystemSimDataProcessor.h:48
makVrv::DT_PROTOCOL_NAMESPACE::DtEntitySimDataProcessor * myDataProcessor
Definition: vrfDriver.h:604
DtRemoteLoggerController * myLoggerControl
Definition: vrfDriver.h:602
DtRadioProcessor * radioProcessor()
Definition: vrfDriver.h:365
DtVrfCloudLayerProcessor * myVrfCloudLayerProcessor
Definition: vrfDriver.h:647
virtual bool operator!=(const DtVrfDriverMessageCallbackHandler &orig)
Definition: vrfDriver.h:126
virtual DtVrfMessageInterface * messageInterface()
Accessor for message interface.
Definition: vrfDriver.h:705
virtual void * contents() const =0
virtual bool operator==(const DtVrfDriverMessageCallbackHandler &orig)
Definition: vrfDriver.h:152
The protocol specific processor for Environment sim data.
Definition: environmentSimDataProcessor.h:45
std::string myLocalSettingsDesignator
Definition: vrfDriver.h:660
DtSimInterfaceContent *(* DtInterfaceContentCreatorFcn)()
Definition: interfaceContentFactory.h:21
DtVrfCloudLayerStateProcessor * cloudLayerDataProcessor()
Definition: vrfDriver.h:385
boost::signals2::signal< void()> signal_connectionAboutToBeCleanedUp
Definition: vrfDriver.h:450
DtNetworkMessageInterfaceHandlerAgent * myNetworkMessageInterfaceHandlerAgent
Agent for sending notification of messages received to the gui.
Definition: vrfDriver.h:654
DtVrfObjectDataStateProcessor * vrfObjectDataProcessor()
Definition: vrfDriver.h:354
std::string myHostAddressString
Definition: vrfDriver.h:638
DtAdminContentFactory::DtCreatorFcn DtAdminContentCreatorFcn
Definition: adminContentFactory.h:36
class DtBackendMap:
Definition: backendMap.h:19
DtEntityStateCacheManager * myEntityStateCacheManager
Definition: vrfDriver.h:605
std::map< DtSimReportMessageType, DtSimReportCreatorFcn > myReportCreator
Definition: vrfDriver.h:684
std::set< int > mySimMessageCallbacks
Definition: vrfDriver.h:671
DtEventManager * myEventManager
Definition: vrfDriver.h:621
Definition: events.h:47
DtSimTaskFactory::DtCreatorFcn DtSimTaskCreatorFcn
Definition: simTaskFactory.h:41
class DtAddressMap:
Definition: addressMap.h:22
The protocol specific processor for propulsionNoise sim data.
Definition: propulsionNoiseSimDataProcessor.h:44
DtTDLMessageProcessor * myTDLMessageProcessor
Definition: vrfDriver.h:616
virtual DtVrfTDLMessageInterface * vrfTDLMessageInterface()
Accessor for vrf TDL message interface.
Definition: vrfDriver.h:715
makVrv::DtAgentManager & myAgentManager
Definition: vrfDriver.h:619
DtSetDataRequest is an abstract base class from which real setDataRequests can derive.
Definition: setDataRequest.h:40
The main class for the remote control interface to VR-Forces.
Definition: vrfRemoteController.h:203
DtSaveResult
Definition: ifSaveComplete.h:18
int myFileTransporterReceivePort
Definition: vrfDriver.h:662
boost::signals2::signal< void()> signal_connectionCleanedUp
Definition: vrfDriver.h:449
Reader-Writer color specified by red, green, blue components.
Definition: rwColor.h:19
Definition: simpleTypedDictionary.h:36
Definition: eventManager.h:23
makVrv::DT_PROTOCOL_NAMESPACE::DtEntitySimDataProcessor * dataProcessor()
Accessors for data processors.
Definition: vrfDriver.h:360
The protocol specific processor for entity sim data.
Definition: extendedStateDataProcessor.h:44
DtVrfDriverMessageCallbackHandler * addEventManagerCallback(DtEvent::EventType et, _CallbackFunction fcn, void *usr)
Definition: vrfDriver.h:537
DtVrfVrlinkGuiOrbatManager * myOrbatManager
Definition: vrfDriver.h:623
#define VRF_PROTOCOL_NAMESPACE
Definition: vrfDis.h:18
A single entity element.
Definition: DtEntityElement.h:30
DtActiveSonarSimDataProcessor * activeSonarDataProcessor()
Definition: vrfDriver.h:390
DtSimReportFactory::DtCreatorFcn DtSimReportCreatorFcn
Definition: simReportFactory.h:38
_CallbackFunction myCallbackFcn
Definition: vrfDriver.h:165
File: simMsg.h.
Definition: simMessage.h:35
std::map< int, DtInterfaceContentCreatorFcn > myInterfaceContentCreator
Definition: vrfDriver.h:679
std::map< DtAdminContentMessageType, DtAdminContentCreatorFcn > myAdminContentCreator
Definition: vrfDriver.h:680
The DtTDLMessageProcessor is a base class that will create the agent that can be used to send more ge...
Definition: tdlMessageProcessor.h:31
Contains makVrv::DtConnection class.
DtVrfEmbarkationProcessor * myVrfEmbarkationProcessor
Definition: vrfDriver.h:643
DtVrfFogOfWarHandler * myFogOfWarHandler
Definition: vrfDriver.h:641
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
DtVrfObjectMessage *(* DtVrfObjectMessageCreatorFcn)()
Creator function for DtVrfObjectMessage instances.
Definition: vrfObjectMessageFactory.h:21
DtVrfEnvironmentObjectDataStateProcessor * myVrfEnvironmentObjectDataStateDataProcessor
Definition: vrfDriver.h:613
DtIffSimDataProcessor * myIffDataProcessor
Definition: vrfDriver.h:631
std::vector< DtVrfDriverMessageCallbackHandler * > EventHandlerCallbacks
Definition: vrfDriver.h:700
DtExtendedStateDataProcessor * extendedDataStateProcessor()
Definition: vrfDriver.h:425
The protocol specific processor for orbat sim data.
Definition: orbatSimDataProcessor.h:49
DtVrfWeatherStateProcessor * weatherDataProcessor()
Definition: vrfDriver.h:380
void(* DtInfluenceInterCb)(DtInfluenceInteraction *inter, void *usr)
DtInfluenceInteraction callback function signature.
Definition: influenceInteractionHLA.h:23
std::map< DtSetMessageType, DtSetDataRequestCreatorFcn > mySetCreator
Definition: vrfDriver.h:677
EventType
Definition: events.h:50
The protocol specific processor for ActiveSonar sim data.
Definition: activeSonarSimDataProcessor.h:48
DtLaserDesignatorSimDataProcessor * laserDesignatorSimDataProcessor()
Definition: vrfDriver.h:415
The DtSensorFieldOfViewControlInteractionContents provides the data contents of a SensorFieldOfViewCo...
Definition: sensorFieldOfViewControlInteractionData.h:25
DtVrfConnectionHelper * myConnectionHelper
Definition: vrfDriver.h:601
std::string myReportedHostAddressString
Definition: vrfDriver.h:639
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:28
The base class for all messages to/from a specific DtVrfObject.
Definition: vrfObjectMessage.h:30
The DtDetonationInteractionData provides the data contents of a DIS DetonationInteraction.
Definition: detonationInteractionData.h:25
The protocol specific processor for iff sim data.
Definition: iffSimDataProcessor.h:43
The DtAgentManager manages the distributed scene object framework.
Definition: DtAgentManager.h:38
Definition: vrfFogOfWarHandler.h:82
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
bool myRtiError
Definition: vrfDriver.h:637
Definition: asyncJobServer.h:39
DtVrfMessageInterface * myVrfMessageInterface
Definition: vrfDriver.h:598
DtSimCommand *(* DtSimCommandCreatorFcn)()
Definition: simCommandFactory.h:20
Helper code for connectors.
Definition: vrfConnectionHelper.h:48
Contains makVrf::DtSharedNetworkSignaler class.
boost::signals2::signal< void()> signal_onFirstTickDriverInitialization
Definition: vrfDriver.h:451
DtEventManager * eventManager()
Definition: vrfDriver.h:410
DtVrfCloudLayerStateProcessor * myCloudLayerDataProcessor
Definition: vrfDriver.h:615
Contains makVrf::DtExtendedStateDataProcessor class.
virtual ~DtVrfDriverEventManagerCallbackHandler()
Definition: vrfDriver.h:142
#define DT_PROTOCOL_NAMESPACE
Make VR-Vantage VRLink code export with library #ifdef DL_DLL_IGCONVRLINK #undef DL_DLL_IGCONVRLINK #...
Definition: export.h:32
DtAggregateSimDataProcessor * aggregtateDataProcessor()
Definition: vrfDriver.h:400
The protocol specific processor for CloudLayer sim data.
Definition: vrfCloudLayerStateProcessor.h:87
#define DtCommentCallbackFcn
Definition: vrfDriver.h:64
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:88
DtVrfVrlinkGuiOrbatManager * orbatManager()
Definition: vrfDriver.h:420
DtVrfDriverEventManagerCallbackHandler(_CallbackFunction fcn, void *usr)
Definition: vrfDriver.h:136
DtBackendMap * myLastBackendMap
Definition: vrfDriver.h:650
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:33
std::map< std::string, std::pair< int, DtCondExprCreatorFcn > > myConditionCommandCreator
Definition: vrfDriver.h:682
boost::signals2::signal< void()> signal_driverAboutToBeSetUp
Definition: vrfDriver.h:453
DtLaserDesignatorSimDataProcessor * myLaserDesignatorSimDataProcessor
Definition: vrfDriver.h:632
int mySessionId
Definition: vrfDriver.h:640
Contains Extended DI-Guy Object net types.
virtual void callback(const DtEvent &e)
Definition: vrfDriver.h:147
The protocol specific processor for entity sim data.
Definition: vrfEmbarkationProcessor.h:39
DtEnvironmentProcessStateCacheManager * myEnvironmentProcessCacheManager
Definition: vrfDriver.h:610
The base implementation of a configuration.
Definition: DtConfiguration.h:27
DtAggregateStateCacheManager * myAggregateStateCacheManager
Definition: vrfDriver.h:627
virtual DtVrfRemoteController * remoteController()
Accessor for remote controller, only safe within Driver thread.
Definition: vrfDriver.h:725
DtWeatherStateCacheManager * myWeatherStateCacheManager
Definition: vrfDriver.h:628
std::set< DtAdminContentMessageType > myAdminMessageCallbacks
Definition: vrfDriver.h:672
CheckpointsToSave myCheckpointsSaving
Definition: vrfDriver.h:669
Definition: simInterfaceContent.h:45
boost::signals2::signal< void()> signal_connectionSetUp
Signals sent on connection status.
Definition: vrfDriver.h:448
int myAppNumber
Definition: vrfDriver.h:695
DtExtendedStateDataProcessor * myExtendedStateDataProcessor
Definition: vrfDriver.h:611
const std::string & nonVrfObjectsUseUUIDScheme() const
Accessor for non VRF UUID scheme.
Definition: vrfDriver.h:735
bool connected() const
Definition: vrfDriver.h:435
The protocol specific processor for entity sim data.
Definition: vrfAggregateObjectDataStateProcessor.h:43
Definition: scenario.h:614
DtOrbatSimDataProcessor * orbatDataProcessor()
Definition: vrfDriver.h:405
std::set< DtSimTaskMessageType > myTaskMessageCallbacks
Definition: vrfDriver.h:674
virtual bool operator==(const DtVrfDriverMessageCallbackHandler &orig)
Definition: vrfDriver.h:121
DtOrbatSimDataProcessor * myOrbatDataProcessor
Definition: vrfDriver.h:626
makVrfVrlinkExtToolkit::DtReflectedExtendedAttributesObjectList * myExtendedAttributesObjectList
Definition: vrfDriver.h:687
Definition: vrfCloudLayerStateProcessor.h:66
std::set< DtSetMessageType > mySetMessageCallbacks
Definition: vrfDriver.h:675
boost::signals2::signal< void(DtSimulationStatus)> signal_simulationStatusChanged
Definition: vrfDriver.h:454
std::map< double, std::pair< DtScenario, int > > CheckpointsToSave
Checkpoints left to save.
Definition: vrfDriver.h:667
DtSimCondExpr *(* DtCondExprCreatorFcn)()
Definition: condExprFactory.h:28
DtEmitterSystemSimDataProcessor * emitterSystemDataProcessor()
Definition: vrfDriver.h:375
DtEnvironmentSimDataProcessor * myEnvironmentDataProcessor
Definition: vrfDriver.h:609
DtActiveSonarSimDataProcessor * myActiveSonarDataProcessor
Definition: vrfDriver.h:608
EventHandlerCallbacksMap myEventHandlerCallbacksMap
Definition: vrfDriver.h:702
DtVrfTDLMessageInterface * myVrfTDLMessageInterface
Definition: vrfDriver.h:599
DtVrfBackendInterceptor * myBackEndInterceptor
Definition: vrfDriver.h:600
The Driver for DIS.
Definition: vrfDriver.h:171
DtPropulsionNoiseSimDataProcessor * myPropulsionNoiseDataProcessor
Definition: vrfDriver.h:633
DtVrfRemoteController * myRemoteController
Definition: vrfDriver.h:597
Definition: vrfMessageInterface.h:46
DtVrfAggregateObjectDataStateProcessor * myVrfAggregateObjectDataStateDataProcessor
Definition: vrfDriver.h:635
boost::signals2::connection myConnection
Definition: vrfDriver.h:167
The protocol specific processor for weather sim data.
Definition: vrfWeatherStateProcessor.h:57
std::map< unsigned int, bool > ContextMap
Definition: vrfDriver.h:656

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)