WSF
WsfPlatformPart Class Referenceabstract

#include <WsfPlatformPart.hpp>

Inheritance diagram for WsfPlatformPart:
Collaboration diagram for WsfPlatformPart:

Public Types

enum  { cLEVEL_ONE_DEBUG = 0x00000001 , cLEVEL_TWO_DEBUG = 0x00000002 }
using InternalMessageQueue = std::queue<WsfMessage*>
using RecipientMessageQueue = std::queue<std::pair<WsfPlatformPart*, WsfMessage*>>
Public Types inherited from WsfObject
typedef std::vector< WsfStringIdTypeList
 The list of types returned by GetTypeList.
Public Types inherited from WsfComponentT< WsfPlatform >
typedef WsfPlatform ParentType
 This is needed to support the WsfComponentList template.

Public Member Functions

 WsfPlatformPart (const WsfScenario &aScenario, int aPartType)
WsfPlatformPartoperator= (const WsfPlatformPart &aRhs)=delete
 ~WsfPlatformPart () override
const int * GetComponentRoles () const override
void * QueryInterface (int aRole) override
Public Member Functions inherited from WsfObject
 WsfObject ()
 This is the constructor for the WsfObject class.
 ~WsfObject () override
 This is the destructor for the WsfObject class.
const char * GetScriptClassName () const override
virtual WsfObjectClone () const =0
const std::string & GetType () const
WsfStringId GetTypeId () const
 Get the string ID of the 'type' of the object.
void SetType (WsfStringId aType)
const std::string & GetBaseType () const
WsfStringId GetBaseTypeId () const
const TypeListGetTypeList () const
bool IsA_TypeOf (WsfStringId aType) const
WsfObjectoperator= (const WsfObject &aRhs)
 Assignment operator.
template<typename T>
void Serialize (T &aBuff)
 For XIO (de)serialization.
const std::string & GetName () const
WsfStringId GetNameId () const
void SetName (WsfStringId aName)
Public Member Functions inherited from WsfComponentT< WsfPlatform >
 WsfComponentT ()
 WsfComponentT (const WsfComponentT &) noexcept
WsfComponentToperator= (const WsfComponentT &) noexcept
 ~WsfComponentT () override=default
ParentTypeGetComponentParent () const
void SetComponentParent (ParentType *aParentPtr)
Public Member Functions inherited from WsfComponent
virtual ~WsfComponent ()=default
virtual WsfComponentCloneComponent () const =0
virtual int GetComponentInitializationOrder () const
template<typename T>
bool QueryInterfaceT (T *&aRolePtr)
bool ComponentHasRole (int aRole)
 Returns true if the component has the specified role.
virtual bool PreInitialize (double aSimTime)
virtual void PreInput ()
Public Member Functions inherited from WsfUniqueId
 WsfUniqueId ()
 Construtor initializes the unique identifier to 0.
 WsfUniqueId (const WsfUniqueId &)
 Copy constructor initializes the unique identifier to 0.
WsfUniqueIdoperator= (const WsfUniqueId &)
unsigned int GetUniqueId () const
 Get the unique identifier assigned to this object.
template<typename T>
void Serialize (T &aBuff)
 For XIO (de)serialization.
Public Member Functions inherited from WsfAuxDataEnabled
 WsfAuxDataEnabled ()=default
 WsfAuxDataEnabled (const WsfAuxDataEnabled &aSrc)=default
WsfAuxDataEnabledoperator= (const WsfAuxDataEnabled &aRhs)
 WsfAuxDataEnabled (WsfAuxDataEnabled &&)=default
WsfAuxDataEnabledoperator= (WsfAuxDataEnabled &&)=default
virtual ~WsfAuxDataEnabled () noexcept
void SetAuxData (const WsfAttributeContainer &aAuxData)
void DeleteAuxData ()
 Delete the aux data container from the object.
void MergeAuxData (const WsfAuxDataEnabled &aSrc)
 Merge the object's aux data with aux data from an existing object.
void UpdateAuxData (const WsfAuxDataEnabled &aSrc)
 Update the object's aux data with aux data from an existing object.
bool HasAuxData () const
 Returns true if this object has aux data.
bool ProcessInput (UtInput &aInput)
template<typename T>
void Serialize (T &aBuff)
 (De)serialization for XIO
WsfAttributeContainerGetAuxData ()
const WsfAttributeContainerGetAuxData () const noexcept
const WsfAttributeContainerGetAuxDataConst () const noexcept

debugging control

bool DebugEnabled () const
 Returns 'true' if debugging is enabled for this instance.
void SetDebugEnabled (bool aDebugEnabled)
unsigned int GetDebugMask ()
bool IsExternallyControlled () const
virtual void SetExternallyControlled (double aSimTime, bool aIsExternallyControlled)
int GetPartType () const
const char * GetScriptClassName () const override
WsfSimulationGetSimulation () const
const WsfScenarioGetScenario () const
 WsfPlatformPart (const WsfPlatformPart &aSrc)
 Copy constructor (for Clone()).

Component infrastructure methods.

Note that all of the required methods are not defined by this class. They are defined by the leaf that defines the platform part (e.g. WsfComm, WsfProcessor, etc.).

WsfStringId GetComponentName () const override
void ComponentParentChanged (WsfPlatform *aPlatformPtr) override

Common infrastructure methods.

bool Initialize (double aSimTime) override
bool Initialize2 (double aSimTime) override
bool ProcessInput (UtInput &aInput) override
virtual void Update (double aSimTime)

Platform association methods.

WsfPlatformGetPlatform () const
virtual void SetPlatform (WsfPlatform *aPlatformPtr)

Platform notification methods.

These methods are invoked whenever another platform is added or deleted from the simulation.

virtual void PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr)
virtual void PlatformDeleted (WsfPlatform *aPlatformPtr)

Status (on/off) methods.

double GetLastStatusChangeTime () const
void SetLastStatusChangeTime (double aSimTime)
 Allows a system to set the time at which the device was initialized.
bool CanBeMadeOperational () const
 Returns an indication that this system can be made operational.
bool CanBeMadeNonOperational () const
 Returns an indication that this system can be made non-operational.
bool CanBeTurnedOn () const
 Returns an indication that this system can be turned on.
bool CanBeTurnedOff () const
 Returns an indication that this system can be turned off.
bool IsTurnedOn () const
bool InitiallyTurnedOn () const
 Is the system to be turned 'on' when added to the simulation?
void SetInitiallyTurnedOn (bool aInitiallyTurnedOn)
 Sets if the system is turned on when added to the simulation.
virtual void TurnOff (double aSimTime)
virtual void TurnOn (double aSimTime)
virtual void SetOperational (double aSimTime)
virtual void SetNonOperational (double aSimTime)
virtual void PartBroken (double aSimTime)
virtual void Restore (double aSimTime)

Operational status methods.

A part may be defined to be non-operational, in which case it cannot be used (turned on) until it is made operational. This can be used to deactivate a certain part without having to remove it from the platform.

bool IsOperational () const
bool SetOperational (double aSimTime, bool aMakeOperational)
double GetDamageFactor () const
bool SetDamageFactor (double aSimTime, double aDamageFactor)
bool IsCritical () const
void SetCritical (bool aValue)
virtual void OnPlatformBrokenEvent (double aSimTime)
 Owning platform has issued a broken event.
bool IsBroken () const

Inter-part communication methods.

WsfInternalLinksGetInternalLinks ()
 Return the internal links for this part.
virtual bool HasInternalLinks () const
 Does this platform part have a communication link to other platform parts?
virtual bool ProcessMessage (double aSimTime, const WsfMessage &aMessage)
virtual bool ReceiveMessage (double aSimTime, const WsfMessage &aMessage)
virtual void SendMessage (double aSimTime, const WsfMessage &aMessage)

Recipient communication methods.

virtual void SendMessageTo (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId)
void SendMessageToProcessor (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId)
virtual void SendQueuedMessages (double aSimTime)

Category methods.

These methods allow the parts to 'categorized'.

const WsfCategoryListGetCategories () const
 Get the categories to which this part belongs.
void AddCategory (WsfStringId aCategoryId)
 Adds the provided category to the platform part's category list.
bool IsCategoryMember (WsfStringId aCategoryId) const

Group management.

const WsfGroupListGetGroups () const
 Get the groups to which this platform part belongs.
void JoinGroup (WsfGroup *aGroupPtr)
 Join the given group.
void LeaveGroup (WsfGroup *aGroupPtr)
 Leave the given group.
bool IsGroupMember (WsfStringId aGroupId)

Event-Driven simulation methods.

virtual double GetUpdateInterval () const =0

Methods for simulation control of the update interval.

Note
These methods are only intended for use by simulation executives (classes derived from WsfSimulation) and WsfPlatformPartEvent and should not be invoked from any other place. Any other use is at your own risk.
virtual void SetUpdateInterval (double aUpdateInterval)=0
unsigned int GetUpdateEventEpoch () const
void IncrementUpdateEventEpoch ()
bool UpdateEventActive () const
 Is an 'Update' event active?
void SetUpdateEventActive (bool aUpdateEventActive)
 Indicate if the 'Update' event is active.

Additional Inherited Members

Static Public Attributes inherited from WsfAuxDataEnabled
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataAccessed
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataDestroyed
 WsfObject (const WsfObject &aSrc)
 Copy constructor (for Clone()).
Protected Member Functions inherited from WsfUniqueId
void AssignUniqueId (WsfSimulation *aSimulationPtr)

Detailed Description

WsfPlatformPart is the base object for all objects aggregated by platforms.

These objects include the following:

This base class provides the abstract interface that subclasses must support:

It also provides:

  • The ability for the parts to be send messages to other parts on the platform.
  • Support for inclusion within categories (see WsfCategoryList)

It enforces that:

  • Setting damage to 1.0 at least temporarily disables the part:
  • a. If Turned On, it is Forced Off.
  • b. If Operational, it is set Non-Operational.
  • c. If identified as not restorable, damage state latches at 1.0 (broken).
  • d. If identified as critical, the containing platform is destroyed.
  • e. Observer call-backs are embedded for state transitions.

Member Typedef Documentation

◆ InternalMessageQueue

◆ RecipientMessageQueue

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
cLEVEL_ONE_DEBUG 

General debug.

cLEVEL_TWO_DEBUG 

Full debug.

Constructor & Destructor Documentation

◆ WsfPlatformPart() [1/2]

◆ ~WsfPlatformPart()

WsfPlatformPart::~WsfPlatformPart ( )
override

◆ WsfPlatformPart() [2/2]

WsfPlatformPart::WsfPlatformPart ( const WsfPlatformPart & aSrc)
protected

Member Function Documentation

◆ AddCategory()

void WsfPlatformPart::AddCategory ( WsfStringId aCategoryId)
inline

Adds the provided category to the platform part's category list.

Referenced by WsfRF_Jammer::ProcessInput().

◆ CanBeMadeNonOperational()

bool WsfPlatformPart::CanBeMadeNonOperational ( ) const
inline

Returns an indication that this system can be made non-operational.

Referenced by SetOperational().

◆ CanBeMadeOperational()

bool WsfPlatformPart::CanBeMadeOperational ( ) const
inline

Returns an indication that this system can be made operational.

Referenced by SetOperational().

◆ CanBeTurnedOff()

bool WsfPlatformPart::CanBeTurnedOff ( ) const
inline

Returns an indication that this system can be turned off.

Referenced by WsfLaserDesignator::TurnOff().

◆ CanBeTurnedOn()

bool WsfPlatformPart::CanBeTurnedOn ( ) const
inline

Returns an indication that this system can be turned on.

Referenced by wsf::UCI_PartComponent::TurnOn(), WsfLaserDesignator::TurnOn(), and WsfSimulation::TurnPartOnP().

◆ ComponentParentChanged()

void WsfPlatformPart::ComponentParentChanged ( WsfPlatform * aParentPtr)
inlineoverridevirtual

The parent to which the component is attached has been updated. This virtual method is called whenever the components parent attachment has been changed. This is provided so derived class receives notification of the change.

Parameters
aParentPtrPointer to the new parent. The new parent may be null if the attachment was severed.

Reimplemented from WsfComponentT< WsfPlatform >.

References SetPlatform().

◆ DebugEnabled()

bool WsfPlatformPart::DebugEnabled ( ) const
inline

Returns 'true' if debugging is enabled for this instance.

