WSF
engage::SimulationExtension Class Reference

#include <SimulationExtension.hpp>

Inheritance diagram for engage::SimulationExtension:
Collaboration diagram for engage::SimulationExtension:

Public Member Functions

 SimulationExtension ()
 ~SimulationExtension () override
void AddedToSimulation () override
bool Initialize () override
void FrameStarting (double aSimTime)
void PlatformUpdated (double aSimTime, WsfPlatform *aPlatformPtr)
Public Member Functions inherited from WsfSimulationExtension
 WsfSimulationExtension ()
 ~WsfSimulationExtension () override=default
WsfSimulationGetSimulation () const
const WsfScenarioGetScenario () const
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

Simulation observers

void AdvanceTime (double aSimTime)
void FrameComplete (double aSimTime)
void PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr)
void PlatformAppearanceChanged (double aSimTime, WsfPlatform *aPlatformPtr, WsfObserver::AppearanceType aAppearanceType)
void PlatformDeleted (double aSimTime, WsfPlatform *aPlatformPtr)
void PlatformKilled (double aSimTime, WsfPlatform *aPlatformPtr)
void SensorDetectionAttempt (double aSimTime, WsfSensor *aSensorPtr, WsfPlatform *aTargetPtr, WsfSensorResult &aResult)
void SensorDetectionChanged (double aSimTime, WsfSensor *aSensorPtr, size_t aTargetIndex, WsfSensorResult &aResult)
void SensorFrequencyChanged (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr)
void SensorModeActivated (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr)
void SensorModeDeactivated (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr)
void SensorNonOperational (double aSimTime, WsfSensor *aSensorPtr)
void SensorOperational (double aSimTime, WsfSensor *aSensorPtr)
void SensorRequestCanceled (double aSimTime, WsfSensor *aSensorPtr, const WsfTrack *aTrackPtr)
void SensorRequestInitiated (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr, const WsfTrack *aTrackPtr)
void SensorRequestUpdated (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr, const WsfTrack *aTrackPtr)
void SensorTrackCoasted (double aSimTime, WsfSensor *aSensorPtr, const WsfTrack *aTrackPtr)
void SensorTrackDropped (double aSimTime, WsfSensor *aSensorPtr, const WsfTrack *aTrackPtr)
void SensorTrackInitiated (double aSimTime, WsfSensor *aSensorPtr, const WsfTrack *aTrackPtr)
void SensorTrackUpdated (double aSimTime, WsfSensor *aSensorPtr, const WsfTrack *aTrackPtr)
void SensorTurnedOff (double aSimTime, WsfSensor *aSensorPtr)
void SensorTurnedOn (double aSimTime, WsfSensor *aSensorPtr)
void SimulationComplete (double aSimTime)
void WeaponFireAborted (double aSimTime, WsfWeapon *aWeaponPtr, const WsfTrack *aTargetTrackPtr, double aQuantity)
void WeaponFired (double aSimTime, const WsfWeaponEngagement *aEngagementPtr, const WsfTrack *aTargetTrackPtr)
void WeaponFireRequested (double aSimTime, WsfWeapon *aWeaponPtr, const WsfTrack *aTargetTrackPtr, double aQuantity)
void WeaponHit (double aSimTime, const WsfWeaponEngagement *aEngagementPtr, WsfPlatform *aTargetPtr)
void WeaponKilled (double aSimTime, WsfWeapon *aWeaponPtr)
void WeaponMissed (double aSimTime, const WsfWeaponEngagement *aEngagementPtr, WsfPlatform *aTargetPtr)
void WeaponTerminated (double aSimTime, const WsfWeaponEngagement *aEngagementPtr)

Additional Inherited Members

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

Detailed Description

The simulation extension for ENGAGE.

This contains the simulation observers for events of interest.

Constructor & Destructor Documentation

◆ SimulationExtension()

engage::SimulationExtension::SimulationExtension ( )

◆ ~SimulationExtension()

engage::SimulationExtension::~SimulationExtension ( )
override

Member Function Documentation

◆ AddedToSimulation()

void engage::SimulationExtension::AddedToSimulation ( )
overridevirtual

Called in response to WsfSimulation::RegisterExtension. The extension has now been registered in the simulation.

Reimplemented from WsfSimulationExtension.

