11 #include <matrix/vlVector.h>
24 #include <tbb/recursive_mutex.h>
26 namespace makVrfEvents
93 virtual bool reinitialize();
105 virtual bool registerFireTarget(
const DtUUID& entityId,
double distance,
106 void* callbackObject, DtFireProcessingFunction func);
117 virtual bool registerFireTargetForRemoval(
const DtUUID& entity);
126 virtual bool unRegisterFireTarget(
const DtUUID& entity);
135 virtual bool registerFireInArea(
const DtUUID& entityId,
DtSimMunition munition,
double maxRadius,
void* callbackObject,
136 DtFireProcessingFunction func);
140 virtual bool unRegisterFireInAreaCallback(
const DtUUID& entity,
void* callbackObject,
141 DtFireProcessingFunction func);
149 virtual double lookupMunitionInFireRangeMap(
180 virtual void processUUIDChanged(
const DtUUID& oldUUID,
const DtUUID& newUUID);
189 virtual void removeQueuedFireTargets();
222 bool myConnectionsMade =
false;
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtFireRangeMap munitionMap
Definition: fireManager.h:56
DtFireRangeCallbackInfoList callbacks
Definition: fireManager.h:64
Definition: fireEvent.h:16
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
DtSimulationServices * mySimulationServices
Definition: fireManager.h:218
DtFireRangeInfoMap myFireRangeInfoMap
Definition: fireManager.h:220
std::map< DtUUID, DtSimObjectReference > DtRegisteredVrfObjects
Definition: fireManager.h:47
The DtFireContext class exists to contain all the relevent information necessary for an entity to pro...
Definition: fireContext.h:23
Definition: detonationEvent.h:20
The DtFireManager class exists to centralize the process of sending and receiving of fire interaction...
Definition: fireManager.h:42
double myMaxDistance
The maximum distance from a detonation that could result in a registered callback being called...
Definition: fireManager.h:226
Definition: fireManager.h:61
std::map< DtUUID, DtFireRangeInfoPtr > DtFireRangeInfoMap
Definition: fireManager.h:69
std::map< DtUUID, std::pair< DtFireProcessingFunction, void * > > DtFireCallbackFuncs
Definition: fireManager.h:48
tbb::recursive_mutex myMutex
Definition: fireManager.h:219
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
DtSimObjectReference vrfObject
Definition: fireManager.h:63
DtFireProcessingFunction callbackFcn
Definition: fireManager.h:54
DtRegisteredVrfObjects myFireTargets
A container of vrfObjects that have registered for fire interaction processing.
Definition: fireManager.h:209
DtFireCallbackFuncs myFireCallbacks
The callback functions registered by the vrfObjects. When a fire interaction occurs, the callback associated with the appropriate entity is used.
Definition: fireManager.h:213
DtBoost::shared_ptr< DtFireRangeInfo > DtFireRangeInfoPtr
Definition: fireManager.h:67
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
std::map< DtSimMunition, double > DtFireRangeMap
Definition: fireManager.h:50
std::list< DtFireRangeCallbackInfo > DtFireRangeCallbackInfoList
Definition: fireManager.h:59
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:95
Definition: fireManager.h:52
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::vector< DtUUID > myFireTargetsToBeRemoved
This container contains all the fire targets to be removed.
Definition: fireManager.h:216
DtSimMunition class.
Definition: simMunition.h:31
void * callbackUserData
Definition: fireManager.h:55