VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simManager.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vlutil/vlTime.h>
16 #include <matrix/vlVector.h>
17 #include <tbb/spin_mutex.h>
18 #include <vrfutil/vrf4XAPI.h>
19 
22 class DtPhysicalWorld;
23 class DtCommModelManager;
24 class DtThreadSocket;
25 class DtThreadMessageList;
26 class DtFrameRateMonitor;
27 class DtResourceMonitor;
30 class DtVrfObjectMessage;
32 class DtSimObjectManager;
38 
41 class DtEntityType;
42 class DtEchelonRoleName;
43 class DtString;
44 class DtList;
46 class DtEntityType;
48 
52 class DtScheduler;
53 class DtDebugDrawManager;
59 class DtScriptedObjects;
62 class DtFireManager;
68 class DtHostilityManager;
71 class DtTimer;
75 class DtVrfCallbackQueue;
78 class DtSpawnSinkManager;
81 class DtVrfParameterDb;
83 class DtOrbatManager;
84 class DtEnumDictionary;
89 
90 namespace makVrf
91 {
92  class DtStateDataManager;
93 }
94 
95 namespace makVrfEvents
96 {
97  class DtEventManager;
98  class DtEvent;
100  class DtFireInteraction;
101  class DtDataInteraction;
102  class DtCommentInteraction;
103 }
104 
106 typedef void (*DtSimTickFunction)(void* userData);
107 typedef void (*DtRunDurationCallbackFcn)(void* userData);
108 
122 #include "vrfcore/vrfcoreDefines.h"
124 {
125 public:
126 
129 
131  virtual ~DtSimManager();
132 
133 private:
134 
137  DtSimManager(const DtSimManager& orig);
138 
141  DtSimManager& operator=(const DtSimManager& orig);
142 
143 public:
144 
149  virtual bool init();
150 
152  virtual const DtVrfSimOptionsInterface* simOptions() const;
153 
155  virtual void setSimOptions(const DtVrfSimOptionsInterface&);
156 
157  virtual bool createScheduler();
158  virtual bool createMessageInterface();
159  virtual bool createTDLMessageInterface();
160  virtual bool createFrameRateMonitor();
162  virtual bool createVrfSimSettingsManager();
163  virtual bool createParallelQueue();
164 
168  virtual bool beginFrame(DtCommunicationManagerPerformanceTimerInformation* info = nullptr);
169 
171  virtual void tick();
172 
174  virtual bool advanceFrame(DtCommunicationManagerPerformanceTimerInformation* timerInformation = nullptr);
175 
176  virtual bool deliverMessage(const DtSimInterfaceMessage& msg);
177 
178  virtual bool receiveMessage(const DtSimInterfaceMessage& msg);
179 
180  virtual bool createAndDeliverMessage(
181  const DtSimulationAddress& recipient,
182  const DtSimInterfaceContent & content,
183  bool overrideTimestampOrder = true,
184  bool sendImmediately = false) const;
185 
193 
194  virtual void addTickEntry(DtSimTickFunction tickFunction, void* userData) const;
195  virtual void removeTickEntry(DtSimTickFunction tickFunction, void* userData) const;
197 
201  virtual void addPostTickEntry(DtSimTickFunction tickFunction, void* userData) const;
202  virtual void removePostTickEntry(DtSimTickFunction tickFunction, void* userData) const;
204 
209  virtual DtFrameRateMonitor* frameRateMonitor();
210 
213  virtual DtVrfCallbackQueue* parallelQueue();
214 
216  virtual DtScheduler* scheduler();
217 
219  virtual double simTime() const;
220  virtual double dT() const;
221  virtual double elapsedRealTime() const;
222  virtual double absRealTime() const;
223  virtual double approximateElapsedRealTime() const;
224  virtual bool isPaused() const;
225  virtual double timeMultiplier() const;
226  double simTimeScale() const { return timeMultiplier(); };
227 
228  virtual void setSimTime(double d);
229  virtual void setTimeMultiplier(double d);
230 
232  virtual void setExerciseStartTime(double);
233  virtual double exerciseTime() const;
234  virtual double exerciseStartTime() const;
235 
238 
239  virtual void setPhysicalWorld(DtPhysicalWorld* newPhysicalWorld);
240  virtual DtPhysicalWorld* physicalWorld();
241  virtual const DtPhysicalWorld* physicalWorld() const;
243 
245  virtual void pause();
246  virtual void run();
247 
248  virtual DtSimulationServices* simulationServices();
249  virtual const DtSimulationServices* simulationServices() const;
250 
252 
253  virtual void setCommModelManager(DtCommModelManager* newCommModelManager);
254  virtual DtCommModelManager* commModelManager();
255  virtual const DtCommModelManager* commModelManager() const;
257 
259 
260  virtual void setSimTerrainRequestManager(DtSimTerrainRequestManager* newSimTerrainRequestManager);
261  virtual DtSimTerrainRequestManager* simTerrainRequestManager();
262  virtual const DtSimTerrainRequestManager* simTerrainRequestManager() const;
264 
266  virtual void setSimObjectManager (DtSimObjectManager* entityManager);
267  virtual const DtSimObjectManager* simObjectManager() const;
268  virtual DtSimObjectManager* simObjectManager();
269 
270  void setPlanAdministrator (DtVrfObjectPlanAdministrator* entityManager);
271  DtVrfObjectPlanAdministrator* planAdministrator() const;
272 
273  void setDiGuyCharacterManager (DtDiGuyCharacterDataManager* entityManager);
274  DtDiGuyCharacterDataManager* diGuyCharacterManager() const;
275 
276  virtual void setVrfNavAreaManager(DtVrfNavAreaManager* navAreaManager);
277  virtual DtVrfNavAreaManager* vrfNavAreaManager();
278  virtual const DtVrfNavAreaManager* vrfNavAreaManager() const;
279 
280  virtual void setSpawnSinkManager(DtSpawnSinkManager* spawnSinkManager);
281  virtual DtSpawnSinkManager* spawnSinkManager();
282  virtual const DtSpawnSinkManager* spawnSinkManager() const;
283 
287  virtual void setEmbeddedEntityInfoManager(DtEmbeddedEntityInfoManager* eeInfManager);
288  virtual DtEmbeddedEntityInfoManager* embeddedEntityInfoManager();
289  virtual const DtEmbeddedEntityInfoManager* embeddedEntityInfoManager() const;
290 
292  virtual void setScriptedTaskManager (DtScriptedTaskManager*);
293  virtual DtScriptedTaskManager* scriptedTaskManager();
294  virtual const DtScriptedTaskManager* scriptedTaskManager() const;
295 
297  virtual void setOrbatManager (DtOrbatManager*);
298  virtual DtOrbatManager* orbatManager();
299  virtual const DtOrbatManager* orbatManager() const;
300 
302  virtual void sendServerMessage(const DtString&, int severity = DtNlWarn, const DtSimulationAddress& addr = DtSimSendToAll);
303 
305  virtual void setSimInternalCommunicationManager(DtSimInternalCommunicationManager*);
306  virtual DtSimInternalCommunicationManager* simInternalCommunicationManager() const;
307 
309  virtual void setObjectListManager(DtManagedObjectListManager*);
310  virtual DtManagedObjectListManager* objectListManager() const;
311 
312  virtual void setObjectModelsManager (DtObjectGeometricModelsManager*);
313  virtual DtObjectGeometricModelsManager* objectModelsManager();
314  virtual const DtObjectGeometricModelsManager* objectModelsManager() const;
315 
317  virtual void setScenarioEventManager (DtScenarioEventManager*);
318  virtual DtScenarioEventManager* scenarioEventManager();
319  virtual const DtScenarioEventManager* scenarioEventManager() const;
320 
322  virtual void setHazardAreaManager (DtHazardAreaManager*);
323  virtual DtHazardAreaManager* hazardAreaManager();
324  virtual const DtHazardAreaManager* hazardAreaManager() const;
325 
327  virtual void setIntelCollectionAreaManager (DtIntelCollectionAreaManager*);
328  virtual DtIntelCollectionAreaManager* intelCollectionAreaManager();
329  virtual const DtIntelCollectionAreaManager* intelCollectionAreaManager() const;
330 
332  virtual void setScriptedObjectsMovementManager (DtScriptedObjectsMovementManager*);
333  virtual DtScriptedObjectsMovementManager* scriptedObjectsMovementManager();
334  virtual const DtScriptedObjectsMovementManager* scriptedObjectsMovementManager() const;
335 
339  virtual void setDetonationManager(DtDetonationServiceInterface* detonationManager);
340  virtual DtDetonationServiceInterface* detonationManager();
341  virtual const DtDetonationServiceInterface* detonationManager() const;
342 
344  virtual void setAmmunitionManager(DtAmmunitionManager* ammunitionManager);
345  virtual DtAmmunitionManager* ammunitionManager();
346 
352  virtual void setFireManager(DtFireManager* fireManager);
353  virtual DtFireManager* fireManager();
354  virtual const DtFireManager* fireManager() const;
355 
359 
360  virtual void setGlobalPlanManager(DtGlobalPlanManager* planManager);
361  virtual const DtGlobalPlanManager* globalPlanManager() const;
362  virtual DtGlobalPlanManager* globalPlanManager();
364 
366 
367  virtual void setStealthCommandsManager(DtStealthCommandsManager* planManager);
368  virtual const DtStealthCommandsManager* stealthCommandsManager() const;
369  virtual DtStealthCommandsManager* stealthCommandsManager();
371 
373 
374  virtual void setHostilityManager(DtHostilityManager* hostilityManager);
375  virtual const DtHostilityManager* hostilityManager() const;
376  virtual DtHostilityManager* hostilityManager();
378 
380 
381  virtual void setEngagementZonesManager(DtEngagementZonesManager* manager);
382  virtual const DtEngagementZonesManager* engagementZonesManager() const;
383  virtual DtEngagementZonesManager* engagementZonesManager();
385 
387 
388  virtual void setScenarioExtrasMgr(DtScenarioExtrasMgr* scenarioExtrasMgr);
389  virtual const DtScenarioExtrasMgr* scenarioExtrasMgr() const;
390  virtual DtScenarioExtrasMgr* scenarioExtrasMgr();
392 
395  void setCommunicationManager(DtCommunicationManager*);
396  DtCommunicationManager* communicationManager() const;
397  makVrfEvents::DtEventManager* eventManager() const;
398 
400  makVrf::DtStateDataManager* stateDataManager() const;
401 
403  virtual bool runFullyThreaded() const;
404 
407  virtual void addEvent(const makVrfEvents::DtEvent&);
408 
410 
412  virtual DtString nextEventId(const DtString& entityId);
413 
416 
417  virtual void setSimCommandDistributor(DtSimCommandDistributor* distributor);
418  virtual const DtSimCommandDistributor* simCommandDistributor() const;
419  virtual DtSimCommandDistributor* simCommandDistributor();
421 
424 
425  virtual void setDebugDrawManager(DtDebugDrawManager* debugDrawManager);
426  virtual const DtDebugDrawManager* debugDrawManager() const;
427  virtual DtDebugDrawManager* debugDrawManager();
429 
431 
432  virtual void setObjectParametersDB(const DtVrfParameterDb*);
433  virtual const DtVrfParameterDb* objectParametersDB() const;
435 
437 
438  virtual void setObjectConsoleManager(DtObjectConsoleManager*);
439  virtual const DtObjectConsoleManager* objectConsoleManager() const;
440  virtual DtObjectConsoleManager* objectConsoleManager();
442 
444 
445  virtual void setAisDataManager(DtAisDataServiceInterface*);
446  virtual const DtAisDataServiceInterface* aisDataManager() const;
447  virtual DtAisDataServiceInterface* aisDataManager();
449 
451 
452  virtual void setAdsbDataManager(DtAdsbDataServiceInterface*);
453  virtual const DtAdsbDataServiceInterface* adsbDataManager() const;
454  virtual DtAdsbDataServiceInterface* adsbDataManager();
456 
459  virtual void setScenarioRunId(int);
460  virtual int scenarioRunId() const;
461 
463  virtual void setRejectMismatchedScenarioMessages(bool);
464  virtual bool rejectMismatchedScenarioMessages() const;
465 
468  virtual bool rejectMessage(const DtVrfObjectMessage*) const;
469 
471  virtual DtVrfSimSettingsManager* vrfSimSettingsManager();
472 
475  virtual void addMessageCallback(int type, DtMessageCallbackFcn fcn,
476  void* usrData);
477 
478  virtual void removeMessageCallback(int type, DtMessageCallbackFcn fcn,
479  void* usrData);
480 
486 
487  virtual DtU32 scenarioCapabilities() const;
488  virtual void setScenarioCapabilities(DtU32 v);
490 
494 
495  virtual DtVrfMessageInterface* messageInterface() const;
496  virtual DtInterfaceMessageExecutive* messageExecutive();
497 
499  virtual DtVrfTDLMessageInterface* tdlMessageInterface() const;
500 
503  static void TickFunction(void* userData);
504 
508  virtual void registerInterfaceCallbacks();
509 
512  virtual const DtSimulationAddress& messageAddress() const;
513 
515  static void randSeedCallback(DtSimMessage* msg, void* usr);
516 
518  virtual unsigned long sequenceNumber();
519 
522  virtual void setSequenceNumber(unsigned long sequenceNumber);
523 
525  DtResourceMonitor* resourceMonitor();
526  void setResourceMonitor(DtResourceMonitor*);
527 
529  DtRadarCoverageMonitor* radarCoverageMonitor();
530  void setRadarCoverageMonitor(DtRadarCoverageMonitor*);
531 
533  DtTerrainProfileRequestManager* terrainProfileRequestManager();
534  void setTerrainProfileRequestManager(DtTerrainProfileRequestManager*);
535 
537  virtual int vrfSessionId() const;
538 
540  virtual int vrfMessageVersionSupported() const;
541 
544  virtual void runForDuration(double);
545  virtual double runDurationTime() const;
546 
548  virtual void stopSimulationDurationTimer();
549 
551  static void runDurationCompleteCallback(DtTimer*);
552  virtual void processRunDurationComplete();
553 
555  virtual void addSimulationRunDurationCallback(DtRunDurationCallbackFcn tickFunction, void* userData);
556  virtual void removeSimulationRunDurationCallback(DtRunDurationCallbackFcn tickFunction, void* userData);
557 
560  virtual void setMaxTasks(int);
561 
566  virtual void doNotSelfReflect(unsigned int);
567  virtual void selfReflect(unsigned int);
568 
570  const DtEnumDictionary* enumerationDictionary() const;
571 
573  virtual void clearEnumerations();
574 
576  virtual bool initializeEnumerations();
577 
579  virtual bool loadEnumerations(const DtFilename&);
580 
582  virtual DtFilename enumerationsFileDirectory() const;
583  virtual void setEnumerationsFileDirectory(const DtFilename& directory);
584 
587 
588  virtual void setSyncMatrixManager(DtSyncMatrixManager* SyncMatrixManager);
589  virtual const DtSyncMatrixManager* syncMatrixManager() const;
590  virtual DtSyncMatrixManager* syncMatrixManager();
592 
593 protected:
594  virtual void setupMessagesToNotSelfReflect();
595 
596 protected:
598  double myDT;
599 
616 
653 
655 
661 
665 
668 
669  tbb::spin_mutex myMutex;
670  double mySimTime;
671  tbb::atomic<int> myNextEventNumber;
672 
673 public:
676  VRF4API_METHOD const DtSimulationServices* exerciseClock() const;
678 };
679 
681 {
682  return myResourceMonitor;
683 }
684 
686 {
687  return myRadarCoverageMonitor;
688 }
689 
691 {
693 }
694 
696 {
697  myResourceMonitor = m;
698 }
699 
701 {
703 }
704 
706 {
708 }
709 
711 {
713 }
714 
716 {
717  return myPlanAdministrator;
718 }
719 
721 {
723 }
724 
726 {
728 }
729 
731 {
732  return myCommunicationManager;
733 }
734 
736 {
738 }
739 
741 {
742  return myObjectParametersDB;
743 }
744 
746 {
748 }
749 
751 {
752  return myObjectConsoleManager;
753 }
754 
756 {
757  return myObjectConsoleManager;
758 }
759 
760 inline void DtSimManager::setOrbatManager (DtOrbatManager* entityManager)
761 {
762  myOrbatManager = entityManager;
763 }
764 
766 {
767  return myOrbatManager;
768 }
769 
771 {
773 }
774 
776 {
777  return myObjectListManager;
778 }
779 
781 {
782  return myOrbatManager;
783 }
784 
786 {
787  myObjectModelsManager = entityManager;
788 }
789 
791 {
792  return myObjectModelsManager;
793 }
794 
796 {
797  return myObjectModelsManager;
798 }
799 
801 {
803 }
804 
806 {
808 }
virtual DtSimInternalCommunicationManager * simInternalCommunicationManager() const
Definition: simManager.h:805
DtObjectConsoleManager * myObjectConsoleManager
Definition: simManager.h:648
DtTerrainProfileRequestManager * terrainProfileRequestManager()
Get/set terrain profile request manager.
Definition: simManager.h:690
Definition: simTerrainRequestManager.h:132
This class will be responsible for handling requests to return resources for a particular entity (or ...
Definition: resourceMonitor.h:54
Instances of class DtScheduler maintain a list of DtTimer objects. It ticks all timer objects each ti...
Definition: scheduler.h:22
DtFireManager * myFireManager
Definition: simManager.h:624
DtObjectGeometricModelsManager * myObjectModelsManager
Definition: simManager.h:640
The DtAmmunitionManager is a clas that will maintain ammunition (that which is not published...
Definition: ammunitionManager.h:17
DtDiGuyCharacterDataManager * diGuyCharacterManager() const
Definition: simManager.h:725
The DtVrfTDLMessageInterface is a transporter for sending TDL messages as data interactions using a V...
Definition: vrfTDLMessageInterface.h:37
Instances of DtTimer are used to maintain the information needed to represent some kind of scheduled ...
Definition: timer.h:38
DtGlobalPlanManager * myGlobalPlanManager
Definition: simManager.h:625
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:40
void setTerrainProfileRequestManager(DtTerrainProfileRequestManager *)
Definition: simManager.h:705
DtVrfMessageInterface * myMessageInterface
out message interface
Definition: simManager.h:612
void setResourceMonitor(DtResourceMonitor *)
Definition: simManager.h:695
Abstract interface class to the AIS data service. This service provides access to Automatic Identific...
Definition: aisDataServiceInterface.h:28
DtVrfSimSettingsManager * myVrfSimSettingsManager
Definition: simManager.h:609
Manage scripted tasks (primarily Lua tasks) known by VR-Forces.
Definition: scriptedTaskManager.h:76
Holds all radio networks (comm models, implemented by DtCommModel) for the current exercise...
Definition: commModelManager.h:26
The DtEventManager handles the sending and receipt of system events (fire, detonate, command, etc). It provides a thread-safe way for the sim engine to send and receive such events, between both components within this sim engine and other remote applications.
Definition: eventManager.h:33
DtSpawnSinkManager * mySpawnSinkManager
Definition: simManager.h:643
DtNoArgumentCallbackList mySimulationDurationCallbackList
Definition: simManager.h:659
DtU32 myScenarioCapabilities
Definition: simManager.h:664
Options for the configuring the sim.
Definition: vrfSimOptionsInterface.h:20
Manages all of the spawn points, sink points, and spawn templates in the current scenario.
Definition: spawnSinkManager.h:24
The manager for SimInternal messages on a single simulation engine. This class manages the passing of...
Definition: simInternalCommunicationManager.h:28
DtEnumDictionary * myEnumDictionary
Definition: simManager.h:666
Maintains a list of enumerations read in from files. The dictionary supports two different types of e...
Definition: enumDictionary.h:98
The DtEngagementZonesManager will keep track of all the engagement zones and their state...
Definition: engagementZonesManager.h:20
DtManagedObjectListManager * myObjectListManager
Definition: simManager.h:639
DtVrfObjectPlanAdministrator * planAdministrator() const
Definition: simManager.h:715
Definition: radarCoverageMonitor.h:32
DtVrfSimOptionsInterface * mySimOptions
Definition: simManager.h:597
DtVrfCallbackQueue * myParallelQueue
Definition: simManager.h:641
Definition: terrainProfileRequestManager.h:31
DtDetonationServiceInterface * myDetonationManager
Definition: simManager.h:622
double myDT
Definition: simManager.h:598
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
DtSimInterfaceMessage is used to send a message to the front end or the back end. It derives from a s...
Definition: simInterfaceMessage.h:23
DtVrfNavAreaManager * myVrfNavAreaManager
Definition: simManager.h:642
DtSimCommandDistributor * mySimCommandDistributor
Definition: simManager.h:644
virtual DtOrbatManager * orbatManager()
Definition: simManager.h:765
This class handles all requests as they pertain to viewing or modifying the ORBAT.
Definition: orbatManager.h:30
The DtHazardAreaManager will keep track of all hazard area objects and their state. Hazard areas are predefined as part of this class. Call the add/remove methods to add or remove areas to watch.
Definition: hazardAreaManager.h:22
const DtVrfParameterDb * myObjectParametersDB
Definition: simManager.h:647
virtual void setObjectListManager(DtManagedObjectListManager *)
objectListManager() gives a pointer to the manager of object lists
Definition: simManager.h:770
DtEngagementZonesManager * myEngagementZonesManager
Definition: simManager.h:628
DtSimTerrainRequestManager * mySimTerrainRequestManager
Definition: simManager.h:620
The DtFireManager class exists to centralize the process of sending and receiving of fire interaction...
Definition: fireManager.h:42
The synchronization matrix manager maintains the list of synchronization matrices. These are locally simulated objects that manage a list of phases where during each phase, scenario entities can be assigned with plans.
Definition: syncMatrixManager.h:40
virtual DtManagedObjectListManager * objectListManager() const
Definition: simManager.h:775
DtFrameRateMonitor * myFrameRateMonitor
Definition: simManager.h:608
This class keeps track of which forces are hostile to which other forces in the simulation. It maintains state for each force type, and which other forces types are considered hostile by that force. It can be queried for this data any time during the simulation. Supports force enumerations from 0 to 255.
Definition: hostilityManager.h:34
Debug Draw Manager (back end) that receive (DIS/HLA) messages from a VRF GUI and then connect to the ...
Definition: debugDrawManager.h:37
DtStealthCommandsManager * myStealthCommandsManager
Definition: simManager.h:626
DtScriptedTaskManager * myScriptedTaskManager
Definition: simManager.h:633
This class represents a collection of object consoles that will be used to manage streams for individ...
Definition: objectConsoleManager.h:31
virtual void setObjectConsoleManager(DtObjectConsoleManager *)
The object console manager.
Definition: simManager.h:745
tbb::spin_mutex myMutex
Definition: simManager.h:669
DtOrbatManager * myOrbatManager
Definition: simManager.h:638
DtNoArgumentCallbackList myTickList
The simulation back-end&#39;s clock. Note that this clock is different from the clock associated with the...
Definition: simManager.h:606
double mySimTime
Definition: simManager.h:670
virtual const DtObjectConsoleManager * objectConsoleManager() const
The object console manager.
Definition: simManager.h:750
Manages loading and destruction of the geometric models for objects. Will reference the object parame...
Definition: objectGeometricModelsManager.h:30
DtScenarioExtrasMgr * myScenarioExtrasMgr
Definition: simManager.h:629
DtCommunicationManager * myCommunicationManager
Definition: simManager.h:645
Definition: communicationManager.h:35
Abstract interface class to the ADSB data service. This service provides access to Automatic Dependen...
Definition: adsbDataServiceInterface.h:121
The scenario event manager will keep track of all scenario event objects and their state...
Definition: scenarioEventManager.h:36
DtCommModelManager * myCommModelManager
Definition: simManager.h:619
The DtPhysicalWorld is the primary interface to and manager of all of the &quot;physical&quot; aspects of the s...
Definition: physicalWorld.h:102
DtSimInternalCommunicationManager * mySimInternalCommunicationManager
Definition: simManager.h:649
DtSyncMatrixManager * mySyncMatrixManager
Definition: simManager.h:650
tbb::atomic< int > myNextEventNumber
Definition: simManager.h:671
Definition: event.h:13
DtEmbeddedEntityInfoManager is the central point for information about embedded entities and their ca...
Definition: embeddedEntityInfoManager.h:36
The DtVrfNavAreaManager manages all of the nav areas currently created in the sim.
Definition: vrfNavAreaManager.h:52
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:51
DtNoArgumentCallbackList myPostTickList
Definition: simManager.h:607
File: simMsg.h.
Definition: simMessage.h:35
Contains data describing the available attributes and animations for each DI-Guy character type...
Definition: diGuyCharacterDataManager.h:33
virtual void setObjectModelsManager(DtObjectGeometricModelsManager *)
Definition: simManager.h:785
This class works just as DtCalllbackTable, but manages callbacks that have no arguments, and therefore don&#39;t fit in the template defined by DtCallbackList.
Definition: noArgumentCallbackList.h:152
DtIntelCollectionAreaManager * myIntelCollectionAreaManager
Definition: simManager.h:636
DtScenarioEventManager * myScenarioEventManager
Definition: simManager.h:634
DtScriptedObjectsMovementManager * myScriptedObjectsMovementManager
Definition: simManager.h:637
DtAisDataServiceInterface * myAisDataManager
Definition: simManager.h:651
DtDetonationPdu DtDetonationInteraction
Definition: DistributedSimulationDriver3A.h:14
DtSimObjectManager * mySimObjectManager
Definition: simManager.h:610
void(* DtSimTickFunction)(void *userData)
Function signature for tick functions registered with the DtSimManager.
Definition: simManager.h:106
DtVrfSimSettingsManager is a subclass of DtVrfSettingsManager. Please see the documentation on that c...
Definition: vrfSimSettingsManager.h:33
The base class for all messages to/from a specific DtVrfObject. Various subclasses of this class will...
Definition: vrfObjectMessage.h:30
Contains the DtInterfaceMessageExecutive class declaration.
Definition: interfaceMessageExecutive.h:20
DtCommunicationManager * communicationManager() const
Communication manager accessor.
Definition: simManager.h:730
DtPhysicalWorld * myPhysicalWorld
Objects we hold pointers onto for others.
Definition: simManager.h:618
The intel collection area manager will keep track of all Intel Collection area objects and their stat...
Definition: intelCollectionAreaManager.h:20
The DtVrfObjectPlanAdministrator performs plan-related tasks that must be done in a centralized manne...
Definition: vrfObjectPlanAdministrator.h:44
virtual void setSimInternalCommunicationManager(DtSimInternalCommunicationManager *)
simInternalCommunicationManager() gives pointer to the internal communication manager ...
Definition: simManager.h:800
bool myRejectMismatchedScenarioMessages
Definition: simManager.h:663
This class defines a manager whose job it is to read the extra scenario data in the ...
Definition: scenarioExtrasMgr.h:26
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
This class is the central access point for all current-frame state of all objects in the simulation i...
Definition: simObjectManager.h:42
virtual const DtVrfParameterDb * objectParametersDB() const
The object parameters database.
Definition: simManager.h:740
void setPlanAdministrator(DtVrfObjectPlanAdministrator *entityManager)
Definition: simManager.h:710
DtRadarCoverageMonitor * myRadarCoverageMonitor
Definition: simManager.h:631
Responsible for maintaining and executing stealth commands. The stealth commands are of the format (i...
Definition: stealthCommandsManager.h:35
DtDiGuyCharacterDataManager * myDiGuyCharacterManager
Definition: simManager.h:615
Note that this class is not thread safe. Only call from the main thread.
Definition: frameRateMonitor.h:29
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
double simTimeScale() const
Definition: simManager.h:226
virtual void setObjectParametersDB(const DtVrfParameterDb *)
The object parameters database.
Definition: simManager.h:735
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:123
DtAdsbDataServiceInterface * myAdsbDataManager
Definition: simManager.h:652
virtual DtObjectGeometricModelsManager * objectModelsManager()
Definition: simManager.h:790
Service which provides managed lists of simulation objects that are filtered based on a given predica...
Definition: managedObjectListManager.h:22
double myRunDurationTime
Definition: simManager.h:660
Definition: simInterfaceContent.h:45
DtVrfObjectPlanAdministrator * myPlanAdministrator
Definition: simManager.h:614
DtRadarCoverageMonitor * radarCoverageMonitor()
Get/set radarCoverage monitor.
Definition: simManager.h:685
DtVrfTDLMessageInterface * myTDLMessageInterface
Definition: simManager.h:613
DtHazardAreaManager * myHazardAreaManager
Definition: simManager.h:635
void setRadarCoverageMonitor(DtRadarCoverageMonitor *)
Definition: simManager.h:700
The global plan manager maintains the list of &quot;Global Plans.&quot; These are plans that are not specific t...
Definition: globalPlanManager.h:45
int myScenarioRunId
Definition: simManager.h:662
DtFilename myEnumsFileDirectory
Definition: simManager.h:667
void setDiGuyCharacterManager(DtDiGuyCharacterDataManager *entityManager)
Definition: simManager.h:720
DtSimulationServices * mySimulationServices
Definition: simManager.h:654
#define VRF4API_METHOD
Include this header file to allow for the definition/usage of the ability to mark something as deprec...
Definition: vrf4XAPI.h:22
Abstract interface class to the detonation service. This service provides information about detonatio...
Definition: detonationServiceInterface.h:34
DtResourceMonitor * myResourceMonitor
Definition: simManager.h:630
DtTerrainProfileRequestManager * myTerrainProfileRequestManager
Definition: simManager.h:632
DtResourceMonitor * resourceMonitor()
Get/set resource monitor.
Definition: simManager.h:680
DtAmmunitionManager * myAmmunitionManager
Definition: simManager.h:623
Contains the DtSimCommandDistributor class declaration.
Definition: simCommandDistributor.h:24
DtEmbeddedEntityInfoManager * myEmbeddedEntityInfoManager
Definition: simManager.h:621
#define DT_DLL_vrfcore
This file is used to determine how to build.
Definition: vrfcoreDefines.h:25
void(* DtRunDurationCallbackFcn)(void *userData)
Definition: simManager.h:107
The scripted objects movement manager contains a list of all scripted movement objects that can be us...
Definition: scriptedObjectsMovementManager.h:22
DtCallbackList< DtSimMessage * >::DtCallbackFunctionType DtMessageCallbackFcn
Message callback function signature.
Definition: messageExecutive.h:21
virtual void setOrbatManager(DtOrbatManager *)
orbatManager() provides access to all the orbat items in the system
Definition: simManager.h:760
DtDebugDrawManager * myDebugDrawManager
Definition: simManager.h:646
Definition: vrfMessageInterface.h:40
DtTimer * mySimulationDurationTimer
If non-null this scenario is only scheduled to run for the given amount of time delta from the curren...
Definition: simManager.h:658
DtHostilityManager * myHostilityManager
Definition: simManager.h:627
DtScheduler * myScheduler
Objects we create.
Definition: simManager.h:601
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:73

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)