References AdvanceTime(), WsfObserver::AdvanceTime(), FrameComplete(), WsfObserver::FrameComplete(), FrameStarting(), WsfObserver::FrameStarting(), WsfSimulationExtension::GetSimulation(), engage::Simulation::GetTask(), PlatformAdded(), WsfObserver::PlatformAdded(), PlatformAppearanceChanged(), WsfObserver::PlatformAppearanceChanged(), WsfObserver::PlatformBroken(), PlatformDeleted(), WsfObserver::PlatformDeleted(), PlatformKilled(), SensorDetectionAttempt(), WsfObserver::SensorDetectionAttempt(), SensorDetectionChanged(), WsfObserver::SensorDetectionChanged(), SensorFrequencyChanged(), WsfObserver::SensorFrequencyChanged(), SensorModeActivated(), WsfObserver::SensorModeActivated(), SensorModeDeactivated(), WsfObserver::SensorModeDeactivated(), SensorNonOperational(), WsfObserver::SensorNonOperational(), SensorOperational(), WsfObserver::SensorOperational(), SensorRequestCanceled(), WsfObserver::SensorRequestCanceled(), SensorRequestInitiated(), WsfObserver::SensorRequestInitiated(), SensorRequestUpdated(), WsfObserver::SensorRequestUpdated(), SensorTrackCoasted(), WsfObserver::SensorTrackCoasted(), SensorTrackDropped(), WsfObserver::SensorTrackDropped(), SensorTrackUpdated(), WsfObserver::SensorTrackUpdated(), SensorTurnedOff(), WsfObserver::SensorTurnedOff(), SensorTurnedOn(), WsfObserver::SensorTurnedOn(), SimulationComplete(), WsfObserver::SimulationComplete(), WeaponFireAborted(), WsfObserver::WeaponFireAborted(), WeaponFired(), WsfObserver::WeaponFired(), WeaponFireRequested(), WsfObserver::WeaponFireRequested(), WeaponHit(), WsfObserver::WeaponHit(), WeaponKilled(), WsfObserver::WeaponKilled(), WeaponMissed(), WsfObserver::WeaponMissed(), WeaponTerminated(), WsfObserver::WeaponTerminated(), and WsfSimulationExtension::WsfSimulation.

◆ AdvanceTime()

void engage::SimulationExtension::AdvanceTime ( double aSimTime)

◆ FrameComplete()

void engage::SimulationExtension::FrameComplete ( double aSimTime)

Referenced by AddedToSimulation().

◆ FrameStarting()

void engage::SimulationExtension::FrameStarting ( double aSimTime)

Referenced by AddedToSimulation().

◆ Initialize()

bool engage::SimulationExtension::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 WsfDisDevice::cDEVICE_RECORD, WsfDisInterface::Find(), WsfEventOutput::Find(), WsfDisInput::GetDeviceConfigurations(), wsf::event::output::SimulationExtension::GetFileName(), WsfSimulationExtension::GetSimulation(), WsfDisInput::DeviceConfiguration::mAddress, WsfDisInput::DeviceConfiguration::mDeviceType, ok, and wsf::event::output::SimulationExtension::OpenFile().

◆ PlatformAdded()

void engage::SimulationExtension::PlatformAdded ( double aSimTime,
WsfPlatform * aPlatformPtr )

References WsfObject::GetName().

Referenced by AddedToSimulation().

◆ PlatformAppearanceChanged()

void engage::SimulationExtension::PlatformAppearanceChanged ( double aSimTime,
WsfPlatform * aPlatformPtr,
WsfObserver::AppearanceType aAppearanceType )

References WsfObject::GetName().

Referenced by AddedToSimulation().

◆ PlatformDeleted()

void engage::SimulationExtension::PlatformDeleted ( double aSimTime,
WsfPlatform * aPlatformPtr )

References WsfObject::GetName().

Referenced by AddedToSimulation().

◆ PlatformKilled()

void engage::SimulationExtension::PlatformKilled ( double aSimTime,
WsfPlatform * aPlatformPtr )

References WsfObject::GetName().

Referenced by AddedToSimulation().

◆ PlatformUpdated()

void engage::SimulationExtension::PlatformUpdated ( double aSimTime,
WsfPlatform * aPlatformPtr )

◆ SensorDetectionAttempt()

void engage::SimulationExtension::SensorDetectionAttempt ( double aSimTime,
WsfSensor * aSensorPtr,
WsfPlatform * aTargetPtr,
WsfSensorResult & aResult )