Referenced by WsfExchangeProcessor::AddCapability(), WsfPassiveSensor::PassiveMode::AddInteractor(), WsfSensorProcessor::AddSensor(), WsfExplicitWeapon::AddWeaponToSimulation(), WsfFollower::AdvanceTime(), WsfIterativeRouteMover::AdvanceTime(), WsfWeaponFuse::Arm(), wsf::UCI_SensorComponent::Attach(), WsfAcousticSensor::AcousticMode::AttemptToDetect(), WsfBeamDirector::WsfBeamDirectorMode::AttemptToDetect(), WsfCompositeSensor::CompositeMode::AttemptToDetect(), WsfGeometricSensor::GeometricMode::AttemptToDetect(), WsfLADAR_Sensor::LADAR_Mode::AttemptToDetect(), WsfOpticalSensor::OpticalMode::AttemptToDetect(), WsfOTH_RadarSensor::OTH_Mode::AttemptToDetect(), WsfRadarSensor::RadarMode::AttemptToDetect(), WsfSAR_Sensor::SAR_Mode::AttemptToDetect(), WsfSOSM_Sensor::SOSM_Mode::AttemptToDetect(), WsfSurfaceWaveRadarSensor::RadarMode::AttemptToDetect(), WsfTRIMSIM_Processor::AttemptToDetect(), WsfImplicitWeapon::BeginEngagement(), WsfLaserWeapon::BeginShot(), WsfTankedFuel::BeginSupplyingFuelTo(), WsfPassiveSensor::PassiveMode::CanDetect(), wsf::comm::ComponentHW_JTIDS::CanReceiveFrom(), WsfLaserWeapon::CeaseFire(), WsfWeaponFuse::CheckAllTargets(), wsf::UCI_PartComponent::CheckPartStatus(), wsf::UCI_WeaponComponent::CommandWeapon(), WsfSAR_Sensor::SAR_Mode::ComputeGeometry(), WsfTBM_Mover::ComputeImpactRange(), WsfGuidanceComputer::ComputeInterceptData(), WsfTBM_Mover::ComputeMaximumRange(), WsfTRIMSIM_Processor::ComputeMeasurementErrors(), WsfTowedMover::ComputeTowDistance(), WsfTBM_Mover::ComputeTransitionStateVectors(), WsfAirMover::CrashIntoGround(), wsf::six_dof::Mover::CrashIntoGroundCB(), WsfP6DOF_Mover::CrashIntoGroundCB(), WsfDirectionFinderProcessor::CreateLocalTrack(), WsfRoadMover::CreateRoute(), WsfBeamDirector::WsfBeamDirectorMode::CreateTrackFromResult(), WsfTankedFuel::DecrementQuantity(), wsf::UCI_Component::DeregisterWithInterface(), WsfRF_Jammer::DeselectEA_Technique(), wsf::UCI_SensorComponent::Detach(), WsfTankedFuel::DisconnectFrom(), WsfChaffWeapon::DropChaffCloud(), WsfPassiveSensor::PassiveMode::EmitterActiveCallback(), WsfLaserWeapon::EndShot(), WsfPerfectTracker::EstablishNewTrack(), WsfLaserWeapon::EvaluateCooling(), WsfExchangeProcessor::ExchangeCompleted(), WsfExchangeProcessor::ExchangeRequestFailed(), WsfXIO_PlatformInfoService::FillPartState(), WsfChaffWeapon::Fire(), WsfExplicitWeapon::Fire(), WsfImplicitWeapon::Fire(), WsfWeaponTrackProcessor::GetInterceptData(), wsf::six_dof::Mover::GoToAltitude(), WsfIterativeRouteMover::GoToAltitude(), WsfP6DOF_Mover::GoToAltitude(), wsf::six_dof::Mover::GoToLocation(), WsfIterativeRouteMover::GoToLocation(), WsfP6DOF_Mover::GoToLocation(), WsfRouteMover::GoToLocation(), wsf::six_dof::Mover::GoToSpeed(), WsfIterativeRouteMover::GoToSpeed(), WsfP6DOF_Mover::GoToSpeed(), WsfRoadMover::GoToTrack(), wsf::UCI_WeaponComponent::HandleActivityCommand(), wsf::UCI_WeaponComponent::HandleCapabilityCommand(), WsfWaypointMover::HitWaypoint(), WsfTankedFuel::IncrementQuantity(), wsf::comm::Comm::Initialize(), wsf::six_dof::GuidanceComputer::Initialize(), WsfAcousticSensor::AcousticMode::Initialize(), WsfBeamDirector::WsfBeamDirectorMode::Initialize(), WsfCTD_SensorComponent::Initialize(), WsfFuel::Initialize(), WsfGuidanceComputer::Initialize(), WsfGuidanceProgram::Initialize(), WsfGuidedMover::Initialize(), WsfGuidedMoverBase::Initialize(), WsfHighEnergyLaser::Initialize(), WsfOTH_RadarSensor::OTH_Beam::Initialize(), WsfP6DOF_GuidanceComputer::Initialize(), WsfPassiveSensor::PassiveBeam::Initialize(), WsfRadarSensor::RadarBeam::Initialize(), WsfRF_Jammer::JammerMode::Initialize(), WsfSensor::Initialize(), WsfTBM_Mover::Initialize(), WsfTRIMSIM_ErrorModel::Initialize(), WsfCuedLaserWeapon::Initialize2(), WsfLaserWeapon::Initialize2(), WsfTaskManager::Initialize2(), WsfGuidedMover::InitiateMotion(), WsfParabolicMover::InitShot(), WsfImageProcessor::IsDetectable(), WsfThreatProcessor::IsThreatening(), WsfAirMover::Land(), WsfXIO_ObjectInfoLoad::Load_PlatformPart(), wsf::UCI_SensorComponent::OnSensorDeleted(), wsf::UCI_SensorComponent::OnSensorTurnedOff(), wsf::UCI_SensorComponent::OnSensorTurnedOn(), WsfCuedLaserWeapon::PauseFire(), WsfOTH_RadarSensor::PerformScheduledDetections(), WsfRadarSensor::PerformScheduledDetections(), WsfBeamDirector::PointAtTarget(), WsfBeamDirector::WsfBeamDirectorMode::PointAtTargetUpdate(), WsfBeamDirector::PointAtWCS(), WsfAirMover::PostMoveUpdate(), wsf::UCI_PartComponent::PrintMessageNotSent(), wsf::UCI_PartComponent::PrintMessageSent(), WsfWeaponFuse::PrivateDetonate(), WsfClassificationProcessor::ProcessInput(), WsfL16::ComputerProcessor::ProcessJMessage(), wsf::UCI_Computer::ProcessMessage(), wsf::UCI_IRST_Component::ProcessMessage(), WsfCompositeSensor::ProcessMessage(), WsfCuedLaserWeapon::ProcessMessage(), WsfDirectionFinderProcessor::ProcessMessage(), WsfImageProcessor::ProcessMessage(), WsfMessageProcessor::ProcessMessage(), WsfRIPRProcessor::ProcessMessage(), WsfTrackProcessor::ProcessMessage(), WsfUplinkProcessor::ProcessMessage(), WsfWeaponFuse::ProcessProximity(), WsfWeaponTrackProcessor::ProcessTrackDrop(), WsfWeaponTrackProcessor::ProcessTrackUpdate(), wsf::comm::SlotGroupLayerJTIDS::Receive(), wsf::UCI_AMTI_Component::ReceiveMessage(), wsf::UCI_WeaponComponent::ReceiveMessage(), WsfMessageProcessor::ReceiveMessage(), wsf::comm::Comm::ReceiveSetup(), wsf::UCI_Computer::ReceiveUCI_Message(), wsf::UCI_Component::RegisterWithInterface(), WsfPassiveSensor::PassiveMode::RemoveInteractor(), WsfSensorProcessor::RemoveSensor(), WsfCuedLaserWeapon::ResumeFire(), wsf::six_dof::Mover::ReturnToRoute(), WsfP6DOF_Mover::ReturnToRoute(), WsfBeamDirector::WsfBeamDirectorMode::Select(), WsfRF_Jammer::SelectEA_Technique(), wsf::UCI_WeaponComponent::SendActivityMessage(), wsf::UCI_PartComponent::SendSubsystemStatusMessage(), wsf::UCI_PartComponent::SendSystemStatusMessage(), WsfTrackProcessor::SendTrackP(), WsfTaskManager::SendTrackUpdate(), WsfCompositeSensor::SensorDetectionChanged(), WsfCompositeSensor::SensorTurnedOff(), WsfParabolicMover::SetBallistic(), wsf::UCI_SensorComponent::SetCommandAccepted(), WsfParabolicMover::SetCurrentTarget(), WsfWeaponTrackProcessor::SetCurrentTarget(), wsf::six_dof::Mover::SetDefaultRoute(), WsfP6DOF_Mover::SetDefaultRoute(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfParabolicMover::SetImpactTOFAndLLA(), WsfExplicitWeapon::SetLaunchState(), wsf::UCI_PartComponent::SetRejectedCurrentlyCommanded(), wsf::UCI_SensorComponent::SetRejectedFixedMode(), wsf::UCI_SensorComponent::SetRejectedModeDisabled(), wsf::UCI_SensorComponent::SetRejectedOutOfLimits(), wsf::UCI_SensorComponent::SetRejectedTypeUnavailable(), WsfExchangeProcessor::SetSupplierAbility(), WsfPerfectTracker::SetTargetByIndex(), WsfPerfectTracker::SetTargetByNameId(), wsf::six_dof::Mover::SetTempRoute(), WsfP6DOF_Mover::SetTempRoute(), WsfTrackProcessor::ShouldProcessInboundReport(), WsfRF_Jammer::StartJamming(), WsfRF_Jammer::StopJamming(), WsfAirMover::TakeOff(), wsf::UCI_PartComponent::TurnOff(), WsfBeamDirector::TurnOff(), wsf::UCI_PartComponent::TurnOn(), wsf::six_dof::Mover::TurnToHeading(), WsfIterativeRouteMover::TurnToHeading(), WsfP6DOF_Mover::TurnToHeading(), wsf::six_dof::Mover::TurnToRelativeHeading(), WsfP6DOF_Mover::TurnToRelativeHeading(), Fires::FiresMover::Update(), WsfCoherentSensorProcessor::Update(), WsfEOIR_Sensor::Update(), WsfPerfectTracker::Update(), WsfStraightLineMover::Update(), WsfTBM_Mover::Update(), WsfWeaponTrackProcessor::Update(), WsfCompositeSensor::UpdateCompositeTrack(), wsf::six_dof::GuidanceComputer::UpdateGuidance(), WsfGuidanceComputer::UpdateGuidance(), WsfP6DOF_GuidanceComputer::UpdateGuidance(), WsfRF_Jammer::UpdateJamming(), wsf::six_dof::Mover::UpdateRoute(), WsfP6DOF_Mover::UpdateRoute(), WsfRouteMover::UpdateRoute(), WsfWeaponTrackProcessor::UpdateTargetTrack(), WsfOffsetMover::UpdateTetheredState(), WsfCoherentSensorProcessor::UpdateTrack(), WsfImageProcessor::UpdateTrack(), WsfGuidedMoverBase::WriteTrajectoryOutput(), WsfDirectionFinderProcessor::~WsfDirectionFinderProcessor(), and WsfParabolicMover::~WsfParabolicMover().

◆ GetCategories()

const WsfCategoryList & WsfPlatformPart::GetCategories ( ) const
inline

Get the categories to which this part belongs.

Referenced by WsfBMUtils::GetSensorType(), and WsfMilExtInterface::GetWarheadEnum().

◆ GetComponentName()

WsfStringId WsfPlatformPart::GetComponentName ( ) const
inlineoverridevirtual

Returns the component's name. Each component in a component list has a unique name. Names are usually defined by the user, but they may also be generated by code and prefixed with a '#' to guarantee no collisions with user-defined names.

Implements WsfComponent.

References WsfObject::GetNameId().

◆ GetComponentRoles()

const int * WsfPlatformPart::GetComponentRoles ( ) const
overridevirtual

Returns a zero-terminated array of component roles. Note that the array should be in decreasing order of specificity and should generally the inheritance hierarchy. The first entry should be the components 'primary' role. For example a sensor would do the following:

return roles;
@ cWSF_COMPONENT_SENSOR
A 'sensor' component (WsfSensor).
Definition WsfComponentRoles.hpp:105
@ cWSF_COMPONENT_PLATFORM_PART
The component derives from WsfPlatformPart.
Definition WsfComponentRoles.hpp:98
@ cWSF_COMPONENT_ARTICULATED_PART
The component derives from WsfArticulatedPart.
Definition WsfComponentRoles.hpp:99

Implements WsfComponent.

Reimplemented in WsfProcessor, WsfRF_Jammer, WsfSensor, WsfSpaceMoverBase, WsfTaskManager, WsfThermalSystem, WsfVisualPart, and WsfWeapon.

References cWSF_COMPONENT_NULL, and cWSF_COMPONENT_PLATFORM_PART.

◆ GetDamageFactor()

double WsfPlatformPart::GetDamageFactor ( ) const
inline

Is the part damaged? Zero indicates undamaged. One indicates totally damaged. A transition from positive to zero will trigger the part type becoming non-operational as an observed event.

Returns
[0 to 1]

Referenced by WsfExplicitWeapon::Fire(), WsfImplicitWeapon::Fire(), WsfRotorcraftMover::LocalUpdate(), WsfAirMover::PostMoveUpdate(), WsfMover::Restore(), wsf::six_dof::Mover::SetDamageFactor(), WsfMover::UpdateAllowed(), wsf::six_dof::Mover::UpdateAppearance(), and WsfWaypointMover::UpdatePosition().

◆ GetDebugMask()

◆ GetGroups()

const WsfGroupList & WsfPlatformPart::GetGroups ( ) const
inline

Get the groups to which this platform part belongs.

◆ GetInternalLinks()

◆ GetLastStatusChangeTime()

double WsfPlatformPart::GetLastStatusChangeTime ( ) const
inline

Returns the time at which this system was last turned on or off.

Returns
The simulation time at which the device was turned on or off.

Referenced by wsf::comm::medium::Guided::TransmitMessage(), and wsf::comm::medium::Unguided::TransmitMessage().

◆ GetPartType()

◆ GetPlatform()

WsfPlatform * WsfPlatformPart::GetPlatform ( ) const
inline

Get the platform to which this part is attached.

Returns
Pointer to the containing platform or 0 if the part is not associated with a platform.

Referenced by WsfTaskManager::AcquireResource(), WsfEM_Manager::ActivateRcvr(), WsfEM_Manager::ActivateXmtr(), WsfExchangeProcessor::AddCapability(), wsf::comm::router::Router::AddInterface(), WsfBrawlerProcessor::AddSelfCalledConsciousnessEvent(), WsfSensorProcessor::AddSensor(), WsfUplinkProcessor::AddTrackUplink(), WsfUplinkProcessor::AddUplink(), WsfExplicitWeapon::AddWeaponToSimulation(), WsfFusionCenter::AdjustTrackQuantities(), WsfFollower::AdvanceTime(), WsfGuidedMover::AdvanceTime(), WsfGuidedMover::AdvanceTimeRK(), WsfGuidedMover::AdvanceTimeSinglestep(), WsfRIPRJobBoard::AllocateJobsCoverThenGreedy(), WsfRIPRJobBoard::AllocateJobsCoverThenSpread(), WsfRIPRJobBoard::AllocateJobsGreedy(), WsfBrawlerProcessor::Alpha(), WsfBrawlerProcessor::AlphaCL0(), wsf::six_dof::RigidBodyMover::ApplyExternalForce(), WsfP6DOF_Mover::ApplyExternalForce(), wsf::AbsoluteSensorErrorModel::ApplyMeasurementErrors(), WsfBrawlerProcessor::Area(), WsfWeaponFuse::Arm(), WsfAirMover::AssessDamage(), WsfRIPRJob::AssignerPlatform(), WsfQuantumTaskerProcessor::AssignTask(), WsfTaskManager::AssignTask(), WsfRateLimitedAttitudeController::AtTargetOrientation(), WsfAcousticSensor::AcousticMode::AttemptToDetect(), WsfBeamDirector::WsfBeamDirectorMode::AttemptToDetect(), WsfCompositeSensor::CompositeMode::AttemptToDetect(), WsfLADAR_Sensor::LADAR_Mode::AttemptToDetect(), WsfOpticalSensor::OpticalMode::AttemptToDetect(), WsfOTH_RadarSensor::OTH_Mode::AttemptToDetect(), WsfPassiveSensor::PassiveMode::AttemptToDetect(), WsfRadarSensor::RadarMode::AttemptToDetect(), WsfSAR_Sensor::SAR_Mode::AttemptToDetect(), WsfSOSM_Sensor::SOSM_Mode::AttemptToDetect(), WsfSurfaceWaveRadarSensor::RadarMode::AttemptToDetect(), WsfDirectedEnergyWeapon::BeginEngagement(), WsfImplicitWeapon::BeginEngagement(), WsfPathGuidance::BeginExtrapolation(), WsfLaserWeapon::BeginShot(), WsfTankedFuel::BeginSupplyingFuelTo(), WsfJTIDS_SlotGroup::BeginTransmitEvent(), WsfRIPRProcessor::BiddingHijacked(), WsfRIPRJobBoard::BlockJobsWithFailedDependencies(), WsfRIPRJobBoard::BlockJobsWithoutMinWinners(), WsfIterativeRouteMover::CalcAltitudesAndAttitude(), WsfBrawlerFuel::CalcConsumptionRate(), WsfTabularRateFuel::CalcConsumptionRate(), WsfVariableRateFuel::CalcConsumptionRate(), WsfTabularRateFuel::CalcConsumptionRateAltitudeSpeed(), WsfVariableRateFuel::CalcConsumptionRateAltitudeSpeed(), WsfSA_Processor::CalculateEmissions(), WsfSA_Processor::CalculateObservables(), WsfGuidedMoverBase::CallStagingEventScript(), WsfTaskManager::CancelTask(), WsfPassiveSensor::PassiveMode::CanDetect(), WsfPassiveSensor::PassiveRcvr::CanInteractWith(), wsf::comm::ComponentHW_LASER::CanSendTo(), wsf::comm::ComponentHW_Subsurface::CanSendTo(), WsfCuedLaserWeapon::CeaseFire(), WsfImplicitWeapon::CeaseFire(), WsfLaserWeapon::CeaseFire(), WsfTaskManager::ChangeOperatingLevel(), WsfWeaponFuse::CheckAllTargets(), WsfWeaponFuse::CheckForDetonation(), WsfGuidanceComputer::CheckForPhaseChange(), WsfP6DOF_GuidanceComputer::CheckForPhaseChange(), WsfFusionCenter::CheckForScreenerAdd(), WsfTaskManager::CheckMessageAcknowledged(), WsfPathGuidance::ChosenHeading(), WsfTowedMover::CleanUpStowedAsset(), WsfImplicitWeapon::ClearEngagement(), WsfExchangeProcessor::ClosestPossibleProvider(), WsfRIPRProcessor::CommanderPlatform(), WsfRIPRProcessor::CommanderProcessor(), WsfRIPRProcessor::Commanders(), wsf::UCI_WeaponComponent::CommandWeapon(), WsfDisInterface::CommFrequencyChanged(), wsf::six_dof::Mover::CommonSubobjectJettisonTasks(), WsfP6DOF_Mover::CommonSubobjectJettisonTasks(), WsfDisInterface::CommTurnedOff(), WsfDisInterface::CommTurnedOn(), WsfWeapon::CompleteReloadEvent::CompleteReloadEvent(), WsfPathFinder::ComputeExtrapolate(), WsfSAR_Sensor::SAR_Mode::ComputeFOV(), WsfSAR_Sensor::SAR_Mode::ComputeGeometry(), WsfTBM_Mover::ComputeImpactRange(), WsfGuidanceComputer::ComputeInterceptData(), WsfOrbitalLaunchComputer::ComputeLEO_Insertion(), WsfTBM_Mover::ComputeMaximumRange(), WsfTRIMSIM_Processor::ComputeMeasurementErrors(), WsfSAR_Sensor::SAR_Mode::ComputeSquintAngle(), WsfTBM_Mover::ComputeTargetError(), WsfTowedMover::ComputeTowDistance(), WsfSAR_Sensor::SAR_Mode::ComputeUpdateInterval(), WsfOffsetMover::CopyStateFromReference(), WsfBrawlerProcessor::CorneringVelocity_fps(), WsfWaypointMover::CornerVelocity(), WsfAirMover::CrashIntoGround(), wsf::six_dof::Mover::CrashIntoGroundCB(), WsfP6DOF_Mover::CrashIntoGroundCB(), WsfTaskManager::CreateDelayTask(), WsfSpaceMoverBase::CreateKinematicModel(), WsfDirectionFinderProcessor::CreateLocalTrack(), WsfWaypointMover::CreatePath(), WsfWaypointMover::CreatePath(), WsfRoadMover::CreateRoute(), WsfWeapon::CreateTargetTrack(), WsfWeapon::CueToTarget(), WsfBrawlerProcessor::CurrentFuelWeight_lbs(), WsfBrawlerProcessor::CurrentStructuralGLimit_g(), WsfBrawlerProcessor::CurrentWeight_lbs(), WsfSA_Processor::DebugTestOutput(), WsfTankedFuel::DecrementQuantity(), WsfBrawlerMover::DeleteMover(), WsfRF_Jammer::DeselectEA_Technique(), WsfBrawlerProcessor::DesignWeightForMaxG_lbs(), WsfPathGuidance::DetermineTheTurn(), WsfTankedFuel::DisconnectFrom(), WsfTankedFuel::DisconnectFromTanker(), WsfFuel::DistanceAt(), WsfFuel::DistanceTo(), WsfBrawlerProcessor::Drag(), WsfChaffWeapon::DropChaffCloud(), WsfBrawlerProcessor::DynamicPressure_psf(), WsfPassiveSensor::PassiveMode::EmitterActiveCallback(), WsfBrawlerProcessor::EmptyWeight_lbs(), wsf::six_dof::RigidBodyMover::EnableDirectBraking(), WsfP6DOF_Mover::EnableDirectBraking(), WsfLaserWeapon::EndShot(), WsfPerfectTracker::EstablishNewTrack(), WsfBrawlerProcessor::EvaluateAlternative(), WsfLaserWeapon::EvaluateCooling(), WsfBrawlerProcessor::EvaluateHeadingSpeedAltitude(), WsfBrawlerProcessor::EvaluateRates(), WsfBrawlerProcessor::EvaluateTurnInPlaneWithSpeed(), WsfBrawlerProcessor::EvaluateTurnInPlaneWithThrottle(), WsfBrawlerProcessor::EvaluateVectorWithSpeed(), WsfBrawlerProcessor::EvaluateVectorWithThrottle(), WsfTaskManager::EventBase::EventBase(), WsfExchangeProcessor::ExchangeCompleted(), WsfExchangeProcessor::ExchangeRequestFailed(), FlightPathAnalysisFunction::Execute(), HorizontalMapFunction::Execute(), WsfOrbitalScriptEvent::ExecuteEvent(), wsf::six_dof::Mover::ExecuteTriggers(), WsfP6DOF_Mover::ExecuteTriggers(), WsfRotorcraftMover::ExportMotionState(), WsfLaserDesignator::Extinguish(), WsfWaypointMover::Extrapolate(), wsf::six_dof::ExplicitWeapon::Fire(), WsfChaffWeapon::Fire(), WsfCuedLaserWeapon::Fire(), WsfDirectedEnergyWeapon::Fire(), WsfExplicitWeapon::Fire(), WsfImplicitWeapon::Fire(), WsfP6DOF_ExplicitWeapon::Fire(), WsfExplicitWeapon::FireP(), WsfFuel::FuelSeconds(), wsf::event::utils::GetAdditionalImplicitInfo(), wsf::event::utilsCSV::GetAdditionalImplicitInfo(), WsfBrawlerProcessor::GetAlphaAtMaxCL_deg(), WsfBrawlerProcessor::GetAlphaAtMaxCL_deg(), WsfBrawlerProcessor::GetAlphaAtMaxCL_deg(), WsfBrawlerProcessor::GetConsciousnessEventTime(), WsfEquatorialFieldOfView::GetCuedAzElPlatformLat(), WsfArticulatedPart::GetCurrentOrientationECS(), WsfGuidedMover::GetDynamicPressure(), WsfMaskingPattern::GetFactor(), wsf::comm::Comm::GetFullName(), WsfSpaceMoverBase::GetFutureLocationWCS(), WsfGuidedMover::GetGravitationalAcceleration(), WsfSpaceMoverBase::GetInitialHeading(), WsfWeaponTrackProcessor::GetInterceptData(), UCI_Util::GetKinematics(), getLinkedAndReachablePlatformParts(), getManagingSensorsManager(), WsfBrawlerProcessor::GetMaxCL(), WsfBrawlerProcessor::GetMaxCL(), WsfBrawlerProcessor::GetMaxCL(), WsfTaskManager::GetMessageSender(), WsfThreatProcessor::GetNearestThreat(), wsf::comm::Component::GetPlatform(), WsfProcessorComponent::GetPlatform(), WsfSensorComponent::GetPlatform(), WsfWeaponComponent::GetPlatform(), wsf::comm::medium::ModeGuided::GetPropagationTime(), WsfGuidedMover::GetPropertyDouble(), WsfFuel::GetQuantityRequired(), WsfWaypointPathGuidance::GetRadialAccelAtPoint(), WsfCompositeSensor::GetSensorIndex(), WsfBMUtils::GetSensorType(), wsf::six_dof::Mover::GetStateData(), WsfP6DOF_Mover::GetStateData(), WsfWeapon::GetTargetLocationWCS(), WsfAirMover::GetThrottlePosition(), WsfBrawlerProcessor::GetTime(), WsfRoadMover::GetTravelTime(), WsfUplinkProcessor::GetUplinkCommForTrack(), wsf::six_dof::RigidBodyMover::GetWeightOnNoseWheel(), WsfP6DOF_Mover::GetWeightOnNoseWheel(), WsfWaypointPathGuidance::GetWPTargetInfo(), wsf::six_dof::Mover::GoToAltitude(), WsfIterativeRouteMover::GoToAltitude(), WsfP6DOF_Mover::GoToAltitude(), WsfWaypointMover::GoToAltitude(), WsfBrawlerMover::GoToClosestPoint(), WsfRouteMover::GoToClosestPoint(), wsf::six_dof::Mover::GoToLocation(), WsfIterativeRouteMover::GoToLocation(), WsfP6DOF_Mover::GoToLocation(), WsfRoadMover::GoToLocation(), WsfRouteMover::GoToLocation(), wsf::six_dof::Mover::GoToSpeed(), WsfIterativeRouteMover::GoToSpeed(), WsfP6DOF_Mover::GoToSpeed(), WsfRoadMover::GoToTrack(), OrbitalLaunchComputerGenerator::GuidanceComputerPhaseChanged(), wsf::UCI_WeaponComponent::HandleCapabilityCommand(), WsfXIO_TaskService::HandleCommand(), WsfDefaultDisseminationImpl::HandleDelayedMessages(), WsfXIO_MessageService::HandleReceivedMessage(), WsfXIO_TaskService::HandleRequest(), WsfXIO_MessageService::HandleTransmitEndedMessage(), WsfXIO_MessageService::HandleTransmittedHeartbeatMessage(), WsfXIO_MessageService::HandleTransmittedMessage(), WsfBrawlerProcessor::HaveWeapons(), WsfWaypointMover::HitWaypoint(), if(), WsfImageProcessor::ImageProcessingCompleted(), WsfTankedFuel::IncrementQuantity(), wsf::comm::router::ProtocolOSPF::Initialize(), wsf::six_dof::GuidanceComputer::Initialize(), wsf::six_dof::Mover::Initialize(), WsfArticulatedPart::Initialize(), WsfBattleManager::Initialize(), WsfBeamDirector::Initialize(), WsfBrawlerMover::Initialize(), WsfBrawlerProcessor::Initialize(), WsfChaffMover::Initialize(), WsfChaffWeapon::Initialize(), WsfCompositeSensor::Initialize(), WsfDefaultAssetManagerImpl::Initialize(), WsfDefaultBattleManagerImpl::Initialize(), WsfDefaultDisseminationImpl::Initialize(), WsfDefaultSensorsManagerImpl::Initialize(), WsfDefaultWeaponsManagerImpl::Initialize(), WsfDirectionFinderProcessor::Initialize(), WsfExchange::Transactor::Initialize(), WsfExchangeProcessor::Initialize(), WsfExplicitWeapon::Initialize(), WsfFollower::Initialize(), WsfFormationFlyer::Initialize(), WsfFuel::Initialize(), WsfGuidanceComputer::Initialize(), WsfGuidedMover::Initialize(), WsfGuidedMover::Stage::Initialize(), WsfGuidedMoverBase::Initialize(), WsfHybridMover::Initialize(), WsfIntersectProcessor::Initialize(), WsfIterativeRouteMover::Initialize(), WsfL16::ComputerPart::Initialize(), WsfL16::ComputerProcessor::Initialize(), WsfLaserTracker::Initialize(), WsfLinkedProcessor::Initialize(), WsfMath3D_Mover::Initialize(), WsfMessageProcessor::Action::Initialize(), WsfMessageProcessor::Initialize(), WsfMover::Initialize(), WsfMoverMode::Initialize(), WsfNORAD_SpaceMover::Initialize(), WsfOffsetMover::Initialize(), WsfOrbitalConjunctionProcessor::Initialize(), WsfOTH_RadarSensor::OTH_Beam::Initialize(), WsfP6DOF_GuidanceComputer::Initialize(), WsfP6DOF_Mover::Initialize(), WsfPassiveSensor::PassiveRcvr::Initialize(), WsfPerceptionProcessor::Initialize(), WsfProcessor::Initialize(), WsfQuantumTaskerProcessor::Initialize(), WsfRadarMTI_AdjSignalProcessor::Initialize(), WsfRadarSensor::RadarBeam::Initialize(), WsfRF_Jammer::JammerXmtr::Initialize(), WsfRIPRProcessor::Initialize(), WsfRoadMover::Initialize(), WsfRotorcraftMover::Initialize(), WsfRouteMover::Initialize(), WsfSA_Processor::Initialize(), WsfSAR_Sensor::SAR_Mode::Initialize(), WsfScriptProcessor::Initialize(), WsfScriptStateMachineProcessor::Initialize(), WsfSensor::Initialize(), WsfSensorProcessor::Initialize(), WsfSpaceMover::Initialize(), WsfSpaceMoverBase::Initialize(), WsfSpinSensorScheduler::Initialize(), WsfStraightLineMover::Initialize(), WsfSurfaceWaveRadarSensor::RadarMode::Initialize(), WsfTabularRateFuel::Initialize(), WsfTankedFuel::Initialize(), WsfTask::Initialize(), WsfTaskManager::Initialize(), WsfTBM_Mover::Initialize(), WsfTowedMover::Initialize(), WsfTrackProcessor::Initialize(), WsfTrackStateControllerProcessor::Initialize(), WsfTSPI_Mover::Initialize(), WsfUplinkProcessor::Initialize(), WsfVariableRateFuel::Initialize(), WsfWaypointMover::Initialize(), WsfWeapon::Initialize(), WsfWeapon::WsfWeaponMode::Initialize(), WsfWeaponFuse::Initialize(), WsfWeaponTrackProcessor::Initialize(), Fires::FiresMover::Initialize2(), wsf::UCI_PartComponent::Initialize2(), wsf::UCI_SensorComponent::Initialize2(), wsf::UCI_WeaponComponent::Initialize2(), WsfAssetManager::Initialize2(), WsfBattleManager::Initialize2(), WsfBMDisseminateC2::Initialize2(), WsfBMSensorsManager::Initialize2(), WsfBMWeaponsManager::Initialize2(), WsfCuedLaserWeapon::Initialize2(), WsfDefaultAssetManagerImpl::Initialize2(), WsfDefaultBattleManagerImpl::Initialize2(), WsfDefaultDisseminationImpl::Initialize2(), WsfDefaultSensorsManagerImpl::Initialize2(), WsfDefaultWeaponsManagerImpl::Initialize2(), WsfGuidanceComputer::Initialize2(), WsfGuidedMoverBase::Initialize2(), WsfMover::Initialize2(), WsfPerfectTracker::Initialize2(), WsfSpaceMoverBase::Initialize2(), WsfTaskManager::Initialize2(), WsfTBM_Mover::Initialize2(), WsfWeaponFuse::Initialize2(), WsfWeaponsManagerAI::Initialize2(), WsfWeaponTrackProcessor::Initialize2(), WsfExplicitWeapon::InitializeCommandChains(), WsfTrackProcessor::InitializeMemberData(), WsfSensorMode::InitializeReporting(), HorizontalMapFunction::InitializeSensorPlatforms(), wsf::six_dof::Mover::InitializeSubobject(), WsfP6DOF_Mover::InitializeSubobject(), wsf::comm::NetworkManager::InitializeUserLinks(), WsfGuidedMover::InitiateMotion(), WsfGuidedMover::InitiateStage(), WsfGuidedMoverBase::InitiateStage(), WsfParabolicMover::InitShot(), HorizontalMapFunction::InSelectorList(), WsfIntersectProcessor::Intersect(), WsfTSPI_Mover::IsExtrapolating(), WsfTSPI_Mover::IsStopped(), WsfLOS_Manager::IsTargetVisible(), WsfLOS_Manager::IsTargetVisible(), WsfLOS_Manager::IsTargetVisibleNow(), WsfLOS_Manager::IsTargetVisibleNow(), WsfThreatProcessor::IsThreatening(), WsfRIPRProcessor::IsUplinkingTo(), WsfIterativeRouteMover::IsWaypointSwitchTime(), WsfMilEventPipe::JammingRequestCanceled(), WsfMilEventPipe::JammingRequestInitiated(), WsfMilEventPipe::JammingRequestUpdated(), WsfGuidedMover::JettisonEjectables(), JoinGroup(), WsfAirMover::Land(), WsfLaserDesignator::Lase(), LeaveGroup(), WsfBrawlerProcessor::Lift(), WsfXIO_ObjectInfoLoad::Load_PlatformPart(), WsfGroupManager::LoadInstance(), wsf::comm::util::LocalMasterNetworkName(), wsf::comm::util::LocalSlaveNetworkName(), WsfUplinkProcessor::LocalTrackCorrelation(), WsfRotorcraftMover::LocalUpdate(), WsfAirToAirLaunchComputer::LookupResult(), WsfBrawlerProcessor::Mach(), WsfMessageProcessor::Selector::Matches(), WsfBrawlerProcessor::MaxForwardAcceleration_fps2(), WsfBrawlerProcessor::MaxForwardAccelerationWithGravity_fps2(), WsfBrawlerProcessor::MaxInstantaneousGLoad_g(), WsfBrawlerProcessor::MaxInstantaneousTurnRate_rps(), WsfBrawlerProcessor::MaxSustainedGLoad_g(), WsfBrawlerProcessor::MaxSustainedTurnRate_rps(), WsfBrawlerProcessor::MaxTacticalTurnRate_rps(), WsfDisInterface::MessageReceived(), WsfDisPlatform::MessageReceived(), WsfDisInterface::MessageTransmitted(), WsfBrawlerProcessor::MinForwardAcceleration_fps2(), WsfBrawlerProcessor::MinForwardAccelerationWithGravity_fps2(), WsfBrawlerProcessor::MinInstantaneousTurnRadius_ft(), WsfBrawlerProcessor::MinSustainedTurnRadius_ft(), WsfBrawlerProcessor::MinTacticalTurnRadius_ft(), WeaponObserver::MoverBurnedOut(), OrbitalLaunchComputerGenerator::MoverBurnout(), WsfWaypointMover::MoveToGround(), WsfPerceptionProcessor::NearestAsset(), WsfPerceptionProcessor::NearestThreat(), WsfTrackProcessor::NotifyPlatform(), WsfPerfectTracker::NullTrack(), WsfDefaultAssetManagerImpl::on_message(), WsfDefaultDisseminationImpl::on_message(), WsfScriptPlatformPartClass::OnNewScriptRef(), WsfTowedMover::OnPlatformDeleted(), WsfOffsetMover::OnPlatformUpdated(), WsfQuantumTaskerProcessor::operator=(), WsfBehaviorTreeNode::OwningPlatform(), WsfMover::PartBroken(), WsfWeapon::PartBroken(), WsfLOS_Manager::PartMoveCheck(), WsfLOS_Manager::PartMoved(), wsf::eventpipe::PartUpdateEvent::PartUpdateEvent(), WsfMath3D_Mover::Pause(), WsfWaypointMover::Pause(), WsfCuedLaserWeapon::PauseFire(), WsfTaskManager::PendingMessage::PendingMessage(), WsfLaserDesignator::PerformScheduledDetections(), WsfOTH_RadarSensor::PerformScheduledDetections(), WsfRadarSensor::PerformScheduledDetections(), WsfWeaponFuse::PermanentlyArrestMotion(), WsfSpinSensorScheduler::PlatformAdded(), WsfExchangeProcessor::PlatformCapabilityChanged(), WsfExchangeProcessor::PlatformDeleted(), WsfBeamDirector::PointAtTarget(), WsfBeamDirector::WsfBeamDirectorMode::PointAtTargetUpdate(), WsfBeamDirector::PointAtWCS(), WsfPerceptionProcessor::PossibleEnemy(), WsfAirMover::PostMoveUpdate(), WsfSubsurfaceMover::PostMoveUpdate(), WsfGuidedMover::PostUpdate(), WsfLaserWeapon::PreInitialize(), WsfSpaceMoverBase::PreInitialize(), WsfGuidedMoverBase::PrelaunchAdvanceTime(), wsf::event::utils::PrintCommData(), WsfJTIDS_Terminal::PrintDebugReception(), WsfWeaponFuse::PrintDetonationReason(), WsfFusionCenter::PrintFuserState(), wsf::event::utils::PrintOrbitalManeuverData(), wsf::event::utilsCSV::PrintOrbitalManeuverData(), wsf::event::utils::PrintRouterData(), WsfGuidanceComputer::PrintStatusHeader(), wsf::event::utils::PrintSystemOffOnEvent(), wsf::event::utilsCSV::PrintSystemOffOnEvent(), WsfWeaponFuse::PrivateDetonate(), WsfTaskManager::ProcessAssociationMessage(), WsfRIPRProcessor::ProcessInput(), WsfL16::ComputerProcessor::ProcessJMessage(), WsfCompositeSensor::ProcessMessage(), WsfCuedLaserWeapon::ProcessMessage(), WsfDirectionFinderProcessor::ProcessMessage(), WsfMessageProcessor::ProcessMessage(), WsfPerceptionProcessor::ProcessMessage(), WsfRIPRProcessor::ProcessMessage(), WsfTrackProcessor::ProcessMessage(), WsfUplinkProcessor::ProcessMessage(), WsfQuantumTaskerProcessor::ProcessTaskAssignMessage(), WsfTaskManager::ProcessTaskAssignMessage(), WsfTaskManager::ProcessTaskCancelMessage(), WsfTaskManager::ProcessTaskControlMessage(), WsfQuantumTaskerProcessor::ProcessTaskStatusMessage(), WsfTaskManager::ProcessTaskStatusMessage(), WsfWeaponTrackProcessor::ProcessTrackDrop(), WsfTaskManager::ProcessTrackDropMessage(), WsfWeaponTrackProcessor::ProcessTrackUpdate(), WsfDefaultHEL::Propagate(), WsfRIPRJobBoard::PurgeDeadBidders(), WsfQuantumTaskerProcessor::PurgeReceivedTask(), WsfMilEventPipe::QuantumTaskerUpdate(), wsf::xio::CommComponent::Receive(), WsfMessageProcessor::ReceiveMessage(), WsfRIPRProcessor::ReceiveMessage(), WsfTaskManager::ReceiveMessage(), WsfQuantumTaskerProcessor::RejectTask(), WsfTaskManager::ReleaseResource(), wsf::six_dof::RigidBodyMover::RemoveExternalForce(), WsfP6DOF_Mover::RemoveExternalForce(), wsf::comm::router::Router::RemoveLink(), WsfSensorProcessor::RemoveSensor(), WsfUplinkProcessor::RemoveUplink(), WsfTaskManager::ReportTaskComplete(), WsfTaskManager::ReportTaskProgress(), wsf::six_dof::Mover::ResetPosition(), WsfMath3D_Mover::ResetPosition(), WsfP6DOF_Mover::ResetPosition(), WsfMover::Restore(), WsfWeapon::Restore(), WsfCuedLaserWeapon::ResumeFire(), wsf::six_dof::Mover::ReturnToRoute(), WsfP6DOF_Mover::ReturnToRoute(), WsfXIO_PlatformInfoService::RouteChanged(), WsfAssetManager::Run(), WsfBattleManager::Run(), WsfBMDisseminateC2::Run(), WsfBMSensorsManager::Run(), WsfBMWeaponsManager::Run(), SafeRIPRProc::SafeRIPRProc(), SafeRIPRProc::SafeRIPRProc(), wsf::comm::Event::ScheduleDeliverMessageEvent(), WsfTBM_Mover::ScheduleScriptEvents(), WsfBeamDirector::WsfBeamDirectorMode::Select(), WsfOTH_RadarSensor::OTH_Mode::Select(), WsfRadarSensor::RadarMode::Select(), WsfOTH_RadarSensor::OTH_Mode::SelectAlternateFrequency(), WsfRadarSensor::RadarMode::SelectAlternateFrequency(), WsfBMDisseminateC2::SelectCommDevice(), WsfTaskManager::SelectCommDevice(), WsfRF_Jammer::SelectEA_Technique(), wsf::six_dof::GuidanceComputer::SelectPhase(), WsfGuidanceComputer::SelectPhase(), WsfP6DOF_GuidanceComputer::SelectPhase(), wsf::comm::SlotGroupLayerJTIDS::Send(), WsfBMDisseminateC2::SendMessage(), WsfRIPRJob::SendMessageBidJob(), WsfRIPRProcessor::SendMessageJobAward(), WsfRIPRJob::SendMessageSetProgress(), SendMessageTo(), SendMessageToProcessor(), WsfRIPRJob::SendMessageUnbidJob(), WsfEventPipeInterface::SendModeActive(), WsfMilEventPipe::SendModeActive(), WsfXIO_PlatformInfoService::SendPartState(), WsfEventPipeInterface::SendPartStatus(), WsfPerceptionProcessor::SendStatus(), WsfTaskManager::SendTaskMessage(), WsfSensor::SendTrackDropMessage(), WsfTrackProcessor::SendTrackP(), WsfTaskManager::SendTrackUpdate(), WsfSensor::SendTrackUpdateMessage(), WsfSensorProcessor::SendTrackUpdateMessage(), WsfEventPipeInterface::SendVisualPartDefinition(), WsfCompositeSensor::SensorDetectionChanged(), WsfDisInterface::SensorDetectionChanged(), WsfAccessReport::SensorDetectionChangedHandler(), WsfDisInterface::SensorFrequencyChanged(), WsfBrawlerProcessor::SensorGimbalAzimuthLimit(), WsfBrawlerProcessor::SensorGimbalElevationLimit(), WsfDisInterface::SensorModeActivated(), WsfDisInterface::SensorModeDeactivated(), WsfDisInterface::SensorRequestCanceled(), WsfDisInterface::SensorRequestInitiated(), WsfDisInterface::SensorRequestUpdated(), WsfDisInterface::SensorScanUpdated(), WsfDisInterface::SensorTrackDropped(), WsfDisInterface::SensorTrackInitiated(), WsfGuidanceComputer::SensorTrackInitiated(), WsfP6DOF_GuidanceComputer::SensorTrackInitiated(), WsfCompositeSensor::SensorTurnedOff(), WsfDisInterface::SensorTurnedOff(), WsfDisInterface::SensorTurnedOn(), WsfL16::ComputerProcessor::SentJMessage(), WsfPerceptionProcessor::SetAssetUpdateInterval(), WsfWeaponTrackProcessor::SetCurrentTarget(), SetDamageFactor(), wsf::six_dof::Mover::SetDefaultRoute(), WsfP6DOF_Mover::SetDefaultRoute(), WsfTankedFuel::SetDefaultSupplyConfig(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfMath3D_Mover::SetExternalMotionState(), wsf::comm::router::Router::SetGateway(), WsfIterativeRouteMover::SetGroundAttitude(), WsfWaypointMover::SetGroundAttitude(), WsfIterativeRouteMover::SetGuidanceTo(), WsfMover::SetHeading(), WsfParabolicMover::SetImpactTOFAndLLA(), WsfGuidedMoverBase::SetInitialState(), WsfSensor::SetIsSlave(), WsfPathGuidance::SetLatLon(), WsfLaunchHandoffData::SetLaunchPlatformData(), WsfExplicitWeapon::SetLaunchState(), WsfBrawlerProcessor::SetLocationECI(), WsfBrawlerProcessor::SetLocationLLA(), WsfBrawlerProcessor::SetLocationWCS(), WsfTBM_Mover::SetMasses(), WsfQuantumTaskerProcessor::SetMatrixAssets(), WsfQuantumTaskerProcessor::SetMatrixTasks(), WsfRIPRProcessor::SetNumJobChannels(), WsfOffsetMover::SetOffsetFromReference(), WsfMover::SetOrientationNED(), WsfRoadMover::SetOrUpdateRoute(), WsfP6DOF_Fuel::SetP6DofMover(), wsf::six_dof::RigidBodyMover::SetParkingBrake(), WsfP6DOF_Mover::SetParkingBrake(), WsfMover::SetPitch(), WsfArticulatedPart::SetPlatform(), WsfWaypointMover::SetPlatform(), WsfFuel::SetQuantityRemaining(), WsfOffsetMover::SetReference(), WsfMover::SetRoll(), wsf::six_dof::Mover::SetRoute(), WsfP6DOF_Mover::SetRoute(), WsfRouteMover::SetRoutePoint(), wsf::comm::router::ProtocolOSPF::SetRouterRoleType(), wsf::six_dof::Fuel::SetSixDOF_Mover(), WsfIntegratingPropagator::SetSpaceMover(), Target::SetSpeedAndAttitude(), WsfExchangeProcessor::SetSupplierAbility(), WsfPerfectTracker::SetTargetByIndex(), WsfPerfectTracker::SetTargetByNameId(), wsf::six_dof::Mover::SetTempRoute(), WsfP6DOF_Mover::SetTempRoute(), WsfPerceptionProcessor::SetThreatUpdateInterval(), WsfTBM_Mover::SetTrailingEffects(), wsf::comm::router::Router::Setup(), WsfWeaponFuse::ShowPCA_Results(), WsfSpaceMover::ShowStatus(), WsfBrawlerProcessor::SpecificEnergyRate_fps(), WsfRF_Jammer::StartJamming(), WsfRIPRProcessor::StartUplinking(), WsfRIPRProcessor::StartUplinking(), WsfUplinkProcessor::StartUplinking(), WsfRF_Jammer::StopJamming(), WsfRIPRProcessor::StopUplinking(), WsfUplinkProcessor::StopUplinking(), WsfBrawlerProcessor::StructuralGLimitAtDesignWeight_g(), WsfRIPRProcessor::SubordinatePlatforms(), WsfRIPRProcessor::SubordinateProcessors(), WsfRIPRProcessor::Subordinates(), WsfGuidedMover::SwitchCoordinateFrame(), WsfAirMover::TakeOff(), WsfRIPRProcessor::TargetTrack(), WsfTaskManager::TasksAssignedTo(), WsfBrawlerProcessor::Throttle(), WsfBrawlerProcessor::Thrust(), WsfFuel::TimeAt(), WsfFuel::TimeTo(), WsfParabolicMover::ToWCSLocation(), WsfTSPI_Mover::TranslateAndRotateToNewFile(), WsfPerceptionProcessor::TruthAssets(), WsfPassiveSensor::PassiveRcvr::TuneFrequencyBand(), wsf::six_dof::GuidanceComputer::TurnOff(), WsfBeamDirector::TurnOff(), WsfGuidanceComputer::TurnOff(), WsfP6DOF_GuidanceComputer::TurnOff(), wsf::UCI_PartComponent::TurnOn(), WsfEOIR_Sensor::TurnOn(), WsfRouteMover::TurnOn(), WsfSensorsManagerFovSensorScheduler::TurnOn(), WsfWaypointMover::TurnRadius(), wsf::six_dof::Mover::TurnToHeading(), WsfIterativeRouteMover::TurnToHeading(), WsfP6DOF_Mover::TurnToHeading(), wsf::six_dof::Mover::TurnToRelativeHeading(), WsfIterativeRouteMover::TurnToRelativeHeading(), WsfP6DOF_Mover::TurnToRelativeHeading(), WsfWaypointMover::TurnToRelativeHeading(), WsfMath3D_Mover::Unpause(), WsfWaypointMover::Unpause(), Fires::FiresMover::Update(), TargetMover::Update(), wsf::six_dof::Mover::Update(), WsfBrawlerMover::Update(), WsfChaffMover::Update(), WsfDisMover::Update(), WsfEOIR_Sensor::Update(), WsfFollower::Update(), WsfFormationFlyer::Update(), WsfGuidedMoverBase::Update(), WsfLaserDesignator::Update(), WsfLaserTracker::Update(), WsfOffsetMover::Update(), WsfP6DOF_Mover::Update(), WsfParabolicMover::Update(), WsfPerfectTracker::Update(), WsfQuantumTaskerProcessor::Update(), WsfRouteMover::Update(), WsfShadowMover::Update(), WsfSpaceMoverBase::Update(), WsfStraightLineMover::Update(), WsfTBM_Mover::Update(), WsfTowedMover::Update(), WsfTSPI_Mover::Update(), WsfWeaponFuse::Update(), WsfWeaponTrackProcessor::Update(), wsf::six_dof::Mover::UpdateAppearance(), WsfP6DOF_Mover::UpdateAppearance(), WsfEventPipeInterface::UpdateArticulation(), WsfPerceptionProcessor::UpdateAssets(), wsf::UCI_WeaponComponent::UpdateCapabilityStatus(), WsfCompositeSensor::UpdateCompositeTrack(), wsf::six_dof::Mover::UpdateEventPipeData(), WsfPerfectTracker::UpdateExistingTrack(), WsfGuidedMover::UpdateExternalState(), WsfFusionCenter::UpdateFalseTargetTracks(), WsfSA_Processor::UpdateFlightControls(), WsfSA_Processor::UpdateFlightKinematics(), WsfSA_Processor::UpdateFlightKinematicsData(), WsfSA_Processor::UpdateFuel(), WsfSA_Processor::UpdateFuelData(), wsf::six_dof::GuidanceComputer::UpdateGuidance(), WsfGuidanceComputer::UpdateGuidance(), WsfP6DOF_GuidanceComputer::UpdateGuidance(), WsfWaypointMover::UpdateHeightOfTerrain(), WsfRF_Jammer::UpdateJamming(), WsfBrawlerProcessor::UpdateMissileMode(), WsfTSPI_Mover::UpdateMover(), WsfSA_Processor::UpdateNav(), WsfSA_Processor::UpdateNavData(), WsfInstantAttitudeController::UpdateOrientation(), WsfRateLimitedAttitudeController::UpdateOrientation(), WsfArticulatedPart::UpdatePosition(), WsfWaypointMover::UpdatePosition(), WsfSpaceMoverBase::UpdatePropagation(), WsfFusionCenter::UpdateRealTargetTracks(), wsf::six_dof::Mover::UpdateRoute(), WsfP6DOF_Mover::UpdateRoute(), WsfRoadMover::UpdateRoute(), WsfRouteMover::UpdateRoute(), wsf::six_dof::GuidanceComputer::UpdateTargetPerception(), WsfGuidanceComputer::UpdateTargetPerception(), WsfP6DOF_GuidanceComputer::UpdateTargetPerception(), WsfWeaponFuse::UpdateTargetState(), WsfWeaponTrackProcessor::UpdateTargetTrack(), WsfQuantumTaskerProcessor::UpdateTaskCorrelation(), WsfOffsetMover::UpdateTetheredState(), WsfPerceptionProcessor::UpdateThreats(), WsfImageProcessor::UpdateTrack(), WsfTRIMSIM_SensorComponent::UpdateTrack(), WsfSA_Processor::UpdateTrackData(), WsfSA_Processor::UpdateTracks(), WsfTowedMover::UpdateVelocity(), wsf::six_dof::GuidanceComputer::UpdateWeaponPerception(), WsfGuidanceComputer::UpdateWeaponPerception(), WsfP6DOF_GuidanceComputer::UpdateWeaponPerception(), WsfSA_Processor::UpdateWeapons(), WsfWeaponFuse::UpdateWeaponState(), WsfRIPRProcessor::UplinkCapable(), WsfUplinkProcessor::UplinkTrack(), WsfRIPRProcessor::UplinkWeaponPlatform(), UT_DEFINE_SCRIPT_METHOD(), UT_DEFINE_SCRIPT_METHOD(), UT_DEFINE_SCRIPT_METHOD(), UT_DEFINE_SCRIPT_METHOD(), wsf::comm::UT_DEFINE_SCRIPT_METHOD(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), WsfTaskManagerScriptMethods::UT_DEFINE_SCRIPT_METHOD_EXT(), wsf::comm::Comm::ValidateGateway(), WsfSpaceMoverBase::VerifyMission(), WsfUplinkProcessor::VerifyUplinks(), WsfBMSensorInfoRecord::WcsToEcs(), WsfBMSensorInfoRecord::WcsToPcs(), engage::SimulationExtension::WeaponFireAborted(), WsfWeaponTaskManager::WeaponFireAborted(), WsfRIPRProcessor::WeaponFired(), wsf::UCI_WeaponComponent::WeaponFiredCB(), engage::SimulationExtension::WeaponFireRequested(), WsfChaffWeapon::WeaponPlatformUserInitialize(), WsfMilEventPipe::WeaponQuantityChanged(), WsfRIPRProcessor::WeaponsIncoming(), WsfMilEventPipe::WeaponTurnedOff(), WsfRIPRProcessor::WeaponUplinkCount(), WsfATG_LaunchComputer::WithinConstraintsAt(), wsf::six_dof::Mover::WriteKinematicStatus(), WsfGuidedMoverBase::WriteKinematicStatus(), WsfP6DOF_Mover::WriteKinematicStatus(), WsfOrbitalLaunchComputer::WriteOrbits(), WsfGuidedMoverBase::WriteStagingMessage(), WsfTBM_Mover::WriteStateForPlot(), WsfGuidedMoverBase::WriteTrajectoryOutput(), WsfImage::WsfImage(), WsfWeaponEngagement::WsfWeaponEngagement(), WsfArticulatedPart::~WsfArticulatedPart(), WsfDirectionFinderProcessor::~WsfDirectionFinderProcessor(), WsfFuel::~WsfFuel(), WsfGuidedMoverBase::~WsfGuidedMoverBase(), WsfLaserWeapon::~WsfLaserWeapon(), WsfParabolicMover::~WsfParabolicMover(), and WsfWaypointMover::~WsfWaypointMover().

◆ GetScenario()

const WsfScenario & WsfPlatformPart::GetScenario ( ) const
inline

Referenced by WsfBrawlerFuel::CalcConsumptionRate(), WsfSpaceMoverBase::CancelMission(), wsf::six_dof::Mover::CommonSubobjectJettisonTasks(), WsfP6DOF_Mover::CommonSubobjectJettisonTasks(), WsfL16::ComputerProcessor::CreatePart(), WsfRoadMover::CreateRoute(), wsf::comm::ComponentHW_LASER::FindOrCreate(), wsf::comm::router::ProtocolAdHoc::FindOrCreate(), WsfExplicitWeapon::Fire(), WsfExplicitWeapon::FireP(), WsfBMSensorInfoRecord::GetAzExtent(), WsfBMUtils::GetSensorType(), wsf::six_dof::GuidanceComputer::Initialize(), WsfArticulatedPart::Initialize(), WsfBMTrackScriptCallbackHandler::Initialize(), WsfChaffWeapon::Initialize(), WsfCompositeSensor::Initialize(), WsfDefaultBattleManagerImpl::Initialize(), WsfDefaultDisseminationImpl::Initialize(), WsfDefaultSensorsManagerImpl::Initialize(), WsfDefaultWeaponsManagerImpl::Initialize(), WsfExplicitWeapon::Initialize(), WsfGuidanceComputer::Initialize(), WsfGuidedMover::Stage::Initialize(), WsfInterceptCalculator::Initialize(), WsfOTH_RadarSensor::OTH_Beam::Initialize(), WsfP6DOF_GuidanceComputer::Initialize(), WsfPolygonalFieldOfView::Initialize(), WsfRadarMTI_AdjSignalProcessor::Initialize(), WsfRadarSensor::RadarBeam::Initialize(), WsfSOSM_Sensor::Initialize(), WsfWeapon::Initialize(), WsfBattleManager::Initialize2(), WsfBMDisseminateC2::Initialize2(), WsfBMSensorsManager::Initialize2(), WsfBMWeaponsManager::Initialize2(), WsfDefaultBattleManagerImpl::Initialize2(), WsfDefaultDisseminationImpl::Initialize2(), WsfDefaultSensorsManagerImpl::Initialize2(), WsfDefaultWeaponsManagerImpl::Initialize2(), wsf::six_dof::PointMassMover::InitializeDetails(), wsf::six_dof::RigidBodyMover::InitializeDetails(), WsfTrackProcessor::InitializeMemberData(), wsf::six_dof::Mover::InitializeSubobject(), WsfP6DOF_Mover::InitializeSubobject(), WsfDefaultDisseminationImpl::on_message(), WsfDefaultSensorsManagerImpl::on_message(), WsfDefaultWeaponsManagerImpl::on_message(), WsfTSPI_Mover::OpenFile(), WsfOTH_RadarSensor::PerformScheduledDetections(), WsfRadarSensor::PerformScheduledDetections(), wsf::comm::Comm::PreInitialize(), WsfProcessor::PreInitialize(), WsfSensor::PreInitialize(), WsfWeapon::PreInitialize(), wsf::comm::Comm::PreInput(), WsfProcessor::PreInput(), WsfSensor::PreInput(), WsfWeapon::PreInput(), WsfUnclassifiedBattleManager::ProcessCoreUnclassBMInput(), WsfExplicitWeapon::ProcessDeferredLaunchEvent(), WsfBMDisseminateC2::ProcessDisseminateC2Input(), wsf::comm::Comm::ProcessInput(), wsf::comm::router::Router::ProcessInput(), wsf::six_dof::PointMassMover::ProcessInput(), wsf::six_dof::RigidBodyMover::ProcessInput(), WsfARGO8_Mover::ProcessInput(), WsfCoherentSensorProcessor::ProcessInput(), WsfDirectionFinderProcessor::ProcessInput(), WsfGroupList::ProcessInput(), WsfGuidanceComputer::Phase::ProcessInput(), WsfGuidanceComputer::ProcessInput(), WsfGuidedMoverBase::ProcessInput(), WsfHybridMover::ProcessInput(), WsfImageProcessor::ProcessInput(), WsfLaserWeapon::ProcessInput(), WsfP6DOF_GuidanceComputer::ProcessInput(), WsfP6DOF_Mover::ProcessInput(), WsfProcessor::ProcessInput(), WsfScriptProcessor::ProcessInput(), WsfSensor::ProcessInput(), WsfSpaceMoverBase::ProcessInput(), WsfTaskProcessor::ProcessInput(), WsfTrackProcessor::ProcessInput(), WsfTrackStateControllerProcessor::ProcessInput(), WsfWeapon::ProcessInput(), WsfEW_SensorComponent::ProcessModeInput(), WsfBattleManager::ProcessTargetProjectionInput(), WsfQuantumTaskerProcessor::ProcessTaskAssignMessage(), WsfQuantumTaskerProcessor::ProcessTaskStatusMessage(), wsf::six_dof::Mover::ProcessVehicleInput(), WsfWeaponsManagerAI::ProcessWeaponsManagerAIInput(), WsfBMWeaponsManager::ProcessWeaponsManagerInput(), WsfQuantumTaskerProcessor::RejectTask(), WsfTrackProcessor::SelectNonMasterTrackProcessor(), WsfBMDisseminateC2::SendMessage(), wsf::comm::Comm::SendSetup(), WsfTSPI_Mover::SetFileName(), WsfCoherentSensorProcessor::SetFusionStrategy(), WsfQuantumTaskerProcessor::TaskCompleted(), WsfLaserDesignator::Update(), WsfLaserTracker::Update(), WsfBMSensorsManager::UpdateSensorCuePerception(), WsfChaffWeapon::WeaponPlatformUserInitialize(), WsfDisMover::WsfDisMover(), WsfShadowMover::WsfShadowMover(), WsfWeaponsManagerAI::WsfWeaponsManagerAI(), and WsfWeaponsManagerSAM::WsfWeaponsManagerSAM().

◆ GetScriptClassName()

const char * WsfPlatformPart::GetScriptClassName ( ) const
override

◆ GetSimulation()

WsfSimulation * WsfPlatformPart::GetSimulation ( ) const

Referenced by WsfExplicitWeapon::AbortSalvo(), WsfWeapon::AbortSalvo(), WsfTaskManager::AcquireResource(), WsfRIPRProcessor::ActiveWeaponPlatform(), WsfPassiveSensor::PassiveMode::AddInteractor(), wsf::comm::router::Router::AddInterface(), wsf::comm::router::Router::AddInterface(), wsf::comm::router::Router::AddLink(), wsf::comm::router::Router::AddNode(), WsfSensorProcessor::AddSensor(), WsfThreatProcessor::AddThreat(), WsfUplinkProcessor::AddTrackUplink(), WsfRouteMover::AddUnpauseEventFor(), WsfUplinkProcessor::AddUplink(), WsfChaffWeapon::AddWeaponToSimulation(), WsfExplicitWeapon::AddWeaponToSimulation(), WsfFusionCenter::AdjustTrackQuantities(), WsfWeapon::AllocateTheWeapon(), WsfPerceptionProcessor::AssetScore(), WsfTaskManager::AssignTask(), wsf::comm::router::Router::AutomateAddedLinkage(), WsfImplicitWeapon::BeginEngagement(), WsfLaserWeapon::BeginShot(), WsfRIPRProcessor::BiddingHijacked(), WsfSA_Processor::CalculateObservables(), WsfTaskManager::CancelTask(), WsfImplicitWeapon::CeaseFire(), WsfWeaponFuse::CheckAllTargets(), wsf::six_dof::Mover::CheckForNewlyJettisonedPlatforms(), WsfP6DOF_Mover::CheckForNewlyJettisonedPlatforms(), WsfTaskManager::CheckMessageAcknowledged(), WsfTowedMover::CleanUpStowedAsset(), WsfArticulatedPart::ClearCueing(), WsfImplicitWeapon::ClearEngagement(), WsfExchangeProcessor::ClosestPossibleProvider(), wsf::six_dof::Mover::CommonSubobjectJettisonTasks(), WsfP6DOF_Mover::CommonSubobjectJettisonTasks(), WsfWeapon::CompleteReloading(), WsfSAR_Sensor::SAR_Mode::ComputeImageCenter(), WsfTRIMSIM_Processor::ComputeMeasurementErrors(), WsfWeapon::ContinueSalvo(), WsfAirMover::CrashIntoGround(), wsf::six_dof::Mover::CrashIntoGroundCB(), WsfP6DOF_Mover::CrashIntoGroundCB(), WsfTaskManager::CreateDelayTask(), WsfSpaceMoverBase::CreateKinematicModel(), WsfDirectionFinderProcessor::CreateLocalTrack(), WsfWeapon::CreateTargetTrack(), WsfSA_Processor::DebugTestOutput(), WsfTankedFuel::DecrementQuantity(), WsfBrawlerMover::DeleteMover(), WsfSensor::DeselectMode(), WsfWeapon::DeselectMode(), wsf::comm::router::Router::DisableLink(), WsfTankedFuel::DisconnectFromTanker(), WsfArticulatedPart::EnableArticulationUpdates(), wsf::comm::router::Router::EnableLink(), WsfWaypointMover::EnableTerrain(), WsfLaserWeapon::EndShot(), WsfPerfectTracker::EstablishNewTrack(), WsfLaserWeapon::EvaluateCooling(), WsfSensor::ModeChangeEvent::Execute(), WsfTaskManager::EventBase::Execute(), WsfWeapon::CompleteReloadEvent::Execute(), WsfWeapon::SalvoEvent::Execute(), WsfFuel::ExecuteBingoScript(), WsfFuel::ExecuteEmptyScript(), wsf::comm::router::ProtocolAdHoc::ExecuteOnCommAdded(), wsf::comm::router::ProtocolAdHoc::ExecuteOnCommRemoved(), wsf::comm::router::ProtocolAdHoc::ExecuteOnConnectionAdded(), wsf::comm::router::ProtocolAdHoc::ExecuteOnConnectionRemoved(), WsfFuel::ExecuteRefuelScript(), WsfFuel::ExecuteReserveScript(), WsfScriptProcessor::ExecuteScriptAtTime(), wsf::six_dof::Mover::ExecuteTriggersCB(), WsfP6DOF_Mover::ExecuteTriggersCB(), WsfCuedLaserWeapon::Fire(), WsfDirectedEnergyWeapon::Fire(), WsfExplicitWeapon::FireP(), WsfWeapon::FireSalvo(), WsfArticulatedPart::GetAbsoluteCuedOrientation(), wsf::comm::router::ProtocolOSPF::GetAllOSPF(), WsfLaserWeapon::GetCoolingTimeRemaining(), WsfArticulatedPart::GetCurrentOrientationECS(), WsfSpaceMover::GetDateTime(), WsfGuidedMover::GetECI_Conversion(), WsfLaserWeapon::GetFiringTimeRemaining(), WsfSpaceMoverBase::GetFutureLocationWCS(), WsfArticulatedPart::GetLOS_UnitVectorWCS(), WsfTaskManager::GetMessageSender(), WsfThreatProcessor::GetNearestThreat(), wsf::comm::ProtocolIGMP::GetQuerier(), WsfSensor::GetRequiredPd(), WsfGuidanceComputer::GetSimTime(), wsf::comm::Component::GetSimulation(), wsf::comm::router::RouterComponent::GetSimulation(), WsfProcessorComponent::GetSimulation(), WsfSensorComponent::GetSimulation(), WsfWeaponComponent::GetSimulation(), WsfWeapon::GetTargetLocationWCS(), WsfThreatProcessor::GetThreatList(), WsfDefaultDisseminationImpl::HandleOutgoingAssignments(), wsf::comm::router::Router::HasInterface(), WsfGuidedMover::IgniteStage(), WsfPerceptionProcessor::Important(), WsfTankedFuel::IncrementQuantity(), wsf::comm::Comm::Initialize(), wsf::comm::router::Router::Initialize(), wsf::six_dof::GuidanceComputer::Initialize(), WsfARGO8_Mover::Initialize(), WsfATG_LaunchComputer::Initialize(), WsfBattleManager::Initialize(), WsfBeamDirector::WsfBeamDirectorMode::Initialize(), WsfBrawlerMover::Initialize(), WsfCompositeSensor::Initialize(), WsfCuedLaserWeapon::Initialize(), WsfDirectionFinderProcessor::Initialize(), WsfExchangeProcessor::Initialize(), WsfFormationFlyer::Initialize(), WsfFusionCenter::Initialize(), WsfGroupList::Initialize(), WsfGuidanceComputer::Initialize(), WsfGuidedMover::Initialize(), WsfImageProcessor::Initialize(), WsfL16::ComputerProcessor::Initialize(), WsfLADAR_Sensor::LADAR_Mode::Initialize(), WsfLaserDesignator::Initialize(), WsfLaserTracker::Initialize(), WsfLaserTracker::LaserTrackMode::Initialize(), WsfMessageProcessor::Action::Initialize(), WsfMover::Initialize(), WsfNORAD_SpaceMover::Initialize(), WsfOffsetMover::Initialize(), WsfOrbitalConjunctionProcessor::Initialize(), WsfOTH_RadarSensor::Initialize(), WsfOTH_RadarSensor::OTH_Beam::Initialize(), WsfP6DOF_GuidanceComputer::Initialize(), WsfP6DOF_Mover::Initialize(), WsfPassiveSensor::PassiveBeam::Initialize(), WsfPerceptionProcessor::Initialize(), Initialize(), WsfProcessor::Initialize(), WsfRadarMTD_SignalProcessor::Initialize(), WsfRadarMTI_SignalProcessor::Initialize(), WsfRadarPD_SignalProcessor::Initialize(), WsfRadarSensor::Initialize(), WsfRadarSensor::RadarBeam::Initialize(), WsfRF_Jammer::JammerMode::Initialize(), WsfRIPRProcessor::Initialize(), WsfRouteMover::Initialize(), WsfSAR_Sensor::SAR_Mode::Initialize(), WsfSensor::Initialize(), WsfSOSM_Sensor::SOSM_Mode::Initialize(), WsfSpaceMoverBase::Initialize(), WsfSurfaceWaveRadarSensor::RadarMode::Initialize(), WsfTSPI_Mover::Initialize(), WsfUplinkProcessor::Initialize(), WsfWaypointMover::Initialize(), WsfWeapon::Initialize(), WsfWeaponFuse::Initialize(), Fires::FiresMover::Initialize2(), WsfGuidedMoverBase::Initialize2(), WsfIntegratingSpaceMover::Initialize2(), WsfSpaceMoverBase::Initialize2(), WsfTrackProcessor::InitializeMemberData(), wsf::comm::router::Router::IsActive(), WsfImageProcessor::IsDetectable(), WsfThreatProcessor::IsThreatening(), WsfRIPRProcessor::IsUplinkingTo(), wsf::comm::ProtocolIGMP::JoinGroup(), wsf::comm::ProtocolIGMP::LeaveGroup(), WsfDefaultAssetManagerImpl::LocalTrackDropped(), WsfDefaultAssetManagerImpl::LocalTrackInitiated(), WsfDefaultAssetManagerImpl::LocalTrackUpdated(), WsfMessageProcessor::Selector::Matches(), wsf::comm::ProtocolIGMP::NetworkReceive(), WsfEOIR_Sensor::NotifyObservers(), WsfSensor::NotifySensorDetectionAttempted(), WsfSensor::NotifyTurnedOff(), WsfSensor::NotifyTurnedOn(), WsfDefaultAssetManagerImpl::on_message(), WsfTowedMover::OnPlatformDeleted(), wsf::comm::Comm::PartBroken(), wsf::comm::router::Router::PartBroken(), WsfMover::PartBroken(), WsfProcessor::PartBroken(), WsfSensor::PartBroken(), WsfVisualPart::PartBroken(), WsfWeapon::PartBroken(), WsfTaskManager::PendingMessage::PendingMessage(), WsfLaserDesignator::PerformScheduledDetections(), WsfOTH_RadarSensor::PerformScheduledDetections(), WsfRadarSensor::PerformScheduledDetections(), WsfSensor::PerformScheduledDetections(), WsfSpaceMoverBase::PerformStagingOperation(), wsf::comm::ProtocolIGMP::PhysicalReceive(), WsfSpinSensorScheduler::PlatformAdded(), WsfEOIR_Sensor::PlatformDeleted(), WsfTankedFuel::PlatformDeleted(), WsfTaskManager::PlatformDeleted(), WsfBeamDirector::PointAtTarget(), WsfBeamDirector::WsfBeamDirectorMode::PointAtTargetUpdate(), WsfBeamDirector::PointAtWCS(), WsfSpaceMoverBase::PreInitialize(), WsfGuidedMoverBase::PrelaunchAdvanceTime(), WsfJTIDS_Terminal::PrintDebugReception(), WsfWeaponFuse::PrivateDetonate(), WsfDisDirectedEnergyFire::Process(), WsfExplicitWeapon::ProcessDeferredLaunchEvent(), wsf::comm::NetworkLayer::ProcessLayerMessage(), WsfCompositeSensor::ProcessMessage(), WsfDirectionFinderProcessor::ProcessMessage(), WsfTrackProcessor::ProcessMessage(), WsfUplinkProcessor::ProcessMessage(), WsfWeapon::ProcessReloading(), WsfEOIR_Sensor::ProcessSensorDetectionChanged(), WsfTaskManager::ProcessTaskAssignMessage(), WsfTaskManager::ProcessTaskControlMessage(), WsfTaskManager::ProcessTaskStatusMessage(), WsfWeaponTrackProcessor::ProcessTrackDrop(), wsf::comm::Comm::ReceiveActions(), WsfJTIDS_Terminal::ReceiveActions(), WsfRIPRProcessor::ReceiveMessage(), WsfTaskManager::ReleaseResource(), WsfPassiveSensor::PassiveMode::RemoveInteractor(), wsf::comm::router::Router::RemoveInterface(), wsf::comm::router::Router::RemoveLink(), wsf::comm::router::Router::RemoveNode(), WsfSensorProcessor::RemoveSensor(), WsfThreatProcessor::RemoveThreat(), WsfUplinkProcessor::RemoveUplink(), WsfCyclicTrackReporting::ReportFusedTracks(), WsfCyclicTrackReporting::ReportRawTracks(), WsfTaskManager::ReportTaskComplete(), wsf::six_dof::Mover::ReturnToRoute(), WsfP6DOF_Mover::ReturnToRoute(), WsfSensorsManagerFov::Run(), SafeRIPRProc::SafeRIPRProc(), SafeRIPRProc::SafeRIPRProc(), WsfOTH_RadarSensor::OTH_Mode::ScheduleAltFreqChange(), WsfRadarSensor::RadarMode::ScheduleAltFreqChange(), wsf::comm::LayerEvent::ScheduleCommLayerEvent(), wsf::comm::Event::ScheduleDeliverMessageEvent(), WsfSensor::ScheduleModeChange(), WsfOTH_RadarSensor::OTH_Mode::SelectAlternateFrequency(), WsfRadarSensor::RadarMode::SelectAlternateFrequency(), WsfSensor::SelectMode(), WsfWeapon::SelectMode(), wsf::six_dof::GuidanceComputer::SelectPhase(), WsfGuidanceComputer::SelectPhase(), WsfP6DOF_GuidanceComputer::SelectPhase(), wsf::comm::PhysicalLayer::Send(), wsf::comm::router::ProtocolMulticast::Send(), wsf::comm::router::Router::Send(), wsf::comm::SlotGroupLayerJTIDS::Send(), WsfBMDisseminateC2::SendMessage(), SendMessage(), WsfRIPRProcessor::SendMessageJobAward(), SendMessageTo(), SendMessageToProcessor(), WsfTaskManager::SendTaskMessage(), WsfSensor::SendTrackCoastMessage(), WsfSensor::SendTrackDropMessage(), WsfSensor::SendTrackUpdateMessage(), WsfCompositeSensor::SensorDetectionChanged(), WsfAccessReport::SensorDetectionChangedHandler(), WsfGuidedMover::SeparateStage(), WsfPerceptionProcessor::SetAssetUpdateInterval(), WsfFuel::SetBingoQuantity(), WsfWaypointMover::SetCompleteTime(), WsfArticulatedPart::SetCuedLocationWCS(), WsfArticulatedPart::SetCuedOrientation(), SetDamageFactor(), wsf::six_dof::Mover::SetDestroyed(), WsfP6DOF_Mover::SetDestroyed(), WsfParabolicMover::SetImpactTOFAndLL(), WsfSensor::SetNextUpdateTime(), wsf::comm::Comm::SetNonOperational(), wsf::comm::router::Router::SetNonOperational(), WsfMover::SetNonOperational(), WsfProcessor::SetNonOperational(), WsfSensor::SetNonOperational(), WsfVisualPart::SetNonOperational(), WsfWeapon::SetNonOperational(), WsfRIPRProcessor::SetNumJobChannels(), wsf::comm::Comm::SetOperational(), wsf::comm::router::Router::SetOperational(), WsfMover::SetOperational(), WsfProcessor::SetOperational(), WsfSensor::SetOperational(), WsfVisualPart::SetOperational(), WsfWeapon::SetOperational(), WsfWeapon::SetQuantityRemaining(), WsfOffsetMover::SetReference(), WsfFuel::SetReserveQuantity(), WsfGuidedMoverBase::SetRoute(), WsfRouteMover::SetRoutePoint(), WsfExchangeProcessor::SetSupplierAbility(), WsfPerfectTracker::SetTargetByIndex(), WsfRIPRProcessor::SetTargetByName(), WsfSpaceMoverBase::SetTargetOrientationECI(), WsfPerceptionProcessor::SetThreatUpdateInterval(), WsfHybridMover::SetType(), wsf::comm::ProtocolIGMP::Setup(), WsfRF_Jammer::StartJamming(), WsfRIPRProcessor::StartUplinking(), WsfUplinkProcessor::StartUplinking(), WsfUplinkProcessor::StartUplinking(), WsfRF_Jammer::StopJamming(), WsfRIPRProcessor::StopUplinking(), WsfUplinkProcessor::StopUplinking(), WsfWeaponsManagerSAM::SystemicCANTCOAssignmentsForWeapon(), WsfRIPRProcessor::TargetPlatform(), WsfPerceptionProcessor::ThreatScore(), WsfSensorProcessor::TrackUpdated(), wsf::comm::Comm::TurnOff(), wsf::comm::router::Router::TurnOff(), WsfMover::TurnOff(), WsfProcessor::TurnOff(), WsfVisualPart::TurnOff(), WsfWeapon::TurnOff(), wsf::comm::Comm::TurnOn(), wsf::comm::router::Router::TurnOn(), WsfEOIR_Sensor::TurnOn(), WsfMover::TurnOn(), WsfProcessor::TurnOn(), WsfSensorsManagerFovSensorScheduler::TurnOn(), WsfVisualPart::TurnOn(), WsfWeapon::TurnOn(), WsfPerceptionProcessor::Unimportant(), Fires::FiresMover::Update(), TargetMover::Update(), WsfChaffMover::Update(), WsfEOIR_Sensor::Update(), WsfGuidedMoverBase::Update(), WsfLaserDesignator::Update(), WsfLaserTracker::Update(), WsfOffsetMover::Update(), WsfP6DOF_Mover::Update(), WsfPerfectTracker::Update(), WsfSAR_Sensor::Update(), WsfShadowMover::Update(), WsfSpaceMoverBase::Update(), WsfStraightLineMover::Update(), WsfTSPI_Mover::Update(), WsfWeaponTrackProcessor::Update(), WsfSpaceMoverBase::UpdateColor(), WsfCompositeSensor::UpdateCompositeTrack(), wsf::six_dof::Mover::UpdateEventPipeData(), WsfFusionCenter::UpdateFalseTargetTracks(), WsfSA_Processor::UpdateFlightControls(), WsfSA_Processor::UpdateFlightKinematics(), WsfSA_Processor::UpdateFlightKinematicsData(), WsfSA_Processor::UpdateFuel(), WsfRF_Jammer::UpdateJamming(), WsfFormationFlyer::UpdateLeadInfo(), WsfSA_Processor::UpdateNav(), WsfArticulatedPart::UpdateOrientation(), WsfFusionCenter::UpdateRealTargetTracks(), wsf::six_dof::Mover::UpdateRoute(), WsfGuidedMoverBase::UpdateRoute(), WsfP6DOF_Mover::UpdateRoute(), WsfRouteMover::UpdateRoute(), WsfLaserWeapon::UpdateShot(), wsf::six_dof::GuidanceComputer::UpdateTargetPerception(), WsfGuidanceComputer::UpdateTargetPerception(), WsfP6DOF_GuidanceComputer::UpdateTargetPerception(), WsfWeaponFuse::UpdateTargetState(), WsfWeaponTrackProcessor::UpdateTargetTrack(), WsfSA_Processor::UpdateTrackData(), WsfSA_Processor::UpdateTracks(), WsfSA_Processor::UpdateWeapons(), WsfUplinkProcessor::UplinkTrack(), wsf::comm::Comm::ValidateGateway(), WsfRIPRProcessor::WeaponsIncoming(), WsfScriptEvent::WsfScriptEvent(), WsfParabolicMover::~WsfParabolicMover(), and WsfWaypointMover::~WsfWaypointMover().

◆ GetUpdateEventEpoch()

unsigned int WsfPlatformPart::GetUpdateEventEpoch ( ) const
inline

Get the current update event 'epoch'. The event 'epoch' is used to recognize and ignore obsolete events.

Referenced by WsfPlatformPartEvent::Execute().

◆ GetUpdateInterval()

virtual double WsfPlatformPart::GetUpdateInterval ( ) const
pure virtual

Get interval at which Update() is called. This value is set by calling WsfSimulation::GetInstance().SetProcessorUpdateInterval();

Implemented in wsf::comm::Comm, wsf::comm::router::Router, wsf::UCI_Component, WsfFuel, WsfMover, WsfObserver::Comm, WsfObserver::Router, WsfProcessor, WsfSensor, WsfThermalSystem, WsfVisualPart, and WsfWeapon.

Referenced by WsfPlatformPartEvent::Execute().

◆ HasInternalLinks()

virtual bool WsfPlatformPart::HasInternalLinks ( ) const
inlinevirtual

Does this platform part have a communication link to other platform parts?

◆ IncrementUpdateEventEpoch()

void WsfPlatformPart::IncrementUpdateEventEpoch ( )
inline

Increment the 'epoch' for the update event. This should be called whenever the update interval is changed or if the processor is turned off or on.

Referenced by WsfPlatformPartEvent::Execute(), and WsfEventStepSimulation::SetPartUpdateInterval().

◆ Initialize()

bool WsfPlatformPart::Initialize ( double aSimTime)
overridevirtual

Perform phase 1 initialization of the part. This is invoked by WsfPlatform::Initialize() during phase 1 initialization of the platform. During phase 1 initialization, platform components must not assume the existence of ANY data that is the responsibility of another platform component. In particular, the platform location and initial tracks cannot be assumed to be valid.

Parameters
aSimTimeThe current simulation time.
Returns
'true' if successful or 'false' if some sort of error occurred.

Reimplemented from WsfComponent.

Reimplemented in WsfProcessor, WsfQuantumTaskerProcessor, WsfRadarSensor, WsfRF_Jammer, WsfRIPRProcessor, WsfRoadMover, WsfRotorcraftMover, WsfRouteMover, WsfSA_Processor, WsfSAR_Sensor, WsfScriptProcessor, WsfScriptStateMachineProcessor, WsfSensor, WsfSensorProcessor, WsfSensorsManagerFov, WsfShadowMover, WsfSimpleSensorsManager, WsfSOSM_Sensor, WsfSpaceMover, WsfSpaceMoverBase, WsfStraightLineMover, WsfSubsurfaceMover, WsfSurfaceWaveRadarSensor, WsfTabularRateFuel, WsfTankedFuel, WsfTaskManager, WsfTaskProcessor, WsfTBM_Mover, WsfThermalSystem, WsfThreatProcessor, WsfTowedMover, WsfTrackProcessor, WsfTrackStateControllerProcessor, WsfTSPI_Mover, WsfUplinkProcessor, WsfVariableRateFuel, WsfVisualPart, WsfWaypointMover, WsfWeapon, WsfWeaponFuse, WsfWeaponsManagerAI, WsfWeaponsManagerSAM, WsfWeaponThreatProcessor, and WsfWeaponTrackProcessor.

References WsfUniqueId::AssignUniqueId(), and GetSimulation().

Referenced by wsf::comm::router::Router::Initialize(), WsfArticulatedPart::Initialize(), WsfFuel::Initialize(), WsfMover::Initialize(), WsfProcessor::Initialize(), and WsfThermalSystem::Initialize().

◆ Initialize2()

bool WsfPlatformPart::Initialize2 ( double aSimTime)
overridevirtual

Perform phase 2 initialization of the part. This is invoked by WsfPlatform::Initialize() during phase 2 initialization of the platform. During phase 2, platform components may assume that the platform location has been defined, initial tracks have been loaded and that all components have completed phase 1 initialization.

Parameters
aSimTimeThe current simulation time.
Returns
'true' if successful or 'false' if some sort of error occurred.

Reimplemented from WsfComponent.

Reimplemented in WsfProcessor, WsfQuantumTaskerProcessor, WsfRIPRProcessor, WsfRotorcraftMover, WsfRouteMover, WsfSA_Processor, WsfScriptProcessor, WsfSensor, WsfSensorsManagerFov, WsfSimpleSensorsManager, WsfSpaceMoverBase, WsfTaskManager, WsfTaskProcessor, WsfTBM_Mover, WsfWeapon, WsfWeaponFuse, WsfWeaponsManagerAI, WsfWeaponsManagerSAM, and WsfWeaponTrackProcessor.

Referenced by WsfMover::Clone(), wsf::comm::router::Router::Initialize2(), wsf::UCI_Component::Initialize2(), WsfFuel::Initialize2(), and WsfProcessor::Initialize2().

◆ InitiallyTurnedOn()

bool WsfPlatformPart::InitiallyTurnedOn ( ) const
inline

Is the system to be turned 'on' when added to the simulation?

Referenced by WsfRF_Jammer::Initialize(), WsfRouteMover::Initialize2(), and WsfPlatform::SwapMover().

◆ IsBroken()

bool WsfPlatformPart::IsBroken ( ) const
inline

Is the part permanently broken?

Returns
true if the part is broken.

Referenced by WsfEventPipeInterface::SendPartStatus(), and SetDamageFactor().

◆ IsCategoryMember()

bool WsfPlatformPart::IsCategoryMember ( WsfStringId aCategoryId) const
inline

Is this part a member of the indicated category?

Parameters
aCategoryIdString Id of the category to be checked.
Returns
'true' if a member of the category.

Referenced by WsfSA_Processor::CalculateEmissions(), and HorizontalMapFunction::InSelectorList().

◆ IsCritical()

bool WsfPlatformPart::IsCritical ( ) const
inline

Is the part critical?

Returns
true if the part is critical. If true and damage = 1.0, the platform will be destroyed.

◆ IsExternallyControlled()

◆ IsGroupMember()

bool WsfPlatformPart::IsGroupMember ( WsfStringId aGroupId)

◆ IsOperational()

◆ IsTurnedOn()

bool WsfPlatformPart::IsTurnedOn ( ) const
inline

Is the system currently turned 'on'?

Returns
true if the device is turned on.

Referenced by WsfTaskManager::AcquireResource(), WsfTRIMSIM_Processor::AttemptToDetect(), WsfSA_Processor::CalculateEmissions(), wsf::UCI_Component::CanHandleMessage(), WsfRF_Repeater::CheckDetectAndUpdate(), wsf::UCI_PartComponent::CheckPartStatus(), HorizontalMapFunction::CreateSensorList(), FlightPathAnalysisFunction::Execute(), WsfXIO_PlatformInfoService::FillPartState(), WsfCuedLaserWeapon::Fire(), WsfOTH_RadarSensor::GetEM_Rcvr(), WsfRadarSensor::GetEM_Rcvr(), WsfOTH_RadarSensor::GetEM_RcvrCount(), WsfRadarSensor::GetEM_RcvrCount(), WsfOTH_RadarSensor::GetEM_Xmtr(), WsfRadarSensor::GetEM_Xmtr(), WsfOTH_RadarSensor::GetEM_XmtrCount(), WsfRadarSensor::GetEM_XmtrCount(), UCI_Util::GetSubsystemState(), wsf::comm::router::Router::IsActive(), WsfXIO_ObjectInfoLoad::Load_PlatformPart(), WsfEOIR_Sensor::PlatformAdded(), WsfEOIR_Sensor::PlatformDeleted(), WsfBeamDirector::PointAtTarget(), wsf::comm::Comm::ReceiveSetup(), WsfGuidanceComputer::SelectPhase(), SendMessageTo(), SendMessageToProcessor(), WsfEventPipeInterface::SendPartStatus(), SendQueuedMessages(), wsf::comm::Comm::SendSetup(), WsfCompositeSensor::SensorDetectionChanged(), WsfDisPlatform::SensorFrequencyChanged(), WsfDisPlatform::SensorModeActivated(), WsfDisPlatform::SensorModeDeactivated(), WsfDisPlatform::SensorRequestCanceled(), WsfDisPlatform::SensorRequestInitiated(), WsfDisPlatform::SensorRequestUpdated(), WsfCompositeSensor::SensorTurnedOff(), WsfTaskProcessor::SetExternallyControlled(), WsfSensor::SetIsSlave(), SetNonOperational(), WsfEventStepSimulation::SetPartUpdateInterval(), WsfRF_Jammer::StartJamming(), WsfGuidanceComputer::StartProgram(), WsfRF_Jammer::StopJamming(), WsfGuidanceComputer::StopProgram(), WsfLaserTracker::TurnOff(), WsfSensor::TurnOff(), WsfVisualPart::TurnOff(), WsfLaserTracker::TurnOn(), WsfSensor::TurnOn(), WsfVisualPart::TurnOn(), WsfEventStepSimulation::TurnPartOff(), WsfSimulation::TurnPartOffP(), WsfEventStepSimulation::TurnPartOn(), WsfSimulation::TurnPartOnP(), WsfWeaponFuse::Update(), WsfWeaponTrackProcessor::Update(), WsfMover::UpdateAllowed(), WsfEventPipeInterface::UpdateArticulation(), wsf::six_dof::GuidanceComputer::UpdateGuidance(), WsfGuidanceComputer::UpdateGuidance(), WsfP6DOF_GuidanceComputer::UpdateGuidance(), and WsfMilEventPipe::UpdateWeaponArticulation().

◆ JoinGroup()

void WsfPlatformPart::JoinGroup ( WsfGroup * aGroupPtr)

◆ LeaveGroup()

void WsfPlatformPart::LeaveGroup ( WsfGroup * aGroupPtr)

Leave the given group.

References GetPlatform(), and WsfUniqueId::GetUniqueId().

Referenced by UT_DEFINE_SCRIPT_METHOD().

◆ OnPlatformBrokenEvent()

void WsfPlatformPart::OnPlatformBrokenEvent ( double aSimTime)
virtual

Owning platform has issued a broken event.

Inform the internal systems that this platform is broken.

Parameters
aSimTimeThe current simulation time.

Reimplemented in wsf::six_dof::Mover, and WsfP6DOF_Mover.

References SetNonOperational(), SetOperational(), and TurnOff().

Referenced by WsfPlatform::OnBrokenEvent().

◆ operator=()

WsfPlatformPart & WsfPlatformPart::operator= ( const WsfPlatformPart & aRhs)
delete

References WsfPlatformPart().

◆ PartBroken()

◆ PlatformAdded()

void WsfPlatformPart::PlatformAdded ( double aSimTime,
WsfPlatform * aPlatformPtr )
virtual

Some other platform has been added to the simulation.

This is invoked (via WsfPlatform::PlatformAdded) whenever another platform has been added to the simulation.

Parameters
aSimTimeThe current simulation time.
aPlatformPtrPointer to the platform being added.

Reimplemented in WsfEOIR_Sensor, WsfOffsetMover, WsfOTH_RadarSensor, WsfRadarSensor, WsfSA_Processor, WsfSAR_Sensor, WsfSensor, WsfSensorProcessor, and WsfSurfaceWaveRadarSensor.

Referenced by WsfPlatform::PlatformAdded(), and WsfSensor::PlatformAdded().

◆ PlatformDeleted()

void WsfPlatformPart::PlatformDeleted ( WsfPlatform * aPlatformPtr)
virtual

Some other platform has been deleted from the simulation.

This is invoked (via WsfPlatform::PlatformDeleted) whenever another platform has been deleted from the simulation.

Parameters
aPlatformPtrPointer to the platform being deleted.

Reimplemented in WsfEOIR_Sensor, WsfExchangeProcessor, WsfFusionCenter, WsfLaserDesignator, WsfOffsetMover, WsfOpticalSensor, WsfQuantumTaskerProcessor, WsfSA_Processor, WsfSAR_Sensor, WsfSensor, WsfSensorProcessor, WsfSOSM_Sensor, WsfTankedFuel, WsfTaskManager, and WsfTaskProcessor.

Referenced by WsfPlatform::PlatformDeleted(), and WsfSensor::PlatformDeleted().

◆ ProcessInput()

bool WsfPlatformPart::ProcessInput ( UtInput & aInput)
overridevirtual

Process input from a generic source.

Examine the current input command. If it is NOT one of the commands recognized by this class then it simply returns 'false'. If it is one of the commands recognized by this class then it processes the command and returns 'true'.

Parameters
aInputa reference to a UtInput object.
Returns
'true' if the command was one recognized by the class or 'false' if not.
Exceptions
UtInput::ExceptionBase(or an object derived from it) if the command was recognized but contains some sort of error.
Note
If a derived class does not recognize the command (i.e.: the return value is false) then it should call the base class ProcessInput method. This chain should continue until either the command is recognized or the top-level base class is encountered.

Reimplemented from WsfObject.

Reimplemented in WsfProcessor, WsfQuantumTaskerProcessor, WsfRadarSensor, WsfRF_Jammer, WsfRIPRProcessor, WsfRoadMover, WsfRotorcraftMover, WsfRouteMover, WsfSA_Processor, WsfSAR_Sensor, WsfScriptProcessor, WsfScriptStateMachineProcessor, WsfSensor, WsfSensorProcessor, WsfSensorsManagerFov, WsfShadowMover, WsfSimpleSensorsManager, WsfSOSM_Sensor, WsfSpaceMover, WsfSpaceMoverBase, WsfStraightLineMover, WsfSurfaceMover, WsfSurfaceWaveRadarSensor, WsfTabularRateFuel, WsfTankedFuel, WsfTaskManager, WsfTaskProcessor, WsfTBM_Mover, WsfThermalSystem, WsfThreatProcessor, WsfTowedMover, WsfTrackProcessor, WsfTrackStateControllerProcessor, WsfTRIMSIM_Processor, WsfTSPI_Mover, WsfUnclassifiedAssetManager, WsfUnclassifiedBattleManager, WsfUnclassifiedDisseminateC2, WsfUplinkProcessor, WsfVariableRateFuel, WsfVisualPart, WsfWaypointMover, WsfWeapon, WsfWeaponFuse, WsfWeaponsManagerAI, WsfWeaponsManagerSAM, WsfWeaponThreatProcessor, and WsfWeaponTrackProcessor.

References WsfAuxDataEnabled::ProcessInput(), and WsfObject::ProcessInput().

Referenced by wsf::comm::router::Router::ProcessInput(), wsf::UCI_Component::ProcessInput(), WsfArticulatedPart::ProcessInput(), WsfFuel::ProcessInput(), WsfMover::ProcessInput(), and WsfProcessor::ProcessInput().

◆ ProcessMessage()

bool WsfPlatformPart::ProcessMessage ( double aSimTime,
const WsfMessage & aMessage )
virtual

Process a received message.

Parameters
aSimTimeThe current simulation time.
aMessageThe message that is being sent.
Returns
'true' if the message was processed or 'false' if not.
Note
A message is first received by ReceiveMessage which then calls ProcessMessage to process the message. A derived class ReceiveMessage method may choose to delay the message before calling ProcessMessage or may choose to ignore the message altogether.

Reimplemented in wsf::UCI_Computer, wsf::UCI_IRST_Component, wsf::UCI_PartComponent, WsfAssetManager, WsfBattleManager, WsfBMDisseminateC2, WsfBMSensorsManager, WsfBMWeaponsManager, WsfClassificationProcessor, WsfCompositeSensor, WsfCuedLaserWeapon, WsfDirectionFinderProcessor, WsfImageProcessor, WsfL16::ComputerProcessor, WsfLinkedProcessor, WsfMessageProcessor, WsfPerceptionProcessor, WsfQuantumTaskerProcessor, WsfRF_Jammer, WsfRIPRProcessor, WsfSA_Processor, WsfScriptProcessor, WsfScriptStateMachineProcessor, WsfTaskManager, WsfTaskProcessor, WsfTrackProcessor, WsfTrackStateControllerProcessor, WsfUplinkProcessor, WsfWeaponThreatProcessor, and WsfWeaponTrackProcessor.

References WsfStatusMessage::GetStatusId(), WsfStatusMessage::GetSystemNameId(), WsfMessage::GetType(), and WsfStatusMessage::GetTypeId().

Referenced by wsf::UCI_IRST_Component::ProcessMessage(), and ReceiveMessage().

◆ QueryInterface()

void * WsfPlatformPart::QueryInterface ( int aRole)
overridevirtual

Requests a component's role interface. A component can support one or more roles.

Parameters
aRoleThe role whose interface is to be returned.
Returns
A pointer to the object if it supports the indicated role, or 'null' if it does not. Usage: WsfProcessor* procPtrOrNull = (WsfProcessor*)componentPtr->QueryComponentInterface(cWSF_COMPONENT_PROCESSOR);

Implements WsfComponent.

Reimplemented in WsfProcessor, WsfRF_Jammer, WsfSensor, WsfSpaceMoverBase, WsfTaskManager, WsfThermalSystem, WsfVisualPart, and WsfWeapon.

References cWSF_COMPONENT_PLATFORM_PART.

Referenced by WsfArticulatedPart::QueryInterface(), WsfMover::QueryInterface(), and WsfProcessor::QueryInterface().

◆ ReceiveMessage()

bool WsfPlatformPart::ReceiveMessage ( double aSimTime,
const WsfMessage & aMessage )
virtual

Receive a message from another platform part (system). The default implementation simply calls ProcessMessage to process the received message.

Parameters
aSimTimeThe current simulation time.
aMessageThe message that is being sent.
Returns
'true' if the message was received or 'false' if not.
Note
A message is first received by ReceiveMessage which then calls ProcessMessage to process the message. A derived class ReceiveMessage method may choose to delay the message before calling ProcessMessage or may choose to ignore the message altogether.

Reimplemented in wsf::UCI_AMTI_Component, wsf::UCI_ESM_Component, wsf::UCI_WeaponComponent, WsfAssetManager, WsfBattleManager, WsfBMDisseminateC2, WsfBMSensorsManager, WsfBMWeaponsManager, WsfFusionCenter, WsfImageProcessor, WsfMessageProcessor, WsfQuantumTaskerProcessor, WsfRIPRProcessor, and WsfTaskManager.

References ProcessMessage().

Referenced by wsf::UCI_AMTI_Component::ReceiveMessage(), wsf::UCI_ESM_Component::ReceiveMessage(), wsf::UCI_WeaponComponent::ReceiveMessage(), WsfAssetManager::ReceiveMessage(), WsfBattleManager::ReceiveMessage(), WsfBMDisseminateC2::ReceiveMessage(), WsfBMSensorsManager::ReceiveMessage(), WsfBMWeaponsManager::ReceiveMessage(), SendMessageTo(), SendMessageToProcessor(), SendQueuedMessages(), and WsfTaskManager::SendTaskMessage().

◆ Restore()

void WsfPlatformPart::Restore ( double aSimTime)
virtual

Perform process of Restoring a part (return to Operational from non-Operational). This virtual function will usually be a response to a time-queued event. If the Damage Factor of the part is totally damaged, it will be set to "slightly" less than totally damaged, to permit the part to become Operational again.

Parameters
aSimTimeThe current simulation time.

Reimplemented in WsfMover, and WsfWeapon.

References SetOperational().

Referenced by WsfMover::Restore(), and WsfWeapon::Restore().

◆ SendMessage()

void WsfPlatformPart::SendMessage ( double aSimTime,
const WsfMessage & aMessage )
virtual

Send a message to platform parts (systems) with whom we are linked.

Parameters
aSimTimeThe current simulation time.
aMessageThe message that is being sent.

Reimplemented in WsfLinkedProcessor, WsfMessageProcessor, and WsfScriptProcessor.

References WsfMessage::Clone(), and GetSimulation().

Referenced by WsfExplicitWeapon::AddWeaponToSimulation(), WsfTrackProcessor::NotifyPlatform(), PartBroken(), wsf::comm::Comm::ReceiveActions(), WsfJTIDS_Terminal::ReceiveActions(), wsf::UCI_Computer::ReceiveUCI_Message(), WsfBeamDirector::WsfBeamDirectorMode::Select(), wsf::UCI_WeaponComponent::SendActivityMessage(), wsf::UCI_WeaponComponent::SendCapabilityMessage(), wsf::UCI_WeaponComponent::SendCapabilityStatusMessage(), wsf::UCI_PartComponent::SendCommandStatusMessage(), wsf::UCI_SensorComponent::SendCommandStatusMessage(), wsf::UCI_PartComponent::SendControlRequestStatusMessage(), wsf::UCI_SensorComponent::SendControlRequestStatusMessage(), wsf::UCI_PartComponent::SendControlStatusMessage(), wsf::UCI_SensorComponent::SendControlStatusMessage(), wsf::UCI_WeaponComponent::SendDMPI_StatusMessage(), wsf::UCI_SensorComponent::SendEntityMessage(), WsfLinkedProcessor::SendMessage(), WsfScriptProcessor::SendMessage(), SendQueuedMessages(), wsf::UCI_PartComponent::SendSubsystemStatusMessage(), wsf::UCI_PartComponent::SendSystemStatusMessage(), WsfSensor::SendTrackDropMessage(), WsfSensor::SendTrackUpdateMessage(), WsfSensorProcessor::SendTrackUpdateMessage(), SetNonOperational(), SetOperational(), WsfBeamDirector::TurnOff(), TurnOff(), TurnOn(), and WsfEOIR_Sensor::Update().

◆ SendMessageTo()

void WsfPlatformPart::SendMessageTo ( double aSimTime,
const WsfMessage & aMessage,
WsfStringId aRecipientId )
virtual

Send a message to a specific platform part on the same platform.

Parameters
aSimTimeThe current simulation time.
aMessageThe message that is being sent.
aRecipientIdThe string ID of the name of the recipient.

References WsfMessage::Clone(), GetPlatform(), GetSimulation(), IsTurnedOn(), platformPtr, ReceiveMessage(), and WsfPlatformPart().

◆ SendMessageToProcessor()

void WsfPlatformPart::SendMessageToProcessor ( double aSimTime,
const WsfMessage & aMessage,
WsfStringId aRecipientId )

Send a message to a specific processor on the same platform.

Parameters
aSimTimeThe current simulation time.
aMessageThe message that is being sent.
aRecipientIdThe string ID of the name of the recipient.

References WsfMessage::Clone(), WsfComponentList::GetComponent(), GetPlatform(), GetSimulation(), IsTurnedOn(), and ReceiveMessage().

◆ SendQueuedMessages()

void WsfPlatformPart::SendQueuedMessages ( double aSimTime)
virtual

Send queued messages from the internal and external message queues.

Parameters
aSimTimeThe current simulation time.

References IsTurnedOn(), ReceiveMessage(), SendMessage(), and WsfPlatformPart().

◆ SetCritical()

void WsfPlatformPart::SetCritical ( bool aValue)
inline

◆ SetDamageFactor()

bool WsfPlatformPart::SetDamageFactor ( double aSimTime,
double aDamageFactor )

Set the damage factor of the part.

Parameters
aSimTimeCurrent simulation time.
aDamageFactorThe new value for part damage. Zero is undamaged, one is totally damaged.
Returns
true if the damage factor changed during the request.
Note
If the part is critical, setting damage to one will queue a destruction of the platform.

References WsfSimulation::AddEvent(), WsfSimulation::DeletePlatform(), GetPlatform(), GetSimulation(), IsBroken(), PartBroken(), SetNonOperational(), and TurnOff().

Referenced by WsfMobilityAndFirepowerLethality::ApplyEffectTo(), WsfGuidedMover::IgniteStage(), and WsfGuidedMover::SeparateStage().

◆ SetDebugEnabled()

void WsfPlatformPart::SetDebugEnabled ( bool aDebugEnabled)
inline

◆ SetExternallyControlled()

void WsfPlatformPart::SetExternallyControlled ( double aSimTime,
bool aIsExternallyControlled )
virtual

◆ SetInitiallyTurnedOn()

◆ SetLastStatusChangeTime()

void WsfPlatformPart::SetLastStatusChangeTime ( double aSimTime)
inline

Allows a system to set the time at which the device was initialized.

◆ SetNonOperational()

◆ SetOperational() [1/2]

◆ SetOperational() [2/2]

bool WsfPlatformPart::SetOperational ( double aSimTime,
bool aMakeOperational )

Set the operational status of the part.

Parameters
aSimTimeCurrent simulation time.
aMakeOperationaltrue if the part is to be considered operational or false if not.
Returns
true if the request changed the operational status of the part.

References CanBeMadeNonOperational(), CanBeMadeOperational(), SetNonOperational(), SetOperational(), and TurnOff().

◆ SetPlatform()

virtual void WsfPlatformPart::SetPlatform ( WsfPlatform * aPlatformPtr)
inlinevirtual

Set the platform to which this part is associated.

Parameters
aPlatformPtrPointer to the containing platform.
Note
A part can be associated with only one platform. It is an error to associate a part with more than one platform!

Reimplemented in WsfArticulatedPart, WsfExplicitWeapon, WsfFuel, WsfOffsetMover, WsfScriptProcessor, WsfSensor, WsfWaypointMover, and WsfWeaponTrackProcessor.

Referenced by ComponentParentChanged(), WsfArticulatedPart::SetPlatform(), WsfFuel::SetPlatform(), WsfOffsetMover::SetPlatform(), WsfScriptProcessor::SetPlatform(), WsfWaypointMover::SetPlatform(), WsfWeaponTrackProcessor::SetPlatform(), and WsfPlatform::SwapMover().

◆ SetUpdateEventActive()

void WsfPlatformPart::SetUpdateEventActive ( bool aUpdateEventActive)
inline

Indicate if the 'Update' event is active.

Referenced by WsfPlatformPartEvent::Execute().

◆ SetUpdateInterval()

virtual void WsfPlatformPart::SetUpdateInterval ( double aUpdateInterval)
pure virtual

Set the time interval between the periodic calls to Update(). A value of less than or equal to zero indicates periodic updates are not to be performed.

Parameters
aUpdateIntervalThe new update interval.
Note
Users should call WsfSimulation::GetInstance().SetProcessorUpdateInterval() to set the interval.

Implemented in wsf::comm::Comm, wsf::comm::router::Router, wsf::UCI_Component, WsfFuel, WsfMover, WsfObserver::Comm, WsfObserver::Router, WsfProcessor, WsfSensor, WsfThermalSystem, WsfVisualPart, and WsfWeapon.

Referenced by WsfEventStepSimulation::SetPartUpdateInterval(), and WsfSimulation::SetPartUpdateInterval().

◆ TurnOff()

◆ TurnOn()

◆ Update()

void WsfPlatformPart::Update ( double aSimTime)
virtual

Update the state of an platform part. Updates the platform part to reflect the state at the specified simulation time.

Parameters
aSimTimeThe current simulation time.

Reimplemented in Fires::FiresMover, TargetMover, wsf::comm::Comm, wsf::six_dof::Fuel, wsf::six_dof::Mover, WsfAcousticSensor, WsfARGO8_Mover, WsfAssetManager, WsfBattleManager, WsfBeamDirector, WsfBMDisseminateC2, WsfBMSensorsManager, WsfBMWeaponsManager, WsfBrawlerMover, WsfChaffMover, WsfCoherentSensorProcessor, WsfCompositeSensor, WsfDisMover, WsfEOIR_Sensor, WsfFollower, WsfFormationFlyer, WsfFuel, WsfFusionCenter, WsfGeometricSensor, WsfGuidedMoverBase, WsfHybridMover, WsfImplicitWeapon, WsfIRST_Sensor, WsfLADAR_Sensor, WsfLaserDesignator, WsfLaserTracker, WsfLaserWeapon, WsfMessageProcessor, WsfMover, WsfNullSensor, WsfObserver::Comm, WsfOffsetMover, WsfOpticalSensor, WsfOrbitalConjunctionProcessor, WsfOTH_RadarSensor, WsfP6DOF_Fuel, WsfP6DOF_Mover, WsfParabolicMover, WsfPassiveSensor, WsfPerceptionProcessor, WsfPerfectTracker, WsfProcessor, WsfQuantumTaskerProcessor, WsfRadarSensor, WsfRIPRProcessor, WsfRouteMover, WsfSA_Processor, WsfSAR_Sensor, WsfScriptProcessor, WsfScriptStateMachineProcessor, WsfSensor, WsfShadowMover, WsfSimpleSensorsManager, WsfSOSM_Sensor, WsfSpaceMoverBase, WsfStraightLineMover, WsfSurfaceWaveRadarSensor, WsfTankedFuel, WsfTaskManager, WsfTBM_Mover, WsfThreatProcessor, WsfTowedMover, WsfTSPI_Mover, WsfVisualPart, WsfWeapon, WsfWeaponFuse, WsfWeaponsManagerAI, WsfWeaponsManagerSAM, and WsfWeaponTrackProcessor.

Referenced by WsfPlatformPartEvent::Execute(), and WsfLaserWeapon::Update().

◆ UpdateEventActive()

bool WsfPlatformPart::UpdateEventActive ( ) const
inline

Is an 'Update' event active?

Referenced by WsfEventStepSimulation::SetPartUpdateInterval().


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