![]() |
VR-Forces Developer's Guide
|
Central access point of all non-object-specific the services and managers that are available for use by various pieces of code executing simulation logic. These services are thread safe, and can be called from within DtSimComponent subclasses without any locking.
Public Types | |
| typedef void(* | SimTickFunction )(void *userData) |
Static Public Member Functions | |
| static DtSimulationServices * | instance () |
Private Member Functions | |
| DtSimulationServices (const DtSimulationServices &) | |
| DtSimulationServices & | operator= (const DtSimulationServices &) |
| typedef void(* DtSimulationServices::SimTickFunction)(void *userData) |
| DtSimulationServices::DtSimulationServices | ( | const DtSimulationServicesInitializer & | initializer | ) |
|
virtual |
|
private |
Not implemented.
| void DtSimulationServices::installDetonationService | ( | DtDetonationServiceInterface * | service | ) |
| DtDetonationServiceInterface* DtSimulationServices::detonationService | ( | ) |
Service for receiving information about detonations, and for creating new detonations.
| const DtDetonationServiceInterface* DtSimulationServices::detonationService | ( | ) | const |
Service for receiving information about detonations, and for creating new detonations.
| void DtSimulationServices::installCreateObjectService | ( | DtCreateObjectServiceInterface * | service | ) |
| DtCreateObjectServiceInterface* DtSimulationServices::createObjectService | ( | ) | const |
Service for creating, deleting, and changing organization hierarchy of simulation objects.
| void DtSimulationServices::installScenarioService | ( | DtScenarioServiceInterface * | service | ) |
| void DtSimulationServices::installInfluenceDispatcherService | ( | DtInfluenceDispatcherServiceInterface * | service | ) |
| DtScenarioServiceInterface* DtSimulationServices::scenarioService | ( | ) | const |
Service for some scenario-wide properties.
| DtScriptedTaskManager* DtSimulationServices::scriptedTaskManager | ( | ) |
Service for accessing scripted (lua) tasks.
| const DtScriptedTaskManager* DtSimulationServices::scriptedTaskManager | ( | ) | const |
Service for accessing scripted (lua) tasks.
| DtManagedObjectListManager* DtSimulationServices::objectListManager | ( | ) | const |
Service for accessing DtManagedObjectList instances, which are maintained over time.
| DtSimInternalCommunicationManager* DtSimulationServices::simInternalCommunicationManager | ( | ) | const |
Service for message passing between VRF entities. This service is intended for messages that are simulation-specific, meaning that in the real world, they would not be messages.
| DtOrbatManager* DtSimulationServices::orbatManager | ( | ) |
Service for inspecting and altering the ORBAT.
| const DtOrbatManager* DtSimulationServices::orbatManager | ( | ) | const |
Service for inspecting and altering the ORBAT.
| DtPhysicalWorld* DtSimulationServices::physicalWorld | ( | ) |
Service for retrieving information about the physical environment for the simulation, including terrain information.
| const DtPhysicalWorld* DtSimulationServices::physicalWorld | ( | ) | const |
Service for retrieving information about the physical environment for the simulation, including terrain information.
| DtVrfMessageInterface* DtSimulationServices::messageInterface | ( | ) | const |
Service that provides access to the sending/receiving of messages on the network.
| DtVrfTDLMessageInterface* DtSimulationServices::tdlMessageInterface | ( | ) | const |
Service that provides access to the sending/receiving of messages on the network.
| const DtVrfParameterDb* DtSimulationServices::parameterDatabase | ( | ) | const |
Service that provides all the parameters from the Simulation Model Set for configured object types.
| DtObjectGeometricModelsManager* DtSimulationServices::objectModelsManager | ( | ) |
Service that provides access to 3D geometric models of objects, if configured in the SMS.
| const DtObjectGeometricModelsManager* DtSimulationServices::objectModelsManager | ( | ) | const |
Service that provides access to 3D geometric models of objects, if configured in the SMS.
| const DtSimObjectManager* DtSimulationServices::simObjectManager | ( | ) | const |
Service that provides read-only access to all objects in the simulation including local, remove, VRF simulated, and non-VRF simulated.
| DtSimObjectManager* DtSimulationServices::simObjectManager | ( | ) |
Service that provides read-only access to all objects in the simulation including local, remove, VRF simulated, and non-VRF simulated.
| DtDiGuyCharacterDataManager* DtSimulationServices::diGuyCharacterManager | ( | ) | const |
Service for accessing information on DI-Guy animation configurations.
| DtVrfObjectPlanAdministrator* DtSimulationServices::planAdministrator | ( | ) | const |
Access to some centralized plan system calls.
| makVrfEvents::DtEventManager* DtSimulationServices::eventManager | ( | ) | const |
Service for posting simulation events, and receiving notification on events.
| void DtSimulationServices::addEvent | ( | const makVrfEvents::DtEvent & | ) |
Posts a new event to the simulation.
| DtInterfaceMessageExecutive* DtSimulationServices::messageExecutive | ( | ) |
Service for registering callback for messages from VRF GUI and other sources.
| DtScenarioEventManager* DtSimulationServices::scenarioEventManager | ( | ) |
Service providing access to Scenario Events and their state.
| const DtScenarioEventManager* DtSimulationServices::scenarioEventManager | ( | ) | const |
Service providing access to Scenario Events and their state.
| makVrf::DtStateDataManager* DtSimulationServices::stateDataManager | ( | ) |
Direct access to the DtStateData system in VRF.
| const makVrf::DtStateDataManager* DtSimulationServices::stateDataManager | ( | ) | const |
Direct access to the DtStateData system in VRF.
| DtScheduler* DtSimulationServices::scheduler | ( | ) |
Service for scheduling callback at a particular simulation time in the future.
| const DtEnumDictionary* DtSimulationServices::enumerationDictionary | ( | ) | const |
Returns a pointer to the enumerations dictionary.
| DtScriptedObjectsMovementManager* DtSimulationServices::scriptedObjectsMovementManager | ( | ) |
Service providing data for the Scripted Movement (or Animated Movement) system in VRF, including access to the animation data.
| const DtScriptedObjectsMovementManager* DtSimulationServices::scriptedObjectsMovementManager | ( | ) | const |
Service providing data for the Scripted Movement (or Animated Movement) system in VRF, including access to the animation data.
| DtVrfNavAreaManager* DtSimulationServices::vrfNavAreaManager | ( | ) |
Service providing access to the navigation mesh system for path planning.
| const DtVrfNavAreaManager* DtSimulationServices::vrfNavAreaManager | ( | ) | const |
Service providing access to the navigation mesh system for path planning.
| const DtHostilityManager* DtSimulationServices::hostilityManager | ( | ) | const |
Service providing access to the hostility relationships between force types.
| DtHostilityManager* DtSimulationServices::hostilityManager | ( | ) |
Service providing access to the hostility relationships between force types.
| DtSpawnSinkManager* DtSimulationServices::spawnSinkManager | ( | ) |
Service for spawn and sink point data.
| const DtSpawnSinkManager* DtSimulationServices::spawnSinkManager | ( | ) | const |
Service for spawn and sink point data.
| const DtSimCommandDistributor* DtSimulationServices::simCommandDistributor | ( | ) | const |
Service for registering for DtSimCommand instances.
| DtSimCommandDistributor* DtSimulationServices::simCommandDistributor | ( | ) |
Service for registering for DtSimCommand instances.
| const DtObjectConsoleManager* DtSimulationServices::objectConsoleManager | ( | ) | const |
Service for object consoles.
| DtObjectConsoleManager* DtSimulationServices::objectConsoleManager | ( | ) |
Service for object consoles.
| const DtEngagementZonesManager* DtSimulationServices::engagementZonesManager | ( | ) | const |
Service for engagement zones.
| DtEngagementZonesManager* DtSimulationServices::engagementZonesManager | ( | ) |
Service for engagement zones.
| DtVrfCallbackQueue* DtSimulationServices::parallelQueue | ( | ) |
Access to the parallel queue used for threading the object tick of VRF Sim, as well as other key aspects of the simulation engine.
| DtFireManager* DtSimulationServices::fireManager | ( | ) |
Service for registering interest in fire events.
| const DtFireManager* DtSimulationServices::fireManager | ( | ) | const |
Service for registering interest in fire events.
| DtVrfSimSettingsManager* DtSimulationServices::vrfSimSettingsManager | ( | ) | const |
Access to simulation engine wide settings.
| DtScenarioExtrasMgr* DtSimulationServices::scenarioExtrasMgr | ( | ) |
Access to the DtRwScenarioExtras.
| const DtScenarioExtrasMgr* DtSimulationServices::scenarioExtrasMgr | ( | ) | const |
Access to the DtRwScenarioExtras.
| DtIntelCollectionAreaManager* DtSimulationServices::intelCollectionAreaManager | ( | ) |
Access sensor modification factors that come from intel collection areas.
| const DtIntelCollectionAreaManager* DtSimulationServices::intelCollectionAreaManager | ( | ) | const |
Access sensor modification factors that come from intel collection areas.
| DtResourceMonitor* DtSimulationServices::resourceMonitor | ( | ) |
The system for sending resource updates to the GUI and other network systems.
| bool DtSimulationServices::rejectMessage | ( | const DtVrfObjectMessage * | obj | ) |
Test if a DtVrfObjectMessage should be rejected, in case it came from a different scenario run ID.
| DtEmbeddedEntityInfoManager* DtSimulationServices::embeddedEntityInfoManager | ( | ) |
Information on embedded entities.
| const DtEmbeddedEntityInfoManager* DtSimulationServices::embeddedEntityInfoManager | ( | ) | const |
Information on embedded entities.
| DtCommModelManager* DtSimulationServices::commModelManager | ( | ) |
Access to comm model system for communication between entities by simulating real-world messages.
| const DtCommModelManager* DtSimulationServices::commModelManager | ( | ) | const |
Access to comm model system for communication between entities by simulating real-world messages.
| DtCommunicationManager* DtSimulationServices::communicationManager | ( | ) |
Access to the network connection.
| const DtCommunicationManager* DtSimulationServices::communicationManager | ( | ) | const |
Access to the network connection.
| const DtVrfSimOptionsInterface* DtSimulationServices::simOptions | ( | ) | const |
Provides access to VRF Sim configuration options (from command line and vrfSim.mtl file)
| const DtHazardAreaManager* DtSimulationServices::hazardAreaManager | ( | ) | const |
Access to effects from hazard areas.
| DtStealthCommandsManager* DtSimulationServices::stealthCommandsManager | ( | ) | const |
Service for sending view controls to potential GUI systems.
| const DtSyncMatrixManager* DtSimulationServices::syncMatrixManager | ( | ) | const |
Access to the synchronization matrix system.
| DtSyncMatrixManager* DtSimulationServices::syncMatrixManager | ( | ) |
Access to the synchronization matrix system.
| void DtSimulationServices::installAisDataService | ( | DtAisDataServiceInterface * | service | ) |
| const DtAisDataServiceInterface* DtSimulationServices::aisDataService | ( | ) | const |
Service for receiving loading AIS data for clutter ship entities.
| DtAisDataServiceInterface* DtSimulationServices::aisDataService | ( | ) |
Service for receiving loading AIS data for clutter ship entities.
| void DtSimulationServices::installSimOperationsInProgressManager | ( | DtSimOperationsInProgressInterface * | service | ) |
| const DtSimOperationsInProgressInterface* DtSimulationServices::simOperationsInProgress | ( | ) | const |
Service for managing sim operations in progress.
| DtSimOperationsInProgressInterface* DtSimulationServices::simOperationsInProgress | ( | ) |
Service for managing sim operations in progress.
| void DtSimulationServices::installAdsbDataService | ( | DtAdsbDataServiceInterface * | service | ) |
| const DtAdsbDataServiceInterface* DtSimulationServices::adsbDataService | ( | ) | const |
Service for receiving loading ADSB data for clutter aircraft entities.
| DtAdsbDataServiceInterface* DtSimulationServices::adsbDataService | ( | ) |
Service for receiving loading ADSB data for clutter aircraft entities.
| const DtInfluenceDispatcherServiceInterface* DtSimulationServices::influenceDispatcher | ( | ) | const |
Access to the influence dispatcher service.
| DtInfluenceDispatcherServiceInterface* DtSimulationServices::influenceDispatcher | ( | ) |
Access to the influence dispatcher service.
| DtVrfDatabaseLoggerInterface* DtSimulationServices::databaseLogger | ( | ) |
Service providing access to the Database Logger. The database logger provides a means of logging important events to a database for later analysis.
| const DtSimulationAddress& DtSimulationServices::messageAddress | ( | ) | const |
This is the address that should be used as the sender for all messages originating from the backend.
| int DtSimulationServices::vrfSessionId | ( | ) | const |
Session ID of this VRF Sim.
| int DtSimulationServices::vrfMessageVersionSupported | ( | ) | const |
Message version of this VRF Sim.
| void DtSimulationServices::runForDuration | ( | double | ) |
Starts a run duration. If there is an existing run duration cancels that duration and creates a new one. When the run duration is complete the timer is removed and the scenario is paused.
| double DtSimulationServices::runDurationTime | ( | ) | const |
If running for duration, the duration time that was specified.
| void DtSimulationServices::stopSimulationDurationTimer | ( | ) |
Stops the current duration run timer.
| double DtSimulationServices::dateAndTimeOfDay | ( | ) | const |
Date and time of day of currently running scenario (UTC)
| double DtSimulationServices::simTime | ( | ) | const |
Current simulation time.
| double DtSimulationServices::dT | ( | ) | const |
Elapsed time for the current frame.
| double DtSimulationServices::elapsedRealTime | ( | ) | const |
The elapsed time, in real-world seconds, since the application was initialized.
| double DtSimulationServices::approximateElapsedRealTime | ( | ) | const |
The elapsedRealTime at the time that the sim time was last set.
| double DtSimulationServices::absRealTime | ( | ) | const |
Returns current wall-clock time - seconds since Jan 1, 1970.
| bool DtSimulationServices::isPaused | ( | ) | const |
Returns true if simulation is currently paused.
| double DtSimulationServices::timeMultiplier | ( | ) | const |
Returns the current time multiplier.
| double DtSimulationServices::simTimeScale | ( | ) | const |
Starts a run duration. If there is an existing run duration cancels that duration and creates a new one. When the run duration is complete the timer is removed and the scenario is paused.
| double DtSimulationServices::exerciseTime | ( | ) | const |
Returns the start time of the exercise.
| double DtSimulationServices::exerciseStartTime | ( | ) | const |
Returns the start time of the exercise.
| int DtSimulationServices::scenarioRunId | ( | ) | const |
The run ID of the current scenario run. This is randomly chosen whenever a scenario is loaded or rewound.
| const DtReaderWriter::SearchPaths& DtSimulationServices::objectNavDataPaths | ( | ) | const |
| bool DtSimulationServices::runFullyThreaded | ( | ) | const |
| bool DtSimulationServices::allowInfiniteObjects | ( | ) | const |
| void DtSimulationServices::addMessageCallback | ( | int | type, |
| DtMessageCallbackFcn | fcn, | ||
| void * | usrData | ||
| ) |
| void DtSimulationServices::removeMessageCallback | ( | int | type, |
| DtMessageCallbackFcn | fcn, | ||
| void * | usrData | ||
| ) |
| bool DtSimulationServices::createAndDeliverMessage | ( | const DtSimulationAddress & | recipient, |
| const DtSimInterfaceContent & | content, | ||
| bool | overrideTimestampOrder = true, |
||
| bool | sendImmediately = false |
||
| ) | const |
| bool DtSimulationServices::canTransferObjects | ( | ) | const |
| void DtSimulationServices::receiveMessage | ( | const DtSimInterfaceMessage & | ) |
| DtU32 DtSimulationServices::scenarioCapabilities | ( | ) | const |
| const DtSimulationAddress& DtSimulationServices::simulationAddress | ( | ) | const |
| bool DtSimulationServices::shouldBlockOnAsynchronousOperations | ( | ) | const |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Sends out a generic server message to the various front-ends (or specific if front-end address given)
|
static |
| const DtSimImguiThread* DtSimulationServices::simImguiManager | ( | ) | const |
| DtSimImguiThread* DtSimulationServices::simImguiManager | ( | ) |
|
private |
Not implemented.
| VRF4API_METHOD const DtSimObjectManager* DtSimulationServices::vrfObjectManager | ( | ) | const |
Backwards compatible API to allow for older code to be compiled/used Deprecated. Use.
| VRF4API_METHOD const DtSimulationServices* DtSimulationServices::exerciseClock | ( | ) | const |
Deprecated. Use time methods direction on DtSimulationServices.
| VRF4API_METHOD const DtDetonationServiceInterface* DtSimulationServices::detonationManager | ( | ) | const |
Deprecated. Use DtSimulationServices::detonationService().
| VRF4API_METHOD DtDetonationServiceInterface* DtSimulationServices::detonationManager | ( | ) |
Deprecated. Use DtSimulationServices::detonationService().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |