WSF
WsfBallisticMissileLaunchComputerSharedData Class Reference

#include <WsfBallisticMissileLaunchComputer.hpp>

Inheritance diagram for WsfBallisticMissileLaunchComputerSharedData:
Collaboration diagram for WsfBallisticMissileLaunchComputerSharedData:

Public Member Functions

 WsfBallisticMissileLaunchComputerSharedData ()
 ~WsfBallisticMissileLaunchComputerSharedData () override
void GlobalPlatformDeleted (double aSimTime, WsfPlatform *aPlatformPtr)
bool Initialize () override
Public Member Functions inherited from WsfSimulationExtension
 WsfSimulationExtension ()
 ~WsfSimulationExtension () override=default
WsfSimulationGetSimulation () const
const WsfScenarioGetScenario () const
virtual void AddedToSimulation ()
virtual bool PrepareExtension ()
virtual bool PlatformsInitialized ()
virtual void PendingStart ()
virtual void Start ()
virtual void Complete (double aSimTime)
Public Member Functions inherited from WsfExtension
virtual ~WsfExtension ()=default
const std::string & GetExtensionName () const

Public Attributes

WsfBallisticMissileLaunchComputer::TargetMap mTargetDataMap
std::map< WsfStringId, WsfStringIdmTargetAeroMap
std::map< WsfStringId, double > mTargetMassMap
UtCallbackHolder mCallbacks

Additional Inherited Members

static void __private_SetSim (WsfSimulationExtension &aExtension, WsfSimulation *aSimPtr)
Protected Member Functions inherited from WsfExtension
void InitializeExtensionName (const std::string &aName)

Constructor & Destructor Documentation

◆ WsfBallisticMissileLaunchComputerSharedData()

WsfBallisticMissileLaunchComputerSharedData::WsfBallisticMissileLaunchComputerSharedData ( )

◆ ~WsfBallisticMissileLaunchComputerSharedData()

WsfBallisticMissileLaunchComputerSharedData::~WsfBallisticMissileLaunchComputerSharedData ( )
override

References mTargetDataMap.

Member Function Documentation

◆ GlobalPlatformDeleted()

void WsfBallisticMissileLaunchComputerSharedData::GlobalPlatformDeleted ( double aSimTime,
WsfPlatform * aPlatformPtr )

A simulation observer for platform deletions.

This method is registered as a simulation callback and is called whenever a platform is deleted. The method will delete any trajectory that exists in the static shared target data table.

Note
This cannot be done in the instance-specific PlatformDeleted method because all of the launch computer objects may get deleted before the target platform. In that case the callback would never get called with the target platform as the argument and the target data would never be cleaned up.

References WsfPlatform::GetIndex(), and mTargetDataMap.

Referenced by Initialize().

◆ Initialize()

bool WsfBallisticMissileLaunchComputerSharedData::Initialize ( )
overridevirtual

Called in response to WsfSimulation::Initialize. This is called to allow the extension to perform any initialization that is required.

Note
The extension should not assume that another extension has been initialized unless it this extension has been registered as a dependency of the other extension.

Reimplemented from WsfSimulationExtension.

References WsfSimulationExtension::GetSimulation(), GlobalPlatformDeleted(), mCallbacks, and WsfObserver::PlatformDeleted().

Member Data Documentation

◆ mCallbacks

UtCallbackHolder WsfBallisticMissileLaunchComputerSharedData::mCallbacks

Referenced by Initialize().

◆ mTargetAeroMap

std::map<WsfStringId, WsfStringId> WsfBallisticMissileLaunchComputerSharedData::mTargetAeroMap

◆ mTargetDataMap

WsfBallisticMissileLaunchComputer::TargetMap WsfBallisticMissileLaunchComputerSharedData::mTargetDataMap

The target map contains predicted trajectory data for targets being evaluated. This data is shared among all instances of this class because the results are independent of the evaluator (we are using truth data for the prediction, so all evaluators will see the same predicted results).

Referenced by GlobalPlatformDeleted(), and ~WsfBallisticMissileLaunchComputerSharedData().

◆ mTargetMassMap

std::map<WsfStringId, double> WsfBallisticMissileLaunchComputerSharedData::mTargetMassMap

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved