11 #include <matrix/vlVector.h>
13 #include <vl/fireInteraction.h>
29 #include <tbb/recursive_mutex.h>
95 virtual bool reinitialize();
105 virtual bool registerFireTarget(
DtVrfObject& entity,
107 void* callbackObject,
108 DtFireProcessingFunction func);
119 virtual bool registerFireTargetForRemoval(
DtVrfObject& entity);
128 virtual bool unRegisterFireTarget(
DtVrfObject& entity);
131 virtual void sendFireInteraction(DtFireInteraction& fire);
137 virtual bool registerFireInArea(
const DtVrfObject& entity,
139 DtFireProcessingFunction func);
143 virtual bool unRegisterFireInAreaCallback(
const DtVrfObject& entity,
void* callbackObject,
144 DtFireProcessingFunction func);
152 virtual double lookupMunitionInFireRangeMap(
181 virtual void processFire(
const DtFireInteraction& fire);
190 virtual void determineUnderFire(
const DtFireInteraction& fireInter);
193 virtual void removeQueuedFireTargets();
196 virtual void fireEvent(
const DtEvent&);
197 virtual void detonationEvent(
const DtEvent&);
202 virtual void processFireForEntitiesInRange(
const DtFireInteraction& fireInter);
std::map< const DtVrfObject *, DtFireProcessingFunction > DtFireCallbackFuncs
Definition: fireManager.h:48
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtFireRangeMap munitionMap
Definition: fireManager.h:57
DtFireRangeCallbackInfoList callbacks
Definition: fireManager.h:66
DtSimManager & mySimManager
Definition: fireManager.h:228
DtFireRangeInfoMap myFireRangeInfoMap
Definition: fireManager.h:230
std::map< const DtVrfObject *, DtGlobalObjectDesignator > 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
The DtFireManager class exists to centralize the processing of fire interactions. ...
Definition: fireManager.h:42
Arguments passed by the DtVrfObjectManager::addUUISChangedCallback callbacks.
Definition: vrfObjectManager.h:159
Definition: fireManager.h:62
std::map< DtUUID, DtFireRangeInfoPtr > DtFireRangeInfoMap
Definition: fireManager.h:71
tbb::recursive_mutex myMutex
Definition: fireManager.h:229
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtFireProcessingFunction callbackFcn
Definition: fireManager.h:55
DtRegisteredVrfObjects myFireTargets
A container of vrfObjects that have registered for fire interaction processing.
Definition: fireManager.h:214
DtFireCallbackFuncs myFireCallbacks
The callback functions registered by the vrfObjects.
Definition: fireManager.h:218
DtBoost::shared_ptr< DtFireRangeInfo > DtFireRangeInfoPtr
Definition: fireManager.h:69
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
DtDetonationPdu DtDetonationInteraction
Definition: DistributedSimulationDriver3A.h:14
std::map< DtSimMunition, double > DtFireRangeMap
Definition: fireManager.h:51
DtGlobalObjectDesignator globalId
Definition: fireManager.h:65
std::vector< DtVrfObject * > myFireTargetsToBeRemoved
This container contains all the fire targets to be removed.
Definition: fireManager.h:226
std::list< DtFireRangeCallbackInfo > DtFireRangeCallbackInfoList
Definition: fireManager.h:60
Definition: fireManager.h:53
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::map< const DtVrfObject *, void * > DtFireCallbackObjects
Definition: fireManager.h:49
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:102
const DtVrfObject * vrfObject
Definition: fireManager.h:64
DtSimMunition class.
Definition: simMunition.h:34
DtFireCallbackObjects myFireCallbackObjects
To ensure that the callback has all the data necessary, this callback object is registered by the vrf...
Definition: fireManager.h:223
void * callbackUserData
Definition: fireManager.h:56