VR-Forces 5.0.1 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;
87 
88 namespace makVrf
89 {
90  class DtStateDataManager;
91 }
92 
93 namespace makVrfEvents
94 {
95  class DtEventManager;
96  class DtEvent;
98  class DtFireInteraction;
99  class DtDataInteraction;
100  class DtCommentInteraction;
101 }
102 
104 typedef void (*DtSimTickFunction)(void* userData);
105 typedef void (*DtRunDurationCallbackFcn)(void* userData);
106 
120 #include "vrfcore/vrfcoreDefines.h"
122 {
123 public:
124 
127 
129  virtual ~DtSimManager();
130 
131 private:
132 
135  DtSimManager(const DtSimManager& orig);
136 
139  DtSimManager& operator=(const DtSimManager& orig);
140 
141 public:
142 
147  virtual bool init();
148 
150  virtual const DtVrfSimOptionsInterface* simOptions() const;
151 
153  virtual void setSimOptions(const DtVrfSimOptionsInterface&);
154 
155  virtual bool createScheduler();
156  virtual bool createMessageInterface();
157  virtual bool createTDLMessageInterface();
158  virtual bool createFrameRateMonitor();
160  virtual bool createVrfSimSettingsManager();
161  virtual bool createParallelQueue();
162 
166  virtual bool beginFrame();
167 
169  virtual void tick();
170 
172  virtual bool advanceFrame(DtCommunicationManagerPerformanceTimerInformation* timerInformation = nullptr);
173 
174  virtual bool deliverMessage(const DtSimInterfaceMessage& msg);
175 
176  virtual bool receiveMessage(const DtSimInterfaceMessage& msg);
177 
178  virtual bool createAndDeliverMessage(
179  const DtSimulationAddress& recipient,
180  const DtSimInterfaceContent & content,
181  bool overrideTimestampOrder = true) const;
182 
190 
191  virtual void addTickEntry(DtSimTickFunction tickFunction, void* userData) const;
192  virtual void removeTickEntry(DtSimTickFunction tickFunction, void* userData) const;
194 
198  virtual void addPostTickEntry(DtSimTickFunction tickFunction, void* userData) const;
199  virtual void removePostTickEntry(DtSimTickFunction tickFunction, void* userData) const;
201 
206  virtual DtFrameRateMonitor* frameRateMonitor();
207 
210  virtual DtVrfCallbackQueue* parallelQueue();
211 
213  virtual DtScheduler* scheduler();
214 
216  virtual double simTime() const;
217  virtual double dT() const;
218  virtual double elapsedRealTime() const;
219  virtual double absRealTime() const;
220  virtual double approximateElapsedRealTime() const;
221  virtual bool isPaused() const;
222  virtual double timeMultiplier() const;
223  double simTimeScale() const { return timeMultiplier(); };
224 
225  virtual void setSimTime(double d);
226  virtual void setTimeMultiplier(double d);
227 
229  virtual void setExerciseStartTime(double);
230  virtual double exerciseTime() const;
231  virtual double exerciseStartTime() const;
232 
235 
236  virtual void setPhysicalWorld(DtPhysicalWorld* newPhysicalWorld);
237  virtual DtPhysicalWorld* physicalWorld();
238  virtual const DtPhysicalWorld* physicalWorld() const;
240 
242  virtual void pause();
243  virtual void run();
244 
245  virtual DtSimulationServices* simulationServices();
246  virtual const DtSimulationServices* simulationServices() const;
247 
249 
250  virtual void setCommModelManager(DtCommModelManager* newCommModelManager);
251  virtual DtCommModelManager* commModelManager();
252  virtual const DtCommModelManager* commModelManager() const;
254 
256 
257  virtual void setSimTerrainRequestManager(DtSimTerrainRequestManager* newSimTerrainRequestManager);
258  virtual DtSimTerrainRequestManager* simTerrainRequestManager();
259  virtual const DtSimTerrainRequestManager* simTerrainRequestManager() const;
261 
263  virtual void setSimObjectManager (DtSimObjectManager* entityManager);
264  virtual const DtSimObjectManager* simObjectManager() const;
265  virtual DtSimObjectManager* simObjectManager();
266 
267  void setPlanAdministrator (DtVrfObjectPlanAdministrator* entityManager);
268  DtVrfObjectPlanAdministrator* planAdministrator() const;
269 
270  void setDiGuyCharacterManager (DtDiGuyCharacterDataManager* entityManager);
271  DtDiGuyCharacterDataManager* diGuyCharacterManager() const;
272 
273  virtual void setVrfNavAreaManager(DtVrfNavAreaManager* navAreaManager);
274  virtual DtVrfNavAreaManager* vrfNavAreaManager();
275  virtual const DtVrfNavAreaManager* vrfNavAreaManager() const;
276 
277  virtual void setSpawnSinkManager(DtSpawnSinkManager* spawnSinkManager);
278  virtual DtSpawnSinkManager* spawnSinkManager();
279  virtual const DtSpawnSinkManager* spawnSinkManager() const;
280 
284  virtual void setEmbeddedEntityInfoManager(DtEmbeddedEntityInfoManager* eeInfManager);
285  virtual DtEmbeddedEntityInfoManager* embeddedEntityInfoManager();
286  virtual const DtEmbeddedEntityInfoManager* embeddedEntityInfoManager() const;
287 
289  virtual void setScriptedTaskManager (DtScriptedTaskManager*);
290  virtual DtScriptedTaskManager* scriptedTaskManager();
291  virtual const DtScriptedTaskManager* scriptedTaskManager() const;
292 
294  virtual void setOrbatManager (DtOrbatManager*);
295  virtual DtOrbatManager* orbatManager();
296  virtual const DtOrbatManager* orbatManager() const;
297 
299  virtual void setSimInternalCommunicationManager(DtSimInternalCommunicationManager*);
300  virtual DtSimInternalCommunicationManager* simInternalCommunicationManager() const;
301 
303  virtual void setObjectListManager(DtManagedObjectListManager*);
304  virtual DtManagedObjectListManager* objectListManager() const;
305 
306  virtual void setObjectModelsManager (DtObjectGeometricModelsManager*);
307  virtual DtObjectGeometricModelsManager* objectModelsManager();
308  virtual const DtObjectGeometricModelsManager* objectModelsManager() const;
309 
311  virtual void setScenarioEventManager (DtScenarioEventManager*);
312  virtual DtScenarioEventManager* scenarioEventManager();
313  virtual const DtScenarioEventManager* scenarioEventManager() const;
314 
316  virtual void setHazardAreaManager (DtHazardAreaManager*);
317  virtual DtHazardAreaManager* hazardAreaManager();
318  virtual const DtHazardAreaManager* hazardAreaManager() const;
319 
321  virtual void setIntelCollectionAreaManager (DtIntelCollectionAreaManager*);
322  virtual DtIntelCollectionAreaManager* intelCollectionAreaManager();
323  virtual const DtIntelCollectionAreaManager* intelCollectionAreaManager() const;
324 
326  virtual void setScriptedObjectsMovementManager (DtScriptedObjectsMovementManager*);
327  virtual DtScriptedObjectsMovementManager* scriptedObjectsMovementManager();
328  virtual const DtScriptedObjectsMovementManager* scriptedObjectsMovementManager() const;
329 
333  virtual void setDetonationManager(DtDetonationServiceInterface* detonationManager);
334  virtual DtDetonationServiceInterface* detonationManager();
335  virtual const DtDetonationServiceInterface* detonationManager() const;
336 
338  virtual void setAmmunitionManager(DtAmmunitionManager* ammunitionManager);
339  virtual DtAmmunitionManager* ammunitionManager();
340 
346  virtual void setFireManager(DtFireManager* fireManager);
347  virtual DtFireManager* fireManager();
348  virtual const DtFireManager* fireManager() const;
349 
353 
354  virtual void setGlobalPlanManager(DtGlobalPlanManager* planManager);
355  virtual const DtGlobalPlanManager* globalPlanManager() const;
356  virtual DtGlobalPlanManager* globalPlanManager();
358 
360 
361  virtual void setStealthCommandsManager(DtStealthCommandsManager* planManager);
362  virtual const DtStealthCommandsManager* stealthCommandsManager() const;
363  virtual DtStealthCommandsManager* stealthCommandsManager();
365 
367 
368  virtual void setHostilityManager(DtHostilityManager* hostilityManager);
369  virtual const DtHostilityManager* hostilityManager() const;
370  virtual DtHostilityManager* hostilityManager();
372 
374 
375  virtual void setEngagementZonesManager(DtEngagementZonesManager* manager);
376  virtual const DtEngagementZonesManager* engagementZonesManager() const;
377  virtual DtEngagementZonesManager* engagementZonesManager();
379 
381 
382  virtual void setScenarioExtrasMgr(DtScenarioExtrasMgr* scenarioExtrasMgr);
383  virtual const DtScenarioExtrasMgr* scenarioExtrasMgr() const;
384  virtual DtScenarioExtrasMgr* scenarioExtrasMgr();
386 
389  void setCommunicationManager(DtCommunicationManager*);
390  DtCommunicationManager* communicationManager() const;
391  makVrfEvents::DtEventManager* eventManager() const;
392 
394  makVrf::DtStateDataManager* stateDataManager() const;
395 
397  virtual bool runFullyThreaded() const;
398 
401  virtual void addEvent(const makVrfEvents::DtEvent&);
402 
404 
406  virtual DtString nextEventId();
407 
410 
411  virtual void setSimCommandDistributor(DtSimCommandDistributor* distributor);
412  virtual const DtSimCommandDistributor* simCommandDistributor() const;
413  virtual DtSimCommandDistributor* simCommandDistributor();
415 
418 
419  virtual void setDebugDrawManager(DtDebugDrawManager* debugDrawManager);
420  virtual const DtDebugDrawManager* debugDrawManager() const;
421  virtual DtDebugDrawManager* debugDrawManager();
423 
425 
426  virtual void setObjectParametersDB(const DtVrfParameterDb*);
427  virtual const DtVrfParameterDb* objectParametersDB() const;
429 
431 
432  virtual void setObjectConsoleManager(DtObjectConsoleManager*);
433  virtual const DtObjectConsoleManager* objectConsoleManager() const;
434  virtual DtObjectConsoleManager* objectConsoleManager();
436 
439  virtual void setScenarioRunId(int);
440  virtual int scenarioRunId() const;
441 
443  virtual void setRejectMismatchedScenarioMessages(bool);
444  virtual bool rejectMismatchedScenarioMessages() const;
445 
448  virtual bool rejectMessage(const DtVrfObjectMessage*) const;
449 
451  virtual DtVrfSimSettingsManager* vrfSimSettingsManager();
452 
455  virtual void addMessageCallback(int type, DtMessageCallbackFcn fcn,
456  void* usrData);
457 
458  virtual void removeMessageCallback(int type, DtMessageCallbackFcn fcn,
459  void* usrData);
460 
466 
467  virtual DtU32 scenarioCapabilities() const;
468  virtual void setScenarioCapabilities(DtU32 v);
470 
474 
475  virtual DtVrfMessageInterface* messageInterface() const;
476  virtual DtInterfaceMessageExecutive* messageExecutive();
477 
479  virtual DtVrfTDLMessageInterface* tdlMessageInterface() const;
480 
483  static void TickFunction(void* userData);
484 
488  virtual void registerInterfaceCallbacks();
489 
492  virtual const DtSimulationAddress& messageAddress() const;
493 
495  static void randSeedCallback(DtSimMessage* msg, void* usr);
496 
498  virtual unsigned long sequenceNumber();
499 
502  virtual void setSequenceNumber(unsigned long sequenceNumber);
503 
505  DtResourceMonitor* resourceMonitor();
506  void setResourceMonitor(DtResourceMonitor*);
507 
509  DtRadarCoverageMonitor* radarCoverageMonitor();
510  void setRadarCoverageMonitor(DtRadarCoverageMonitor*);
511 
513  DtTerrainProfileRequestManager* terrainProfileRequestManager();
514  void setTerrainProfileRequestManager(DtTerrainProfileRequestManager*);
515 
517  virtual int vrfSessionId() const;
518 
520  virtual int vrfMessageVersionSupported() const;
521 
524  virtual void runForDuration(double);
525  virtual double runDurationTime() const;
526 
528  virtual void stopSimulationDurationTimer();
529 
531  static void runDurationCompleteCallback(DtTimer*);
532  virtual void processRunDurationComplete();
533 
535  virtual void addSimulationRunDurationCallback(DtRunDurationCallbackFcn tickFunction, void* userData);
536  virtual void removeSimulationRunDurationCallback(DtRunDurationCallbackFcn tickFunction, void* userData);
537 
540  virtual void setMaxTasks(int);
541 
546  virtual void doNotSelfReflect(unsigned int);
547  virtual void selfReflect(unsigned int);
548 
550  const DtEnumDictionary* enumerationDictionary() const;
551 
553  virtual DtFilename enumerationsFileDirectory() const;
554  virtual void setEnumerationsFileDirectory(const DtFilename& directory);
555 
558 
559  virtual void setSyncMatrixManager(DtSyncMatrixManager* SyncMatrixManager);
560  virtual const DtSyncMatrixManager* syncMatrixManager() const;
561  virtual DtSyncMatrixManager* syncMatrixManager();
563 
564 protected:
565  virtual void setupMessagesToNotSelfReflect();
566 
567 protected:
569  double myDT;
570 
587 
622 
624 
630 
634 
637 
638  tbb::spin_mutex myMutex;
639  double mySimTime;
640  tbb::atomic<int> myNextEventNumber;
641 
642 public:
645  VRF4API_METHOD const DtSimulationServices* exerciseClock() const;
647 };
648 
650 {
651  return myResourceMonitor;
652 }
653 
655 {
656  return myRadarCoverageMonitor;
657 }
658 
660 {
662 }
663 
665 {
666  myResourceMonitor = m;
667 }
668 
670 {
672 }
673 
675 {
677 }
678 
680 {
682 }
683 
685 {
686  return myPlanAdministrator;
687 }
688 
690 {
692 }
693 
695 {
697 }
698 
700 {
701  return myCommunicationManager;
702 }
703 
705 {
707 }
708 
710 {
711  return myObjectParametersDB;
712 }
713 
715 {
717 }
718 
720 {
721  return myObjectConsoleManager;
722 }
723 
725 {
726  return myObjectConsoleManager;
727 }
728 
729 inline void DtSimManager::setOrbatManager (DtOrbatManager* entityManager)
730 {
731  myOrbatManager = entityManager;
732 }
733 
735 {
736  return myOrbatManager;
737 }
738 
740 {
742 }
743 
745 {
746  return myObjectListManager;
747 }
748 
750 {
751  return myOrbatManager;
752 }
753 
755 {
756  myObjectModelsManager = entityManager;
757 }
758 
760 {
761  return myObjectModelsManager;
762 }
763 
765 {
766  return myObjectModelsManager;
767 }
768 
770 {
772 }
773 
775 {
777 }
virtual DtSimInternalCommunicationManager * simInternalCommunicationManager() const
Definition: simManager.h:774
DtObjectConsoleManager * myObjectConsoleManager
Definition: simManager.h:619
DtTerrainProfileRequestManager * terrainProfileRequestManager()
Get/set terrain profile request manager.
Definition: simManager.h:659
Definition: simTerrainRequestManager.h:34
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:595
DtObjectGeometricModelsManager * myObjectModelsManager
Definition: simManager.h:611
The DtAmmunitionManager is a clas that will maintain ammunition (that which is not published...
Definition: ammunitionManager.h:17
DtDiGuyCharacterDataManager * diGuyCharacterManager() const
Definition: simManager.h:694
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:596
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:38
void setTerrainProfileRequestManager(DtTerrainProfileRequestManager *)
Definition: simManager.h:674
DtVrfMessageInterface * myMessageInterface
out message interface
Definition: simManager.h:583
void setResourceMonitor(DtResourceMonitor *)
Definition: simManager.h:664
DtVrfSimSettingsManager * myVrfSimSettingsManager
Definition: simManager.h:580
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:614
DtNoArgumentCallbackList mySimulationDurationCallbackList
Definition: simManager.h:628
DtU32 myScenarioCapabilities
Definition: simManager.h:633
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:23
The manager for SimInternal messages on a single simulation engine. This class manages the passing of...
Definition: simInternalCommunicationManager.h:27
DtEnumDictionary * myEnumDictionary
Definition: simManager.h:635
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:610
DtVrfObjectPlanAdministrator * planAdministrator() const
Definition: simManager.h:684
Definition: radarCoverageMonitor.h:32
DtVrfSimOptionsInterface * mySimOptions
Definition: simManager.h:568
DtVrfCallbackQueue * myParallelQueue
Definition: simManager.h:612
Definition: terrainProfileRequestManager.h:31
DtDetonationServiceInterface * myDetonationManager
Definition: simManager.h:593
double myDT
Definition: simManager.h:569
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:613
DtSimCommandDistributor * mySimCommandDistributor
Definition: simManager.h:615
virtual DtOrbatManager * orbatManager()
Definition: simManager.h:734
This class handles all requests as they pertain to viewing or modifying the ORBAT.
Definition: orbatManager.h:28
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:21
const DtVrfParameterDb * myObjectParametersDB
Definition: simManager.h:618
virtual void setObjectListManager(DtManagedObjectListManager *)
objectListManager() gives a pointer to the manager of object lists
Definition: simManager.h:739
DtEngagementZonesManager * myEngagementZonesManager
Definition: simManager.h:599
DtSimTerrainRequestManager * mySimTerrainRequestManager
Definition: simManager.h:591
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:744
DtFrameRateMonitor * myFrameRateMonitor
Definition: simManager.h:579
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:597
DtScriptedTaskManager * myScriptedTaskManager
Definition: simManager.h:604
This class represents a collection of object consoles that will be used to manage streams for individ...
Definition: objectConsoleManager.h:29
virtual void setObjectConsoleManager(DtObjectConsoleManager *)
The object console manager.
Definition: simManager.h:714
tbb::spin_mutex myMutex
Definition: simManager.h:638
DtOrbatManager * myOrbatManager
Definition: simManager.h:609
DtNoArgumentCallbackList myTickList
The simulation back-end&#39;s clock. Note that this clock is different from the clock associated with the...
Definition: simManager.h:577
double mySimTime
Definition: simManager.h:639
virtual const DtObjectConsoleManager * objectConsoleManager() const
The object console manager.
Definition: simManager.h:719
Manages loading and destruction of the geometric models for objects. Will reference the object parame...
Definition: objectGeometricModelsManager.h:29
DtScenarioExtrasMgr * myScenarioExtrasMgr
Definition: simManager.h:600
DtCommunicationManager * myCommunicationManager
Definition: simManager.h:616
Definition: communicationManager.h:36
The scenario event manager will keep track of all scenario event objects and their state...
Definition: scenarioEventManager.h:33
DtCommModelManager * myCommModelManager
Definition: simManager.h:590
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:620
DtSyncMatrixManager * mySyncMatrixManager
Definition: simManager.h:621
tbb::atomic< int > myNextEventNumber
Definition: simManager.h:640
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:50
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:51
DtNoArgumentCallbackList myPostTickList
Definition: simManager.h:578
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:754
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:607
DtScenarioEventManager * myScenarioEventManager
Definition: simManager.h:605
DtScriptedObjectsMovementManager * myScriptedObjectsMovementManager
Definition: simManager.h:608
DtDetonationPdu DtDetonationInteraction
Definition: DistributedSimulationDriver3A.h:14
DtSimObjectManager * mySimObjectManager
Definition: simManager.h:581
void(* DtSimTickFunction)(void *userData)
Function signature for tick functions registered with the DtSimManager.
Definition: simManager.h:104
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:699
DtPhysicalWorld * myPhysicalWorld
Objects we hold pointers onto for others.
Definition: simManager.h:589
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:769
bool myRejectMismatchedScenarioMessages
Definition: simManager.h:632
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:89
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:709
void setPlanAdministrator(DtVrfObjectPlanAdministrator *entityManager)
Definition: simManager.h:679
DtRadarCoverageMonitor * myRadarCoverageMonitor
Definition: simManager.h:602
Responsible for maintaining and executing stealth commands. The stealth commands are of the format (i...
Definition: stealthCommandsManager.h:35
DtDiGuyCharacterDataManager * myDiGuyCharacterManager
Definition: simManager.h:586
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:223
virtual void setObjectParametersDB(const DtVrfParameterDb *)
The object parameters database.
Definition: simManager.h:704
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:121
virtual DtObjectGeometricModelsManager * objectModelsManager()
Definition: simManager.h:759
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:629
Definition: simInterfaceContent.h:45
DtVrfObjectPlanAdministrator * myPlanAdministrator
Definition: simManager.h:585
DtRadarCoverageMonitor * radarCoverageMonitor()
Get/set radarCoverage monitor.
Definition: simManager.h:654
DtVrfTDLMessageInterface * myTDLMessageInterface
Definition: simManager.h:584
DtHazardAreaManager * myHazardAreaManager
Definition: simManager.h:606
void setRadarCoverageMonitor(DtRadarCoverageMonitor *)
Definition: simManager.h:669
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:631
DtFilename myEnumsFileDirectory
Definition: simManager.h:636
void setDiGuyCharacterManager(DtDiGuyCharacterDataManager *entityManager)
Definition: simManager.h:689
DtSimulationServices * mySimulationServices
Definition: simManager.h:623
#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:601
DtTerrainProfileRequestManager * myTerrainProfileRequestManager
Definition: simManager.h:603
DtResourceMonitor * resourceMonitor()
Get/set resource monitor.
Definition: simManager.h:649
DtAmmunitionManager * myAmmunitionManager
Definition: simManager.h:594
Contains the DtSimCommandDistributor class declaration.
Definition: simCommandDistributor.h:24
DtEmbeddedEntityInfoManager * myEmbeddedEntityInfoManager
Definition: simManager.h:592
#define DT_DLL_vrfcore
This file is used to determine how to build.
Definition: vrfcoreDefines.h:25
void(* DtRunDurationCallbackFcn)(void *userData)
Definition: simManager.h:105
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:729
DtDebugDrawManager * myDebugDrawManager
Definition: simManager.h:617
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:627
DtHostilityManager * myHostilityManager
Definition: simManager.h:598
DtScheduler * myScheduler
Objects we create.
Definition: simManager.h:572
This class holds the state data that represents each simulation object in the system.
Definition: stateDataManager.h:71

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)