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);
270 virtual void clearSimulationObjects();
274 virtual bool importScenario(
const DtScenario&);
276 const DtString& deconflictingName =
"");
284 virtual bool newScenario(
const DtFilename& dbname =
285 DtFilename::nullFilename(),
const DtFilename& simulationModelSet =
286 DtFilename::nullFilename(),
bool createGlobalEnv =
false,
287 bool createGlobalDynamicTerrain =
false);
293 virtual void sendScenarioStatusMessage();
298 virtual bool saveScenario(
const DtFilename& savename,
bool saveAsSip =
false);
305 virtual void rollbackToSimTime(
double simTime);
309 virtual void takeSnapshot(
bool makeBase);
313 virtual bool saveSnapshot(
const DtFilename& saveFolder,
319 virtual bool saveSimulationObjectGroup(DtFilename saveFolder,
const DtString& groupName,
320 int flags, std::set<DtUUID>& uuidsSaved,
bool& savAsZipFile);
327 virtual bool createSimulationObjectGroup(
const DtString& group,
int flags,
int force,
const DtVector& geocentricLocation,
328 double offsetRotation,
bool storedInZipFile =
false);
334 virtual void closeScenario(
const DtFilename& terrainToOpen =
"",
bool forceCloseAll =
false);
340 virtual bool loadAdditionalObjectParameters(
const DtFilename& paramsFileName,
349 virtual void pause();
352 virtual std::string protocol()
const;
359 virtual void rewind(
int scenarioRunId = 0);
362 virtual void setRejectMismatchedScenarioMessages(
bool);
363 virtual bool rejectMismatchedScenarioMessages()
const;
370 virtual void setForceParameterDbReload(
bool reload);
371 virtual bool forceParameterDbReload()
const;
378 virtual void setEnableResourceMonitor(
bool b);
379 virtual bool isResourceMonitorEnabled()
const;
388 virtual bool canSleep()
const;
396 virtual void setSmsValidationEnabled(
bool b);
410 virtual const DtFilename& defaultTerrainDirectory();
411 virtual void setDefaultTerrainDirectory(
const DtFilename& directory);
414 virtual bool logFrameRateStatistics()
const;
415 virtual void setLogFrameRateStatistics(
bool yesOrNo);
425 virtual const DtFilename& defaultSimulationModelSetFilename();
426 virtual void setDefaultSimulationModelSetFilename(
const DtFilename&
filename);
433 virtual const DtFilename& diGuyAnimationsFilename();
434 virtual void setDIGuyAnimationsFilename(
const DtFilename&
filename);
439 void setClockMode(
int clockMode);
444 virtual void setMsdlSidcMappingFile(
const DtFilename&);
445 virtual const DtFilename& msdlSidcMappingFile()
const;
450 virtual void setCountryCodesMappingFile(
const DtFilename&);
451 virtual const DtFilename& countryCodesMappingFile()
const;
462 virtual void deleteObject(
const DtUUID& name,
bool andRemoveFromOrbat =
true)
const;
478 const DtString& uniqueName = DtString::nullString())
const;
493 const DtString& uniqueName = DtString::nullString())
const;
509 const DtString& uniqueName = DtString::nullString())
const;
523 const DtList& vertices,
524 const DtString& uniqueName = DtString::nullString())
const;
538 const DtList& vertices,
539 const DtString& uniqueName = DtString::nullString())
const;
569 const DtEntityType& entityType,
573 const DtString& entityName = DtString::nullString(),
574 bool allowBlocking =
true,
575 std::list<DtAdminContent*>* initialAdminContent = 0,
576 bool addToOrbat =
true)
const;
609 const DtEntityType& aggregateType,
613 const std::vector<DtUUID>& subordinates = std::vector<DtUUID>(),
614 const DtString& aggregateName = DtString::nullString(),
615 bool addToOrbat =
true)
const;
629 const DtEntityType& aggregateType,
633 bool createSubordinates,
634 const DtString& aggregateName = DtString::nullString(),
635 bool allowBlocking =
true,
636 bool addToOrbat =
true)
const;
696 virtual void assignPlanByUUID(
const DtUUID&,
const DtPlan& plan,
bool sendPlan =
false);
719 DtFilename
filename = DtFilename::nullFilename());
722 virtual void stopLoggingObjectConsoleToFile(
DtLocalObject*
object);
727 virtual void setObjectConsoleNotificationLevel(
DtLocalObject*
object,
728 DtNotifyLevelType
level);
737 virtual bool reuseEntityIdentifiersOnScenarioLoad()
const;
738 virtual void setReuseEntityIdentifiersOnScenarioLoad(
bool);
750 virtual void setUseDrawControlForTaskVisualizations(
bool);
751 virtual bool useDrawControlForTaskVisualizations()
const;
889 virtual const DtSimulationAddress& simulationAddress()
const;
896 virtual int sessionId()
const;
904 virtual DtU32 scenarioCapabilities()
const;
905 virtual void setScenarioCapabilities(DtU32 v);
906 virtual void setScenarioCapability(DtU32 v,
bool);
910 virtual void setTimeMultiplier(
double);
915 virtual DtString applicationType()
const;
916 virtual void setApplicationType(
const DtString& type);
926 virtual void useMapDatum(
const DtMapDatum& mapDatum);
929 virtual void setParameterDbLoaded(
bool flag);
936 virtual void setDefaultParameterDbDirectory(
const DtFilename&
filename);
939 virtual DtFilename objectGroupsRoot()
const;
945 virtual bool reinitializeScenario();
947 virtual void setFullyLoadTerrain(
bool yesOrNo);
948 virtual bool fullyLoadTerrain()
const;
954 virtual void setAssertOnBlockingTerrainCalls(
bool b);
955 virtual bool assertOnBlockingTerrainCalls()
const;
962 virtual void setMetocEnable(
bool b);
963 virtual bool metocEnable()
const;
972 virtual void addPluginToLoad(
const DtString&);
976 virtual void setLoadPluginsIfVersionMismatch(
bool);
977 virtual bool loadPluginsIfVersionMismatch()
const;
980 virtual bool createAndInitPluginManager(
DtVrfCreator* creator);
984 virtual void initializePluginCommandLineArguments(DtApplicationSettings& appInitializer);
996 virtual void addPreLoadTerrainCallback(
998 virtual void removePreLoadTerrainCallback(
1006 virtual void addPostLoadTerrainCallback(
1008 virtual void removePostLoadTerrainCallback(
1014 virtual void runForDuration(
double);
1017 virtual void stopSimulationDurationTimer();
1020 static void runDurationCompleteCallback(
void*);
1021 virtual void processRunDurationComplete();
1024 virtual void setPublishingGlobalEnvironment(
bool);
1030 virtual void addPreLoadScenarioCallback(
1032 virtual void removePreLoadScenarioCallback(
1038 virtual void addPreScenarioReinitializeCallback(
1040 virtual void removePreScenarioReinitializeCallback(
1047 virtual void addPostScenarioReinitializeCallback(
1049 virtual void removePostScenarioReinitializeCallback(
1055 virtual void addPreCreateSimulationObjectGroupCallback(
1057 virtual void removePreCreateSimulationObjectGroupCallback(
1065 virtual void addPostLoadScenarioCallback(
1067 virtual void removePostLoadScenarioCallback(
1073 virtual void addPostCreateSimulationObjectGroupCallback(
1075 virtual void removePostCreateSimulationObjectGroupCallback(
1081 virtual void addPreImportScenarioCallback(
1083 virtual void removePreImportScenarioCallback(
1089 virtual void addPostImportScenarioCallback(
1091 virtual void removePostImportScenarioCallback(
1098 virtual void addPreSaveScenarioCallback(
1100 virtual void removePreSaveScenarioCallback(
1107 virtual void addPostSaveScenarioCallback(
1109 virtual void removePostSaveScenarioCallback(
1116 virtual void addPreCloseScenarioCallback(
1118 virtual void removePreCloseScenarioCallback(
1125 virtual void addCgfAboutToBeDestroyedCallback(
1127 virtual void removeCgfAboutToBeDestroyedCallback(
1134 virtual void addPostCloseScenarioCallback(
1136 virtual void removePostCloseScenarioCallback(
1142 virtual void addPreSaveSimulationObjectGroupsCallback(
1144 virtual void removePreSaveSimulationObjectGroupsCallback(
1150 virtual void addPostSaveSimulationObjectGroupsCallback(
1152 virtual void removePostSaveSimulationObjectGroupsCallback(
1159 virtual void addScenarioPauseCallback(
1161 virtual void removeScenarioPauseCallback(
1168 virtual void addScenarioRunCallback(
1170 virtual void removeScenarioRunCallback(
1179 virtual void addPreScenarioRewindCallback(
1181 virtual void removePreScenarioRewindCallback(
1188 virtual void addPostScenarioRewindCallback(
1190 virtual void removePostScenarioRewindCallback(
1197 virtual void addPostTickCallback(
1199 virtual void removePostTickCallback(
1205 virtual void setTimeToQuit(
bool);
1206 virtual bool timeToQuit()
const;
1220 virtual void setFrameRateMode(
const DtString&
mode, DtReal deltaTime = -1);
1225 virtual bool executeSimCommand(
const DtSimCommand& simCommand);
1229 virtual void unloadTerrain();
1232 virtual bool isOrbatEnabled()
const;
1235 virtual double timeScale()
const;
1237 virtual void setRunInTimeManagementMode(
bool);
1247 static void objectParametersOpCallback(
DtSimMessage* msg,
void* usr);
1251 static void scenarioDescriptionCallback(
DtSimMessage*,
void* usr);
1252 virtual void processScenarioDescription(
DtSimMessage*);
1255 static void setScenarioFilenameCallback(
DtSimMessage*,
void* usr);
1256 virtual void processSetScenarioFilename(
DtSimMessage*);
1259 static void setRunDurationCallback(
DtSimMessage*,
void* usr);
1263 static void actionCategoriesRequestCallback(
DtSimMessage* msg,
void* usr);
1264 virtual void processActionCategoriesRequest(
DtSimMessage* msg);
1267 static void scenarioStatusRequestCallback(
DtSimMessage* msg,
void* usr);
1268 virtual void processScenarioStatusRequest(
DtSimMessage* msg);
1273 virtual bool advanceFrame();
1287 virtual void loadAllPlugins();
1290 virtual bool loadComponentAttachmentTable(
const DtFilename&
filename);
1296 virtual bool loadTerrain(
const DtFilename&
filename);
1301 virtual DtFilename findTerrainFile(
const DtFilename& startFile,
const std::vector<DtFilename>& searchPaths,
1302 const std::string& extension)
const;
1309 virtual bool writeOrderOfBattle(
const DtScenario& scenario)
const;
1313 virtual bool loadScenarioScripts(
const DtFilename&
filename);
1314 virtual bool loadScenarioScriptsFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1315 virtual bool loadScenarioScripts(
const std::string& buffer);
1318 virtual bool loadOrbat(
const DtFilename&
filename,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1319 virtual bool loadOrbatFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1320 virtual bool loadOrbat(
const std::string& buffer,
DtOrbatManager* intoOm = 0,
bool clearBeforeLoading =
true);
1324 virtual void prepareForScenarioReinitialize();
1327 virtual bool isScenarioReinitializing()
const;
1332 virtual bool loadParameterDb(
const DtFilename&
filename,
1337 virtual bool loadObjectParametersDBFile(
const DtFilename& opdFile,
1343 virtual bool loadPhysicalWorldFile(
const DtFilename& file,
bool force =
false);
1348 virtual bool loadDetonationParametersFile(
const DtFilename& file,
bool force =
false);
1350 virtual bool loadTerrainDeformationParametersFile(
const DtFilename& file,
bool force =
false);
1355 virtual bool loadAmmunitionParametersFile(
const DtFilename& file,
bool force =
false);
1358 virtual bool loadPlans(
const DtFilename&
filename);
1359 virtual bool loadPlansFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1360 virtual bool loadPlans(
const std::string& buffer);
1363 virtual bool loadGlobalPlans(
const DtFilename&
filename);
1364 virtual bool loadGlobalPlansFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename);
1368 virtual void loadHostilityAndExtrasFromZipFile(
const DtFilename& scenarioZipFile,
const DtScenarioExplorer& se);
1369 virtual void loadHostilityAndExtras(
const std::string& buffer);
1381 virtual void loadActionCategories(
const DtFilename& f);
1383 virtual bool loadForceHostility(
const DtFilename&
filename,
bool clear =
true);
1384 virtual bool loadForceHostilityFromZipFile(
const DtFilename& scenarioZipFile,
const DtFilename&
filename,
bool clear =
true);
1386 virtual bool loadScenarioExtras(
const DtFilename&
filename);
1387 virtual bool loadScenarioExtrasFromZipFile(
const DtFilename&,
const DtFilename&
filename);
1388 virtual bool loadScenarioExtras(
const std::string& buffer);
1392 virtual void processObjectParametersOp(
DtSimMessage * msg);
1395 virtual void createAndInitScenarioLoadManager();
1399 virtual void emptyParametersDB();
1402 virtual void setAutoReorganization(
bool onOff);
1416 virtual void updateReadyStatus();
1421 static void simCommandCallback(
DtSimMessage* msg,
void* usr);
1429 static void deferredLoadScenarioCallback(
void * data);
1430 virtual void processDeferredLoadScenario();
1439 static void deferredReinitializeScenarioCallback(
void * data);
1440 virtual void processDeferredReinitializeScenario();
1448 static void deferredRollbackCallback(
void * data);
1449 virtual void processDeferredRollback();
1456 static void deferredImportScenarioCallback(
void * data);
1457 virtual void processDeferredImportScenario();
1464 static void deferredRewindCallback(
void * data);
1465 virtual void processDeferredRewind();
1470 virtual void clearAllSimulationModelSetInformation();
1473 virtual void initializeCgfConsoleCommands();
1479 virtual bool createDIGuyCharacterManager(
const DtFilename & diGuyAnimationsFile);
1666 bool ownVrfCreator()
const;
1667 void setOwnVrfCreator(
bool yesOrNo);
1671 virtual bool differingModelSets(
DtScenario*)
const;
1675 virtual void clearObjectsAwaitingDiscovery();
1676 virtual void processObjectsAwaitingDiscovery();
1678 virtual void terrainPaging(
bool);
1679 virtual void jobQueueStatusChanged(
bool);
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtObjectConsoleManager * myObjectConsoleManager
Definition: cgf.h:1547
bool myIsLoaded
Definition: cgf.h:1758
DtObjectGeometricModelsManager * myObjectModelsManager
Definition: cgf.h:1550
DtCommunicationManager * myCommunicationManager
The current exercise connection.
Definition: cgf.h:1516
DtSimManager * mySimManager
Pointer to the DtSimManager.
Definition: cgf.h:1519
bool myCreateGlobalEnvironment
Definition: cgf.h:1704
bool myPublishingGlobalEnvironment
Definition: cgf.h:1729
DtIfScenarioStatus * myScenarioStatus
Scenario status message to be sent out upon request.
Definition: cgf.h:1727
class DtLocalObjectManager:
Definition: localObjectManager.h:151
DtCommunicationManager * communicationManager()
Definition: cgf.h:385
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:1540
DtGlobalPlanManager * myGlobalPlanManager
Definition: cgf.h:1579
bool myUseDrawControlForTaskVisualizations
Definition: cgf.h:1736
The DtAmmunitionManager is a clas that will maintain ammunition (that which is not published...
Definition: ammunitionManager.h:17
DtScriptedTaskManager * myScriptedTaskManager
Definition: cgf.h:1541
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:1556
DtStealthCommandsManager * myStealthCommandsManager
Stealth commands manager.
Definition: cgf.h:1590
Instances of DtVrfParameterDb are the database of DtVrfObjectParameters objects used in the construct...
Definition: vrfParameterDb.h:40
DtNoArgumentCallbackList myScenarioPauseCallbacks
Definition: cgf.h:1648
DtCallbackList< DtScenario & > myPreLoadScenarioCallbacks
Definition: cgf.h:1631
DtCreateObjectServiceInterface * myCreateObjectService
Pointer to the create object service.
Definition: cgf.h:1522
DtAisDataManager * myAisDataManager
Definition: cgf.h:1554
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:1635
bool myOK
Flag indicating whether we have been successfully initialized.
Definition: cgf.h:1491
DtNoArgumentCallbackList myPreCloseScenarioCallbacks
Definition: cgf.h:1645
DtSimCommandDistributor * mySimCommandDistributor
Definition: cgf.h:1592
DtPhysicalWorld * myPhysicalWorld
The current physical world.
Definition: cgf.h:1505
DtFilename myDefaultSimulationModelSetFilename
Default simulation model set file to load.
Definition: cgf.h:1606
const DtIfScenarioStatus * scenarioStatus() const
Imports the specified scenario description file into the current scenario.
Definition: cgf.h:291
bool myFullyLoadTerrain
Flag indicating whether to fully load terrain subpages for paged terrain.
Definition: cgf.h:1688
void(* DtCallbackFunctionType)(void *)
The function signature of the callback function.
Definition: noArgumentCallbackList.h:156
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:1722
DtCallbackList< DtScenario & > myPreScenarioReinitializeCallbacks
Definition: cgf.h:1633
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:1584
class DtScenarioExplorer:
Definition: scenarioExplorer.h:26
bool mySmsValidationEnabled
Definition: cgf.h:1741
DtCallbackList< const DtScenario & > myPostCreateSimulationObjectGroupCallbacks
Definition: cgf.h:1636
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:1528
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:1745
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:1598
bool myTimeToQuit
Flag indicating whether or not the app should quit.
Definition: cgf.h:1494
Definition: terrainProfileRequestManager.h:31
DtNoArgumentCallbackList myPostCloseScenarioCallbacks
Definition: cgf.h:1646
DtNoArgumentCallbackList myPostTickCallbacks
Definition: cgf.h:1651
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:1562
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:1705
bool myCanSimulate
Definition: cgf.h:1757
DtVrfNavAreaManager * myVrfNavAreaManager
Definition: cgf.h:1507
Service interface for checking and altering scenario wide properties.
Definition: scenarioServiceInterface.h:29
Definition: luaObjectSerializer.h:24
std::vector< DtLoadOrderOfBattleHandler * > SimulationObjectGroupsToBeCreated
Definition: cgf.h:1772
bool myHasModelSetInformationLoadedAfterClose
Definition: cgf.h:1759
int myAppIdRangeMax
Definition: cgf.h:1763
Definition: influenceEventDispatcher.h:25
The DtFireManager class exists to centralize the process of sending and receiving of fire interaction...
Definition: fireManager.h:42
DtInMemorySnapshot * myQueuedRollback
Definition: cgf.h:1767
DtCommModelManager * myCommModelManager
Definition: cgf.h:1511
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:1707
Definition: ifScenarioStatus.h:28
DtVrfSimOptionsInterface * mySimOptions
Definition: cgf.h:1482
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
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:1738
DtVrfStatusPublisher * myStatusPublisher
Pointer to the DtStatusPublisher.
Definition: cgf.h:1531
DtTaskVisualizationPublicationMode myTaskVisualizationPublicationMode
Definition: cgf.h:1735
DtFilename myDIGuyAnimationsFilename
DI_Guy animation configuration file to load.
Definition: cgf.h:1609
Definition: objectType.h:27
bool myRejectMismatchedScenarioMessages
Definition: cgf.h:1761
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:1779
DtVrfParameterDb * myParameterDatabase
Pointer to the DtVrfParameterDb.
Definition: cgf.h:1571
DtLocalObjectManager * myObjectManager
Pointer to the DtLocalObjectManager.
Definition: cgf.h:1534
DtCallbackList< DtScenario & > myPreSaveScenarioCallbacks
Definition: cgf.h:1639
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:1629
std::vector< std::string * > OOB
Definition: snapshotManager.h:44
std::map< DtString, SimulationObjectGroupInformation > StoredSimulationObjectGroupInformation
Definition: cgf.h:1753
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:1574
DtImportExportScenarioDescriptionManager * myImportScenarioDescriptionManager
The scenario description manager used to import scenario description files.
Definition: cgf.h:1716
bool myCreatedGlobalEnvironment
Definition: cgf.h:1706
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:1539
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:1615
DtFilename myDefaultParameterDbDirectory
Default parameter database directory to search in when parameter database being specified is not an a...
Definition: cgf.h:1627
DtEmbeddedEntityInfoManager is the central point for information about embedded entities and their ca...
Definition: embeddedEntityInfoManager.h:36
DtScenarioEventManager * myScenarioEventManager
Definition: cgf.h:1542
DtScenarioServiceInterface * myScenarioService
Pointer to the scenario object service.
Definition: cgf.h:1525
DtTerrainProfileRequestManager * myTerrainProfileRequestManager
Pointer to the DtTerrainProfileRequestManager.
Definition: cgf.h:1568
The DtVrfNavAreaManager manages all of the nav areas currently created in the sim.
Definition: vrfNavAreaManager.h:52
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:1778
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:1630
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:1754
DtNoArgumentCallbackList myScenarioRunCallbacks
Definition: cgf.h:1647
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:152
DtVrfPluginManager * myPluginManager
The current plugin manager.
Definition: cgf.h:1497
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
int myQueuedRollbackScenarioRunId
Definition: cgf.h:1768
bool myCreatedCharacterManager
Definition: cgf.h:1557
SimulationObjectGroupsToBeCreated mySimulationObjectGroupsToBeCreated
Definition: cgf.h:1773
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:1713
Definition: noArgumentCallbackList.h:91
DtIntelCollectionAreaManager * myIntelCollectionAreaManager
Definition: cgf.h:1544
bool myAssertOnBlockingTerrainCalls
If true, blocking terrain calls will cause an assert when a debug back-end is in run mode...
Definition: cgf.h:1693
DtCallbackList< DtScenario & > myPreSaveSimulationObjectGroupsCallbacks
Definition: cgf.h:1642
DtSyncMatrixManager * mySyncMatrixManager
Definition: cgf.h:1654
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:1643
DtSimulationModelSet * myDefaultModelSet
Default simulation model set. This is created when the default simulation model set filename is set o...
Definition: cgf.h:1697
DtRwActivities myActivities
Definition: cgf.h:1740
Definition: vrfPluginManager.h:73
DtScenarioLoadManager * myScenarioLoadManager
Definition: cgf.h:1770
DtRadarCoverageMonitor * myRadarCoverageMonitor
Pointer to the DtRadarCoverageMonitor.
Definition: cgf.h:1565
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:1587
ActionCategories myActionCategories
Definition: cgf.h:1724
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:1702
DtHazardAreaManager * myHazardAreaManager
Definition: cgf.h:1543
std::vector< DtString > myPluginsToLoad
Definition: cgf.h:1498
DtCallbackList< const DtScenario & > myPostSaveScenarioCallbacks
Definition: cgf.h:1640
bool myReinitializingScenario
Definition: cgf.h:1731
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:1743
DtSimInternalCommunicationManager * mySimInternalCommunicationManager
Definition: cgf.h:1552
class DtPlan:
Definition: plan.h:92
DtInfluenceEventDispatcher * myInfluenceEventDispatcher
Definition: cgf.h:1655
DtOrbatManager * myOrbatManager
Definition: cgf.h:1549
DtNoArgumentCallbackList myCgfAboutToBeDestroyedCallbacks
Definition: cgf.h:1652
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:1637
Contains the DtTranslatableStream class declaration.
std::set< DtFilename > myLoadedModelSets
Definition: cgf.h:1765
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:94
DtNoArgumentCallbackList myPostScenarioRewindCallbacks
Definition: cgf.h:1650
bool myAboutToLoadOrRewindScenario
Definition: cgf.h:1730
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:1577
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:1742
DtEngagementZonesManager * myEngagementZonesManager
Definition: cgf.h:1582
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:391
DtCallbackList< const DtScenario & > myPostImportScenarioCallbacks
Definition: cgf.h:1638
bool myMetocEnabled
Definition: cgf.h:1733
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:1551
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:1513
DtCallbackList< const DtScenario & > myPostLoadScenarioCallbacks
Definition: cgf.h:1632
int myReloadDelay
Definition: cgf.h:1760
DtVrfCreator * myVrfCreator
Definition: cgf.h:1685
DtDiGuyCharacterDataManager * myCharacterMgr
Definition: cgf.h:1553
DtNoArgumentCallbackList myPreScenarioRewindCallbacks
Definition: cgf.h:1649
virtual bool canSimulate() const
Whether or not the cgf is ready to simulate.
Definition: cgf.h:383
DtFilename myCurrentParameterDatabaseFilename
Filename of currently loaded parameter database.
Definition: cgf.h:1622
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:123
Definition: snapshotManager.h:55
DtManagedObjectListManager * myFilteredObjectListManager
Definition: cgf.h:1548
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:1762
bool myOwnVrfCreatorFlag
These are essentially cached from the init call. This is necessary as the load terrain.
Definition: cgf.h:1684
DtIfScenarioStatus * scenarioStatus()
Returns the scenario status object.
Definition: cgf.h:290
bool myParameterDbLoaded
Set to true if parameter database has been loaded via loadParameterDatabase call. If you load a param...
Definition: cgf.h:1619
DtHostilityManager * myHostilityManager
Definition: cgf.h:1581
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:1509
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:1559
DtConsoleCommandOwner * myConsoleCommands
Definition: cgf.h:1718
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:1546
#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:1545
DtDebugDrawManager * myDebugDrawManager
Pointer to the DtDebugDrawManagert.
Definition: cgf.h:1537
DtCallbackList< const DtScenario & > myPostScenarioReinitializeCallbacks
Definition: cgf.h:1634
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:1502
DtU32 mySessionId
Session Id.
Definition: cgf.h:1488
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:1603
bool myLoadPluginsIfVersionMismatch
Definition: cgf.h:1499
DtSimulationAddress mySimulationAddress
Address for routing interface messages.
Definition: cgf.h:1485
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:1723
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
int myRollbackToId
Definition: cgf.h:1756
DtFilename myMsdlSidcMappingFile
MSDL SDIC mapping file to load.
Definition: cgf.h:1612
DtTaskVisualizationPublicationMode
Defines how task visualizations will be published.
Definition: scenarioServiceInterface.h:21