20 #include <tbb/spin_mutex.h>
29 namespace makVrfEvents
31 class DtDetonationEvent;
64 virtual const char*
type()
const override;
67 virtual void tick()
override;
70 virtual void sendDetonation(
const DtVector& localPos,
const DtEntityType& munitionType);
82 static void removeHighFidelityDamageAlgorithm(
const DtString& algorithmId);
94 static void removeDynamicTerrainDamageCallback(
const DtSimCommand& cmd,
void* usr);
123 virtual bool processQueuedHighFidelityDamage(
const DtVector& localPos,
139 : localPos(lp), detonationPower(dp), damageConfig(dc) {};
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=nullptr, DtReaderWriterRegistry *parentRegistry=nullptr)
Static creator function for factory registration.
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
Definition: munitionTerrainDeformationEntry.h:13
Base class for any DtSimCommand which causes dynamic terrain changes to be added or removed...
Definition: dynamicTerrainCommand.h:20
HighFidelityQueue myHighFidelityQueue
Queue of high fidelity damage events that could not immediately be processed because data was not yet...
Definition: dynamicTerrainMunitionDamageController.h:151
virtual void tick() override
This component's simulation tick.
unsigned myCraterPriorityIncrement
Definition: dynamicTerrainMunitionDamageController.h:147
DtSimCommand which causes a specific list of dynamic terrain changes to take place at the specified g...
Definition: dynamicTerrainCommand.h:113
virtual void processAddDynamicTerrainChangesCommand(const DtAddDynamicTerrainChangesCommand &cmd)
Processes commands to add new changes to dynamic terrain.
DtDynamicTerrainMunitionDamageControllerDescriptor * myDynamicTerrainMunitionDamageDescriptor
Definition: dynamicTerrainMunitionDamageController.h:132
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
Definition: detonationEvent.h:20
DtDynamicTerrainMunitionDamageController is a controller that calculates and publishes terrain change...
Definition: dynamicTerrainController.h:53
A readable/writable list of detonation powers listed by type.
Definition: powerRangeDeterminantList.h:18
std::shared_ptr< PendingDynamicTerrainInformation > PendingDynamicTerrainInformationPtr
Definition: dynamicTerrainController.h:213
DtCraterModelDefinitionEntryList myCraterModelDefinitionEntryList
List of crater model definition to be used with a min/max power.
Definition: dynamicTerrainMunitionDamageController.h:154
Used to map soil types to OSG Earth Landcover strings.
Definition: vrfSoilToOsgEarthLandCoverMap.h:19
std::shared_ptr< DtDynamicTerrainMunitionDamageAlgorithm > DtDynamicTerrainMunitionDamageAlgorithmSP
Definition: dynamicTerrainMunitionDamageAlgorithm.h:65
DtSimCommand is an abstract base class from which commands can derive. It manages the read/write capa...
Definition: simCommand.h:32
HighFidelityQueueItem(const DtVector &lp, const DtPowerRangeDeterminantList *dp, const DtHighFidelityTerrainDamageConfig *dc)
Definition: dynamicTerrainMunitionDamageController.h:136
virtual void deregisterCallbacks()
Called by destructor to deregister any callbacks.
DtDynamicTerrainMunitionDamageController is a controller that calculates and publishes terrain change...
Definition: dynamicTerrainMunitionDamageController.h:39
Instances of DtDynamicTerrainMunitionDamageControllerDescriptor are used to specify the parameters fo...
Definition: dynamicTerrainMunitionDamageControllerDescriptor.h:18
const DtHighFidelityTerrainDamageConfig * damageConfig
Definition: dynamicTerrainMunitionDamageController.h:143
const DtPowerRangeDeterminantList * detonationPower
Definition: dynamicTerrainMunitionDamageController.h:142
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
Definition: highFidelityTerrainDamageConfig.h:23
DtSimCommand which causes all dynamic terrain damage to be removed at the specified geometry...
Definition: dynamicTerrainCommand.h:193
virtual bool processPendingDynamicTerrainInformation(PendingDynamicTerrainInformationPtr &)
Processes a pending dynamic terrain information request. If results are discovered, sends a response. If not sent returns false.
virtual const char * type() const override
DtDynamicTerrainController & operator=(const DtDynamicTerrainController &orig)
Not Implemented.
Definition: dynamicTerrainMunitionDamageController.h:134
std::list< HighFidelityQueueItem > HighFidelityQueue
Definition: dynamicTerrainMunitionDamageController.h:145
std::map< DtString, DtDynamicTerrainMunitionDamageAlgorithmSP > HighFidelityAlgorithmMap
Definition: dynamicTerrainMunitionDamageController.h:127
virtual void registerCallbacks()
Called by init to register any callbacks.
A locally simulated VRF object.
Definition: localObject.h:98