17 #include <vlutil/vlFilename.h>
18 #include <vlutil/vlTime.h>
20 #include <vlutil/vlPrint.h>
30 #include <boost/unordered_set.hpp>
72 class DtJoyDeviceManager;
76 class DtCustomReportManager;
97 struct DtOrganizationManagerReadyCallbackInfo;
105 class DtApplicationSettings;
116 namespace makVrfEvents
119 class DtEventManager;
124 class DtStateDataManager;
157 DtCgf(
const DtSimulationAddress& addr,
const DtU32& capabilities = 0xffff);
199 virtual void sendFinalStatus(
bool sendImmediately =
false);
204 virtual bool importScenarioDescriptionFile(
const DtFilename& file,
const DtString& format,
207 const std::map<std::string, std::string>& importData);
212 virtual DtString exportScenarioDescriptionFile(
const DtFilename& file,
const DtString& format,
213 const std::map<std::string, std::string>& exportData);
216 virtual void setAppDataDir(
const DtString&);
217 virtual DtFilename appDataDir()
const;
220 virtual void setSimulationAddress(
const DtSimulationAddress&);
223 virtual void setUserDataDir(
const DtString&);
224 virtual DtFilename userDataDir()
const;
227 virtual void setDataDir(
const DtString&);
228 virtual DtFilename
dataDir()
const;
233 virtual DtFilename sharedDataDir()
const;
234 virtual void setSharedDataDir(
const DtFilename& path);
236 virtual DtFilename sharedDataRoot()
const;
237 virtual void setSharedDataRoot(
const DtFilename& path);
239 virtual DtString sharedDataStem()
const;
240 virtual void setSharedDataStem(
const DtString& path);
243 virtual void setAppIdRangeMax(
int);
244 int appIdRangeMax()
const;
249 virtual bool loadScenario(
const DtFilename& name,
int scenarioRunId = 0,
250 bool isOrbatEnabled =
false,
bool createGlobalEnv =
false,
251 bool createGlobalDynamicTerrain =
false);
259 virtual bool loadScenario(
const DtScenario& scenario,
int scenarioRunId = 0,
260 bool isOrbatEnabled =
false,
bool createGlobalEnv =
false,
261 bool createGlobalDynamicTerrain =
false);
264 virtual void clearSimulationObjects();
268 virtual bool importScenario(
const DtScenario&);
270 const DtString& deconflictingName =
"");
278 virtual bool newScenario(
const DtFilename& dbname =
279 DtFilename::nullFilename(),
const DtFilename& simulationModelSet =
280 DtFilename::nullFilename(),
bool createGlobalEnv =
false,
281 bool createGlobalDynamicTerrain =
false);
287 virtual void sendScenarioStatusMessage();
292 virtual bool saveScenario(
const DtFilename& savename,
bool saveAsSip =
false);
300 virtual bool takeAndStoreSnapshot(
bool makeBase);
310 virtual void rollbackToSimTime(
double simTime);
315 virtual bool saveSimulationObjectGroup(DtFilename saveFolder,
const DtString& groupName,
316 int flags, std::set<DtUUID>& uuidsSaved,
bool& savAsZipFile);
323 virtual bool createSimulationObjectGroup(
const DtString& group,
int flags,
int force,
const DtVector& geocentricLocation,
324 double offsetRotation,
bool storedInZipFile =
false);
330 virtual void closeScenario(
const DtFilename& terrainToOpen =
"",
bool forceCloseAll =
false);
336 virtual bool loadAdditionalObjectParameters(
const DtFilename& paramsFileName,
345 virtual void pause();
348 virtual std::string protocol()
const;
355 virtual void rewind(
int scenarioRunId = 0);
358 virtual void setRejectMismatchedScenarioMessages(
bool);
359 virtual bool rejectMismatchedScenarioMessages()
const;
366 virtual void setForceParameterDbReload(
bool reload);
367 virtual bool forceParameterDbReload()
const;
374 virtual void setEnableResourceMonitor(
bool b);
375 virtual bool isResourceMonitorEnabled()
const;
384 virtual bool canSleep()
const;
392 virtual void setSmsValidationEnabled(
bool b);
406 virtual const DtFilename& defaultTerrainDirectory();
407 virtual void setDefaultTerrainDirectory(
const DtFilename& directory);
410 virtual bool logFrameRateStatistics()
const;
411 virtual void setLogFrameRateStatistics(
bool yesOrNo);
421 virtual const DtFilename& defaultSimulationModelSetFilename();
422 virtual void setDefaultSimulationModelSetFilename(
const DtFilename&
filename);
429 virtual const DtFilename& diGuyAnimationsFilename();
430 virtual void setDIGuyAnimationsFilename(
const DtFilename&
filename);
435 void setClockMode(
int clockMode);
440 virtual void setMsdlSidcMappingFile(
const DtFilename&);
441 virtual const DtFilename& msdlSidcMappingFile()
const;
446 virtual void setCountryCodesMappingFile(
const DtFilename&);
447 virtual const DtFilename& countryCodesMappingFile()
const;
458 virtual void deleteObject(
const DtUUID& name,
bool andRemoveFromOrbat =
true)
const;
474 const DtString& uniqueName = DtString::nullString())
const;
489 const DtString& uniqueName = DtString::nullString())
const;
505 const DtString& uniqueName = DtString::nullString())
const;
519 const DtList& vertices,
520 const DtString& uniqueName = DtString::nullString())
const;
534 const DtList& vertices,
535 const DtString& uniqueName = DtString::nullString())
const;
565 const DtEntityType& entityType,
569 const DtString& entityName = DtString::nullString(),
570 bool allowBlocking =
true,
571 std::list<DtAdminContent*>* initialAdminContent = 0,
572 bool addToOrbat =
true)
const;
605 const DtEntityType& aggregateType,
609 const std::vector<DtUUID>& subordinates = std::vector<DtUUID>(),
610 const DtString& aggregateName = DtString::nullString(),
611 bool addToOrbat =
true)
const;
625 const DtEntityType& aggregateType,
629 bool createSubordinates,
630 const DtString& aggregateName = DtString::nullString(),
631 bool allowBlocking =
true,
632 bool addToOrbat =
true)
const;
692 virtual void assignPlanByUUID(
const DtUUID&,
const DtPlan& plan,
bool sendPlan =
false);
715 DtFilename
filename = DtFilename::nullFilename());
718 virtual void stopLoggingObjectConsoleToFile(
DtLocalObject*
object);
723 virtual void setObjectConsoleNotificationLevel(
DtLocalObject*
object,
724 DtNotifyLevelType
level);
733 virtual bool reuseEntityIdentifiersOnScenarioLoad()
const;
734 virtual void setReuseEntityIdentifiersOnScenarioLoad(
bool);
740 virtual bool loadAllNavigationDataOnTerrainLoad()
const;
741 virtual void setLoadAllNavigationDataOnTerrainLoad(
bool);
753 virtual void setUseDrawControlForTaskVisualizations(
bool);
754 virtual bool useDrawControlForTaskVisualizations()
const;
892 virtual const DtSimulationAddress& simulationAddress()
const;
899 virtual int sessionId()
const;
907 virtual DtU32 scenarioCapabilities()
const;
908 virtual void setScenarioCapabilities(DtU32 v);
909 virtual void setScenarioCapability(DtU32 v,
bool);
913 virtual void setTimeMultiplier(
double);
918 virtual DtString applicationType()
const;
919 virtual void setApplicationType(
const DtString& type);
929 virtual void useMapDatum(
const DtMapDatum& mapDatum);
932 virtual void setParameterDbLoaded(
bool flag);
939 virtual void setDefaultParameterDbDirectory(
const DtFilename&
filename);
942 virtual DtFilename objectGroupsRoot()
const;
948 virtual bool reinitializeScenario();
950 virtual void setFullyLoadTerrain(
bool yesOrNo);
951 virtual bool fullyLoadTerrain()
const;
957 virtual void setAssertOnBlockingTerrainCalls(
bool b);
958 virtual bool assertOnBlockingTerrainCalls()
const;
965 virtual void setMetocEnable(
bool b);
966 virtual bool metocEnable()
const;
975 virtual void addPluginToLoad(
const DtString&);
979 virtual void setLoadPluginsIfVersionMismatch(
bool);
980 virtual bool loadPluginsIfVersionMismatch()
const;
983 virtual bool createAndInitPluginManager(
DtVrfCreator* creator);
987 virtual void initializePluginCommandLineArguments(DtApplicationSettings& appInitializer);
999 virtual void addPreLoadTerrainCallback(
1001 virtual void removePreLoadTerrainCallback(
1009 virtual void addPostLoadTerrainCallback(
1011 virtual void removePostLoadTerrainCallback(
1017 virtual void runForDuration(
double);
1020 virtual void stopSimulationDurationTimer();
1023 static void runDurationCompleteCallback(
void*);
1024 virtual void processRunDurationComplete();
1027 virtual void setPublishingGlobalEnvironment(
bool);
1033 virtual void addPreLoadScenarioCallback(
1035 virtual void removePreLoadScenarioCallback(
1041 virtual void addPreScenarioReinitializeCallback(
1043 virtual void removePreScenarioReinitializeCallback(
1050 virtual void addPostScenarioReinitializeCallback(
1052 virtual void removePostScenarioReinitializeCallback(
1058 virtual void addPreCreateSimulationObjectGroupCallback(
1060 virtual void removePreCreateSimulationObjectGroupCallback(
1068 virtual void addPostLoadScenarioCallback(
1070 virtual void removePostLoadScenarioCallback(
1076 virtual void addPostCreateSimulationObjectGroupCallback(
1078 virtual void removePostCreateSimulationObjectGroupCallback(
1084 virtual void addPreImportScenarioCallback(
1086 virtual void removePreImportScenarioCallback(
1092 virtual void addPostImportScenarioCallback(
1094 virtual void removePostImportScenarioCallback(
1101 virtual void addPreSaveScenarioCallback(
1103 virtual void removePreSaveScenarioCallback(
1110 virtual void addPostSaveScenarioCallback(
1112 virtual void removePostSaveScenarioCallback(
1119 virtual void addPreCloseScenarioCallback(
1121 virtual void removePreCloseScenarioCallback(
1128 virtual void addCgfAboutToBeDestroyedCallback(
1130 virtual void removeCgfAboutToBeDestroyedCallback(
1137 virtual void addPostCloseScenarioCallback(
1139 virtual void removePostCloseScenarioCallback(
1145 virtual void addPreSaveSimulationObjectGroupsCallback(
1147 virtual void removePreSaveSimulationObjectGroupsCallback(
1153 virtual void addPostSaveSimulationObjectGroupsCallback(
1155 virtual void removePostSaveSimulationObjectGroupsCallback(
1162 virtual void addScenarioPauseCallback(
1164 virtual void removeScenarioPauseCallback(
1171 virtual void addScenarioRunCallback(
1173 virtual void removeScenarioRunCallback(
1182 virtual void addPreScenarioRewindCallback(
1184 virtual void removePreScenarioRewindCallback(
1191 virtual void addPostScenarioRewindCallback(
1193 virtual void removePostScenarioRewindCallback(
1200 virtual void addPostTickCallback(
1202 virtual void removePostTickCallback(
1208 virtual void setTimeToQuit(
bool);
1209 virtual bool timeToQuit()
const;
1223 virtual void setFrameRateMode(
const DtString&
mode, DtReal deltaTime = -1);
1228 virtual bool executeSimCommand(
const DtSimCommand& simCommand);
1232 virtual void unloadTerrain();
1235 virtual bool isOrbatEnabled()
const;
1238 virtual double timeScale()
const;
1240 virtual void setRunInTimeManagementMode(
bool);
1250 static void objectParametersOpCallback(
DtSimMessage* msg,
void* usr);
1254 static void scenarioDescriptionCallback(
DtSimMessage*,
void* usr);
1255 virtual void processScenarioDescription(
DtSimMessage*);
1258 static void setScenarioFilenameCallback(
DtSimMessage*,
void* usr);
1259 virtual void processSetScenarioFilename(
DtSimMessage*);
1262 static void setRunDurationCallback(
DtSimMessage*,
void* usr);
1266 static void actionCategoriesRequestCallback(
DtSimMessage* msg,
void* usr);
1267 virtual void processActionCategoriesRequest(
DtSimMessage* msg);
1270 static void scenarioStatusRequestCallback(
DtSimMessage* msg,
void* usr);
1271 virtual void processScenarioStatusRequest(
DtSimMessage* msg);
1276 virtual bool advanceFrame();
1290 virtual void loadAllPlugins();
1293 virtual bool loadComponentAttachmentTable(
const DtFilename&
filename);
1299 virtual bool loadTerrain(
const DtFilename&
filename);
1304 virtual DtFilename findTerrainFile(
const DtFilename& startFile,
const std::vector<DtFilename>& searchPaths,
1305 const std::string& extension)
const;
1312 virtual bool writeOrderOfBattle(
const DtScenario& scenario)
const;
1316 virtual bool loadScenarioScripts(
const DtFilename&
filename);
1317 virtual bool loadScenarioScriptsFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1318 virtual bool loadScenarioScripts(
const std::string& buffer);
1321 virtual bool loadOrbat(
const DtFilename&
filename,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1322 virtual bool loadOrbatFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1323 virtual bool loadOrbat(
const std::string& buffer,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1327 virtual void prepareForScenarioReinitialize();
1330 virtual bool isScenarioReinitializing()
const;
1335 virtual bool loadParameterDb(
const DtFilename&
filename,
1340 virtual bool loadObjectParametersDBFile(
const DtFilename& opdFile,
1346 virtual bool loadPhysicalWorldFile(
const DtFilename& file,
bool force =
false);
1351 virtual bool loadDetonationParametersFile(
const DtFilename& file,
bool force =
false);
1353 virtual bool loadTerrainDeformationParametersFile(
const DtFilename& file,
bool force =
false);
1358 virtual bool loadAmmunitionParametersFile(
const DtFilename& file,
bool force =
false);
1361 virtual bool loadPlans(
const DtFilename&
filename);
1362 virtual bool loadPlansFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1363 virtual bool loadPlans(
const std::string& buffer);
1366 virtual bool loadGlobalPlans(
const DtFilename&
filename);
1367 virtual bool loadGlobalPlansFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1371 virtual void loadHostilityAndExtrasFromZipFile(
const DtFilename& scenarioZipFile,
const DtScenarioExplorer& se);
1372 virtual void loadHostilityAndExtras(
const std::string& buffer);
1384 virtual void loadActionCategories(
const DtFilename& f);
1386 virtual bool loadForceHostility(
const DtFilename&
filename,
bool clear =
true);
1387 virtual bool loadForceHostilityFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename,
bool clear =
true);
1389 virtual bool loadScenarioExtras(
const DtFilename&
filename);
1390 virtual bool loadScenarioExtrasFromZipFile(
const DtFilename&,
const DtFilename&
filename);
1391 virtual bool loadScenarioExtras(
const std::string& buffer);
1395 virtual void processObjectParametersOp(
DtSimMessage * msg);
1398 virtual void createAndInitScenarioLoadManager();
1402 virtual void emptyParametersDB();
1405 virtual void setAutoReorganization(
bool onOff);
1419 virtual void updateReadyStatus();
1424 static void simCommandCallback(
DtSimMessage* msg,
void* usr);
1432 static void deferredLoadScenarioCallback(
void * data);
1433 virtual void processDeferredLoadScenario();
1442 static void deferredReinitializeScenarioCallback(
void * data);
1443 virtual void processDeferredReinitializeScenario();
1451 static void deferredRollbackCallback(
void * data);
1463 static void deferredImportScenarioCallback(
void * data);
1464 virtual void processDeferredImportScenario();
1471 static void deferredRewindCallback(
void * data);
1472 virtual void processDeferredRewind();
1477 virtual void clearAllSimulationModelSetInformation();
1480 virtual void initializeCgfConsoleCommands();
1486 virtual bool createDIGuyCharacterManager(
const DtFilename & diGuyAnimationsFile);
1673 bool ownVrfCreator()
const;
1674 void setOwnVrfCreator(
bool yesOrNo);
1678 virtual bool differingModelSets(
DtScenario*)
const;
1682 virtual void clearObjectsAwaitingDiscovery();
1683 virtual void processObjectsAwaitingDiscovery();
1685 virtual void terrainPaging(
bool);
1686 virtual void jobQueueStatusChanged(
bool);
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtObjectConsoleManager * myObjectConsoleManager
Definition: cgf.h:1554
bool myIsLoaded
Definition: cgf.h:1766
DtObjectGeometricModelsManager * myObjectModelsManager
Definition: cgf.h:1557
DtCommunicationManager * myCommunicationManager
The current exercise connection.
Definition: cgf.h:1523
DtSimManager * mySimManager
Pointer to the DtSimManager.
Definition: cgf.h:1526
bool myCreateGlobalEnvironment
Definition: cgf.h:1711
bool myPublishingGlobalEnvironment
Definition: cgf.h:1736
DtIfScenarioStatus * myScenarioStatus
Scenario status message to be sent out upon request.
Definition: cgf.h:1734
class DtLocalObjectManager:
Definition: localObjectManager.h:151
DtCommunicationManager * communicationManager()
Definition: cgf.h:381
Definition: simTerrainRequestManager.h:132
This class will be responsible for handling requests to return resources for a particular entity (or ...
Definition: resourceMonitor.h:54
DtAmmunitionManager * myAmmunitionManager
Definition: cgf.h:1547
DtGlobalPlanManager * myGlobalPlanManager
Definition: cgf.h:1586
bool myUseDrawControlForTaskVisualizations
Definition: cgf.h:1743
The DtAmmunitionManager is a clas that will maintain ammunition (that which is not published...
Definition: ammunitionManager.h:17
DtScriptedTaskManager * myScriptedTaskManager
Definition: cgf.h:1548
Instances of DtTimer are used to maintain the information needed to represent some kind of scheduled ...
Definition: timer.h:38
DtAdsbDataManager * myAdsbDataManager
Definition: cgf.h:1563
DtStealthCommandsManager * myStealthCommandsManager
Stealth commands manager.
Definition: cgf.h:1597
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:40
DtNoArgumentCallbackList myScenarioPauseCallbacks
Definition: cgf.h:1655
DtCallbackList< DtScenario & > myPreLoadScenarioCallbacks
Definition: cgf.h:1638
DtCreateObjectServiceInterface * myCreateObjectService
Pointer to the create object service.
Definition: cgf.h:1529
DtAisDataManager * myAisDataManager
Definition: cgf.h:1561
Structure holds a complete single-backend snapshot state in memory.
Definition: snapshotManager.h:31
Definition: scenario.h:52
Service interface for creating and removing simulation objects as well as adjusting organization hier...
Definition: createObjectServiceInterface.h:36
DtCallbackList< DtScenario & > myPreCreateSimulationObjectGroupCallbacks
Definition: cgf.h:1642
bool myOK
Flag indicating whether we have been successfully initialized.
Definition: cgf.h:1498
DtNoArgumentCallbackList myPreCloseScenarioCallbacks
Definition: cgf.h:1652
DtSimCommandDistributor * mySimCommandDistributor
Definition: cgf.h:1599
DtPhysicalWorld * myPhysicalWorld
The current physical world.
Definition: cgf.h:1512
DtFilename myDefaultSimulationModelSetFilename
Default simulation model set file to load.
Definition: cgf.h:1613
const DtIfScenarioStatus * scenarioStatus() const
Imports the specified scenario description file into the current scenario.
Definition: cgf.h:285
bool myFullyLoadTerrain
Flag indicating whether to fully load terrain subpages for paged terrain.
Definition: cgf.h:1695
void(* DtCallbackFunctionType)(void *)
The function signature of the callback function.
Definition: noArgumentCallbackList.h:155
std::pair< std::string, bool > ActionCategory
Map of ID and screen string for action categories. Only used by the front-end Not currently set up fo...
Definition: cgf.h:1729
DtCallbackList< DtScenario & > myPreScenarioReinitializeCallbacks
Definition: cgf.h:1640
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
DtScenarioExtrasMgr * myScenarioExtrasManager
Definition: cgf.h:1591
class DtScenarioExplorer:
Definition: scenarioExplorer.h:26
bool mySmsValidationEnabled
Definition: cgf.h:1750
DtCallbackList< const DtScenario & > myPostCreateSimulationObjectGroupCallbacks
Definition: cgf.h:1643
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
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
class DtIfSaveScenario:
Definition: ifSaveScenario.h:23
DtScenario * myScenario
The current scenario.
Definition: cgf.h:1535
The manager for SimInternal messages on a single simulation engine. This class manages the passing of...
Definition: simInternalCommunicationManager.h:28
The DtEngagementZonesManager will keep track of all the engagement zones and their state...
Definition: engagementZonesManager.h:20
std::vector< DtFilename > myObjectGroupsRoot
Definition: cgf.h:1754
Definition: radarCoverageMonitor.h:32
DtFilename myVrfTerrainPathDirectory
Terrain data directory from environment variable VRF_TERRAIN_PATH. If specified, this is the 3rd plac...
Definition: cgf.h:1605
bool myTimeToQuit
Flag indicating whether or not the app should quit.
Definition: cgf.h:1501
Definition: terrainProfileRequestManager.h:31
DtNoArgumentCallbackList myPostCloseScenarioCallbacks
Definition: cgf.h:1653
DtNoArgumentCallbackList myPostTickCallbacks
Definition: cgf.h:1658
The DtAdsbDataManager loads and manages Automatic Dependent Surveillance - Broadcast (ADS-B) data...
Definition: adsbDataManager.h:40
DtResourceMonitor * myResourceMonitor
Pointer to the DtResourceMonitor.
Definition: cgf.h:1569
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
bool myCreateGlobalDynamicTerrain
Definition: cgf.h:1712
bool myCanSimulate
Definition: cgf.h:1765
DtVrfNavAreaManager * myVrfNavAreaManager
Definition: cgf.h:1514
Service interface for checking and altering scenario wide properties.
Definition: scenarioServiceInterface.h:29
Definition: luaObjectSerializer.h:24
std::vector< DtLoadOrderOfBattleHandler * > SimulationObjectGroupsToBeCreated
Definition: cgf.h:1780
bool myHasModelSetInformationLoadedAfterClose
Definition: cgf.h:1767
DtInMemorySnapshotPtr myQueuedRollback
Definition: cgf.h:1775
int myAppIdRangeMax
Definition: cgf.h:1771
Definition: influenceEventDispatcher.h:25
The DtFireManager class exists to centralize the process of sending and receiving of fire interaction...
Definition: fireManager.h:42
DtCommModelManager * myCommModelManager
Definition: cgf.h:1518
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
bool myCreatedGlobalDynamicTerrain
Definition: cgf.h:1714
Definition: ifScenarioStatus.h:28
DtVrfSimOptionsInterface * mySimOptions
Definition: cgf.h:1489
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
bool myLoadAllNavigationDataOnTerrainLoad
Definition: cgf.h:1747
This class represents a collection of object consoles that will be used to manage streams for individ...
Definition: objectConsoleManager.h:31
Definition: scenarioLoadManager.h:80
bool myReuseEntityIdentifiersOnScenarioLoad
Definition: cgf.h:1745
DtVrfStatusPublisher * myStatusPublisher
Pointer to the DtStatusPublisher.
Definition: cgf.h:1538
DtTaskVisualizationPublicationMode myTaskVisualizationPublicationMode
Definition: cgf.h:1742
DtFilename myDIGuyAnimationsFilename
DI_Guy animation configuration file to load.
Definition: cgf.h:1616
bool myRejectMismatchedScenarioMessages
Definition: cgf.h:1769
VRF4API_METHOD DtCommunicationManager * exerciseConn()
These are backwards compatible methods that can be used if you define ALLOW_VRF4API in your header fi...
Definition: cgf.h:1787
DtVrfParameterDb * myParameterDatabase
Pointer to the DtVrfParameterDb.
Definition: cgf.h:1578
DtLocalObjectManager * myObjectManager
Pointer to the DtLocalObjectManager.
Definition: cgf.h:1541
DtCallbackList< DtScenario & > myPreSaveScenarioCallbacks
Definition: cgf.h:1646
Manages loading and destruction of the geometric models for objects. Will reference the object parame...
Definition: objectGeometricModelsManager.h:30
DtCallbackList< const DtFilename & > myPreLoadTerrainCallbacks
Definition: cgf.h:1636
std::vector< std::string * > OOB
Definition: snapshotManager.h:44
std::map< DtString, SimulationObjectGroupInformation > StoredSimulationObjectGroupInformation
Definition: cgf.h:1762
The scenario event manager will keep track of all scenario event objects and their state...
Definition: scenarioEventManager.h:36
DtSetDataRequest is an abstract base class from which real setDataRequests can derive. It manages the read/write capability; derived classes need only use and register read/writatble data types for derived information.
Definition: setDataRequest.h:41
DtEmbeddedEntityInfoManager * myEmbeddedEntityInfoManager
Pointer to the DtEmbeddedEntityInfoManager.
Definition: cgf.h:1581
DtImportExportScenarioDescriptionManager * myImportScenarioDescriptionManager
The scenario description manager used to import scenario description files.
Definition: cgf.h:1723
bool myCreatedGlobalEnvironment
Definition: cgf.h:1713
The DtPhysicalWorld is the primary interface to and manager of all of the "physical" aspects of the s...
Definition: physicalWorld.h:102
DtDetonationManager * myDetonationManager
Definition: cgf.h:1546
The plugin manager will load external loadable objects in order to provide additional functionality t...
Definition: vrfPluginManager.h:33
DtFilename myCountryCodesMappingFile
Country codes mapping file.
Definition: cgf.h:1622
DtFilename myDefaultParameterDbDirectory
Default parameter database directory to search in when parameter database being specified is not an a...
Definition: cgf.h:1634
DtEmbeddedEntityInfoManager is the central point for information about embedded entities and their ca...
Definition: embeddedEntityInfoManager.h:36
DtScenarioEventManager * myScenarioEventManager
Definition: cgf.h:1549
DtScenarioServiceInterface * myScenarioService
Pointer to the scenario object service.
Definition: cgf.h:1532
DtTerrainProfileRequestManager * myTerrainProfileRequestManager
Pointer to the DtTerrainProfileRequestManager.
Definition: cgf.h:1575
The DtVrfNavAreaManager manages all of the nav areas currently created in the sim.
Definition: vrfNavAreaManager.h:52
std::shared_ptr< DtInMemorySnapshot > DtInMemorySnapshotPtr
Definition: snapshotManager.h:53
VRF4API_METHOD DtLocalObjectManager * vrfObjectManager()
These are backwards compatible methods that can be used if you define ALLOW_VRF4API in your header fi...
Definition: cgf.h:1786
Definition: importExportScenarioDescriptionManager.h:32
Definition: paperMapDatabase.h:20
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:51
DtCallbackList< const DtFilename & > myPostLoadTerrainCallbacks
Definition: cgf.h:1637
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
StoredSimulationObjectGroupInformation myStoredSimulationObjectGroupInformation
Definition: cgf.h:1763
DtNoArgumentCallbackList myScenarioRunCallbacks
Definition: cgf.h:1654
This class works just as DtCalllbackTable, but manages callbacks that have no arguments, and therefore don't fit in the template defined by DtCallbackList.
Definition: noArgumentCallbackList.h:151
DtVrfPluginManager * myPluginManager
The current plugin manager.
Definition: cgf.h:1504
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
int myQueuedRollbackScenarioRunId
Definition: cgf.h:1776
bool myCreatedCharacterManager
Definition: cgf.h:1564
SimulationObjectGroupsToBeCreated mySimulationObjectGroupsToBeCreated
Definition: cgf.h:1781
Definition: compressedFileTransporter.h:24
This is a two way structure. It will contain read data (import) and output dat objects created...
Definition: loadScenarioData.h:39
bool myWasPaused
Used to hold the paused state during a rewindScenario operation. The act of rewinding a scenario star...
Definition: cgf.h:1720
Definition: noArgumentCallbackList.h:90
DtIntelCollectionAreaManager * myIntelCollectionAreaManager
Definition: cgf.h:1551
bool myAssertOnBlockingTerrainCalls
If true, blocking terrain calls will cause an assert when a debug back-end is in run mode...
Definition: cgf.h:1700
DtCallbackList< DtScenario & > myPreSaveSimulationObjectGroupsCallbacks
Definition: cgf.h:1649
DtSyncMatrixManager * mySyncMatrixManager
Definition: cgf.h:1661
Instances of DtVrfStatusPublisher are used to send information about a VR-Forces simulation engine to...
Definition: vrfStatusPublisher.h:30
DtCallbackList< const DtScenario & > myPostSaveSimulationObjectGroupsCallbacks
Definition: cgf.h:1650
DtSimulationModelSet * myDefaultModelSet
Default simulation model set. This is created when the default simulation model set filename is set o...
Definition: cgf.h:1704
DtRwActivities myActivities
Definition: cgf.h:1749
Definition: vrfPluginManager.h:73
DtScenarioLoadManager * myScenarioLoadManager
Definition: cgf.h:1778
DtRadarCoverageMonitor * myRadarCoverageMonitor
Pointer to the DtRadarCoverageMonitor.
Definition: cgf.h:1572
A utility class for use with DtConsoleCommandManager. This class takes ownership of an arbitrary numb...
Definition: consoleCommandManager.h:168
Instances of DtFactoryManager are responsible for maintaining all the factories.
Definition: factoryManager.h:74
DtTerrainInterface allows access to common terrain calls without having to know the terrain implement...
Definition: terrainInterface.h:100
DtFactoryManager * myFactoryManager
Pointer to the DtFactoryManager.
Definition: cgf.h:1594
ActionCategories myActionCategories
Definition: cgf.h:1731
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
DtScenario myScenarioToLoad
Used to contain the scenario we want to during loadScenario operation. The act of loading a scenario ...
Definition: cgf.h:1709
DtHazardAreaManager * myHazardAreaManager
Definition: cgf.h:1550
std::vector< DtString > myPluginsToLoad
Definition: cgf.h:1505
DtCallbackList< const DtScenario & > myPostSaveScenarioCallbacks
Definition: cgf.h:1647
bool myReinitializingScenario
Definition: cgf.h:1738
Definition: asyncJobServer.h:39
The DtSimOperationsInProgressManager can be used to keep track (by count) of sim services in operatio...
Definition: simOperationsInProgressManager.h:17
Instances of DtVrfCreator are responsible for creating all of the objects needed to create and manage...
Definition: vrfCreator.h:284
DtSimObjectManager * mySimObjectManager
Definition: cgf.h:1752
DtSimInternalCommunicationManager * mySimInternalCommunicationManager
Definition: cgf.h:1559
class DtPlan:
Definition: plan.h:92
DtInfluenceEventDispatcher * myInfluenceEventDispatcher
Definition: cgf.h:1662
DtOrbatManager * myOrbatManager
Definition: cgf.h:1556
DtNoArgumentCallbackList myCgfAboutToBeDestroyedCallbacks
Definition: cgf.h:1659
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
DtCallbackList< DtScenario & > myPreImportScenarioCallbacks
Definition: cgf.h:1644
Contains the DtTranslatableStream class declaration.
std::set< DtFilename > myLoadedModelSets
Definition: cgf.h:1773
The DtNetworkInterfaceManager manages all network interfaces utilized by the sim engine. Often there is only one, but it is possible for there to be multiple. Each network interface is an instance of a subclass of DtNetworkManagerInterface. As state data is created or removed, the DtNetworkInterfaceManager will notify each of its network interfaces, so that they may create object network interfaces to output required state data to the network.
Definition: networkInterfaceManager.h:45
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:95
DtNoArgumentCallbackList myPostScenarioRewindCallbacks
Definition: cgf.h:1657
bool myAboutToLoadOrRewindScenario
Definition: cgf.h:1737
This class is the central access point for all current-frame state of all objects in the simulation i...
Definition: simObjectManager.h:42
bool myForceParameterDbReload
Forces loadScenario to re-load the parameter database.
Definition: cgf.h:1584
DtAdminContent.
Definition: adminContent.h:23
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
DtSnapshotManager * mySnapshotManager
Definition: cgf.h:1751
DtEngagementZonesManager * myEngagementZonesManager
Definition: cgf.h:1589
Responsible for maintaining and executing stealth commands. The stealth commands are of the format (i...
Definition: stealthCommandsManager.h:35
virtual bool aboutToLoadOrRewindScenario() const
Whether or not this cgf is about to rewind, rollback or load.
Definition: cgf.h:387
DtCallbackList< const DtScenario & > myPostImportScenarioCallbacks
Definition: cgf.h:1645
bool myMetocEnabled
Definition: cgf.h:1740
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
DtVrfObjectPlanAdministrator * myPlanAdministrator
Definition: cgf.h:1558
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
DtSimTerrainRequestManager * mySimTerrainRequestManager
Definition: cgf.h:1520
DtCallbackList< const DtScenario & > myPostLoadScenarioCallbacks
Definition: cgf.h:1639
int myReloadDelay
Definition: cgf.h:1768
DtVrfCreator * myVrfCreator
Definition: cgf.h:1692
DtDiGuyCharacterDataManager * myCharacterMgr
Definition: cgf.h:1560
DtNoArgumentCallbackList myPreScenarioRewindCallbacks
Definition: cgf.h:1656
virtual bool canSimulate() const
Whether or not the cgf is ready to simulate.
Definition: cgf.h:379
DtFilename myCurrentParameterDatabaseFilename
Filename of currently loaded parameter database.
Definition: cgf.h:1629
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:124
Definition: snapshotManager.h:57
DtManagedObjectListManager * myFilteredObjectListManager
Definition: cgf.h:1555
Service which provides managed lists of simulation objects that are filtered based on a given predica...
Definition: managedObjectListManager.h:22
DtU32 myScenarioCapabilities
Definition: cgf.h:1770
bool myOwnVrfCreatorFlag
These are essentially cached from the init call. This is necessary as the load terrain.
Definition: cgf.h:1691
DtIfScenarioStatus * scenarioStatus()
Returns the scenario status object.
Definition: cgf.h:284
bool myParameterDbLoaded
Set to true if parameter database has been loaded via loadParameterDatabase call. If you load a param...
Definition: cgf.h:1626
DtHostilityManager * myHostilityManager
Definition: cgf.h:1588
The global plan manager maintains the list of "Global Plans." These are plans that are not specific t...
Definition: globalPlanManager.h:45
DtSpawnSinkManager * mySpawnSinkManager
Definition: cgf.h:1516
The top level class of a VR-Forces Simulation Engine, representing a Computer Generated Forces instan...
Definition: cgf.h:147
const int DtDefaultScenarioImportFlags
Default is not not import duplicate UUIDs. This will allow multiple scenarios that have the same base...
Definition: scenario.h:624
DtLuaObjectSerializer * myLuaObjectSerializer
Definition: cgf.h:1566
DtConsoleCommandOwner * myConsoleCommands
Definition: cgf.h:1725
The DtAisDataManager loads and manages Automatic Identification System (AIS) data, which is used to track and monitor real world ships. This data can be used to create and simulate clutter entities in a simulation.
Definition: aisDataManager.h:33
DtFireManager * myFireManager
Definition: cgf.h:1553
#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
A DtRwActivities list will contain a list of activities (key/value pair) by entity type that will sup...
Definition: rwActivities.h:20
#define DT_DLL_vrfcgf
This file is used to determine how to build.
Definition: vrfcgfDefines.h:25
DtScriptedObjectsMovementManager * myScriptedObjectsMovementManager
Definition: cgf.h:1552
DtDebugDrawManager * myDebugDrawManager
Pointer to the DtDebugDrawManagert.
Definition: cgf.h:1544
DtCallbackList< const DtScenario & > myPostScenarioReinitializeCallbacks
Definition: cgf.h:1641
The DtDetonationManager class exists to centralize the processing of detonation interactions. Components register with the detonation manager, providing a pointer to a DtSimObject as well as the objects global designator, and a damage adjudication function to call when the detonation affects the registered sim object. The detonation manager determines the entity or entities the detonation affects, and notifies them and only them through the supplied callback functions.
Definition: detonationManager.h:50
DtTerrainInterface * myTerrainInterface
The current terrain database.
Definition: cgf.h:1509
DtU32 mySessionId
Session Id.
Definition: cgf.h:1495
Contains the DtSimCommandDistributor class declaration.
Definition: simCommandDistributor.h:24
DtFilename myDefaultTerrainDirectory
Terrain database directory, initialized from VRF_defaultTerrainDatabasePath variable. This is the second place to look for a terrain database specified in a scenario file, if we can't locate it relative to the application path.
Definition: cgf.h:1610
bool myLoadPluginsIfVersionMismatch
Definition: cgf.h:1506
DtSimulationAddress mySimulationAddress
Address for routing interface messages.
Definition: cgf.h:1492
The scripted objects movement manager contains a list of all scripted movement objects that can be us...
Definition: scriptedObjectsMovementManager.h:22
std::map< std::string, ActionCategory > ActionCategories
Definition: cgf.h:1730
The DtLoadOrderOfBattleHandler will load an order of battle file (oob) and create all the local objec...
Definition: loadOrderOfBattleHandler.h:26
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
DtFilename myMsdlSidcMappingFile
MSDL SDIC mapping file to load.
Definition: cgf.h:1619
DtTaskVisualizationPublicationMode
Defines how task visualizations will be published.
Definition: scenarioServiceInterface.h:21