Referenced by AddedToSimulation().

◆ SensorDetectionChanged()

void engage::SimulationExtension::SensorDetectionChanged ( double aSimTime,
WsfSensor * aSensorPtr,
size_t aTargetIndex,
WsfSensorResult & aResult )

Referenced by AddedToSimulation().

◆ SensorFrequencyChanged()

void engage::SimulationExtension::SensorFrequencyChanged ( double aSimTime,
WsfSensor * aSensorPtr,
WsfSensorMode * aModePtr )

Referenced by AddedToSimulation().

◆ SensorModeActivated()

void engage::SimulationExtension::SensorModeActivated ( double aSimTime,
WsfSensor * aSensorPtr,
WsfSensorMode * aModePtr )

Referenced by AddedToSimulation().

◆ SensorModeDeactivated()

void engage::SimulationExtension::SensorModeDeactivated ( double aSimTime,
WsfSensor * aSensorPtr,
WsfSensorMode * aModePtr )

Referenced by AddedToSimulation().

◆ SensorNonOperational()

void engage::SimulationExtension::SensorNonOperational ( double aSimTime,
WsfSensor * aSensorPtr )

Referenced by AddedToSimulation().

◆ SensorOperational()

void engage::SimulationExtension::SensorOperational ( double aSimTime,
WsfSensor * aSensorPtr )

Referenced by AddedToSimulation().

◆ SensorRequestCanceled()

void engage::SimulationExtension::SensorRequestCanceled ( double aSimTime,
WsfSensor * aSensorPtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorRequestInitiated()

void engage::SimulationExtension::SensorRequestInitiated ( double aSimTime,
WsfSensor * aSensorPtr,
WsfSensorMode * aModePtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorRequestUpdated()

void engage::SimulationExtension::SensorRequestUpdated ( double aSimTime,
WsfSensor * aSensorPtr,
WsfSensorMode * aModePtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorTrackCoasted()

void engage::SimulationExtension::SensorTrackCoasted ( double aSimTime,
WsfSensor * aSensorPtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorTrackDropped()

void engage::SimulationExtension::SensorTrackDropped ( double aSimTime,
WsfSensor * aSensorPtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorTrackInitiated()

void engage::SimulationExtension::SensorTrackInitiated ( double aSimTime,
WsfSensor * aSensorPtr,
const WsfTrack * aTrackPtr )

◆ SensorTrackUpdated()

void engage::SimulationExtension::SensorTrackUpdated ( double aSimTime,
WsfSensor * aSensorPtr,
const WsfTrack * aTrackPtr )

Referenced by AddedToSimulation().

◆ SensorTurnedOff()

void engage::SimulationExtension::SensorTurnedOff ( double aSimTime,
WsfSensor * aSensorPtr )

Referenced by AddedToSimulation().

◆ SensorTurnedOn()

void engage::SimulationExtension::SensorTurnedOn ( double aSimTime,
WsfSensor * aSensorPtr )

Referenced by AddedToSimulation().

◆ SimulationComplete()

void engage::SimulationExtension::SimulationComplete ( double aSimTime)

Referenced by AddedToSimulation().

◆ WeaponFireAborted()

void engage::SimulationExtension::WeaponFireAborted ( double aSimTime,
WsfWeapon * aWeaponPtr,
const WsfTrack * aTargetTrackPtr,
double aQuantity )

◆ WeaponFired()

◆ WeaponFireRequested()

void engage::SimulationExtension::WeaponFireRequested ( double aSimTime,
WsfWeapon * aWeaponPtr,
const WsfTrack * aTargetTrackPtr,
double aQuantity )

◆ WeaponHit()

void engage::SimulationExtension::WeaponHit ( double aSimTime,
const WsfWeaponEngagement * aEngagementPtr,
WsfPlatform * aTargetPtr )

◆ WeaponKilled()

void engage::SimulationExtension::WeaponKilled ( double aSimTime,
WsfWeapon * aWeaponPtr )

References WsfObject::GetName().

Referenced by AddedToSimulation().

◆ WeaponMissed()

void engage::SimulationExtension::WeaponMissed ( double aSimTime,
const WsfWeaponEngagement * aEngagementPtr,
WsfPlatform * aTargetPtr )

◆ WeaponTerminated()


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