|
WSF
|
#include <WsfSA_Module.hpp>


Public Member Functions | |
| WsfSA_Module (WsfSA_Processor *aSA_ProcPtr, WsfSA_Processor::PerceiveData *aDataPtr) | |
| ~WsfSA_Module ()=default | |
| virtual void | Update (double aSimTime) |
| Update this module. | |
| WsfSA_Processor * | GetSAP () const |
| Return a pointer to the SA Processor that owns this module. | |
| void | SetSAP (WsfSA_Processor *aSA_ProcPtr, WsfSA_Processor::PerceiveData *aDataPtr) |
| Sets the SA Processor that owns this module. | |
| WsfPlatform * | GetPlatform () const |
| Return a pointer to the platform. | |
| WsfScriptContext & | GetScriptContext () const |
| Return a reference to the script context. | |
| WsfSimulation * | GetSimulation () const |
| Return a pointer to the simulation. | |
Protected Member Functions | |
| WsfSA_Module (const WsfSA_Module &aSrc) | |
Protected Attributes | |
| WsfSA_Processor * | mSA_ProcessorPtr {nullptr} |
| Pointer to the owning processor for this module. | |
| WsfSA_Processor::PerceiveData * | mDataPtr |
| Perceived data container used by multiple SAP classes and lives in the SA Processor. | |
| WsfSA_Module::WsfSA_Module | ( | WsfSA_Processor * | aSA_ProcPtr, |
| WsfSA_Processor::PerceiveData * | aDataPtr ) |
References mDataPtr, and mSA_ProcessorPtr.
Referenced by WsfSA_Assess::WsfSA_Assess(), WsfSA_Module(), WsfSA_Perceive::WsfSA_Perceive(), WsfSA_Perceive::WsfSA_Perceive(), WsfSA_Predict::WsfSA_Predict(), and WsfSA_Predict::WsfSA_Predict().
|
default |
|
protected |
References mDataPtr, mSA_ProcessorPtr, and WsfSA_Module().
| WsfPlatform * WsfSA_Module::GetPlatform | ( | ) | const |
Return a pointer to the platform.
References mSA_ProcessorPtr.
Referenced by WsfSA_Assess::AngleOffTarget2D(), WsfSA_Assess::AngleOffTarget3D(), WsfSA_Assess::AspectAngleForTarget2D(), WsfSA_Assess::AspectAngleForTarget3D(), WsfSA_Perceive::AssetScore(), WsfSA_Assess::CalcDeltaAltitude(), WsfSA_Assess::CalcSlantRange(), WsfSA_Assess::CalculateDefensiveness(), WsfSA_Assess::CalculateMissileTargetValue(), WsfSA_Assess::CalculateMissileThreatLevel(), WsfSA_Assess::CalculateRisk(), WsfSA_Assess::CalculateTargetValue(), WsfSA_Assess::CalculateThreatLevel(), WsfSA_Assess::CalculateUrgency(), WsfSA_Perceive::CreateAssetsList(), WsfSA_Perceive::CreateBogiesList(), WsfSA_Perceive::CreateGroup(), WsfSA_Perceive::DefaultThreatScore(), WsfSA_Assess::ExecuteCalculateDefensiveness(), WsfSA_Assess::ExecuteCalculateEntityTargetValue(), WsfSA_Assess::ExecuteCalculateEntityThreatLevel(), WsfSA_Assess::ExecuteCalculateFlightRisk(), WsfSA_Assess::ExecuteCalculateGroupTargetValue(), WsfSA_Assess::ExecuteCalculateGroupThreatLevel(), WsfSA_Assess::ExecuteCalculateMissileTargetValue(), WsfSA_Assess::ExecuteCalculateMissileThreatLevel(), WsfSA_Assess::ExecuteCalculateMissionRisk(), WsfSA_Assess::ExecuteCalculatePackageRisk(), WsfSA_Assess::ExecuteCalculateRisk(), WsfSA_Assess::ExecuteCalculateSelfRisk(), WsfSA_Assess::ExecuteCalculateUrgency(), WsfSA_Assess::ExecuteCalcWeaponSupport(), WsfSA_Assess::ExpectedDetectionRangeAgainstTarget(), WsfSA_Assess::ExpectedDetectionRangeByTarget(), WsfSA_Assess::ExpectedNormalizedDetectionRangeAgainstTarget(), WsfSA_Assess::ExpectedNormalizedWezRangeAgainstTarget(), WsfSA_Assess::ExpectedWezRangeByTarget(), WsfSA_Perceive::FindExpenableCountermeasures(), WsfSA_Perceive::FindWeapons(), WsfSA_Assess::GetPerceivedTrackedPlatformWithTarget(), WsfSA_Perceive::Initialize(), WsfSA_Perceive::MergeGroups(), WsfSA_Perceive::NearestEntity(), WsfSA_Assess::OffBoresightAngleForTarget(), WsfSA_Assess::OffBoresightAngleForTarget(), WsfSA_Perceive::ProcessMessage(), WsfSA_Predict::ProjectPositionForward(), WsfSA_Predict::ProjectPositionGoToPoint(), WsfSA_Predict::ProjectPositionInTime(), WsfSA_Predict::ProjectPositionLevelTurn(), WsfSA_Predict::ProjectPositionRollAndPull(), WsfSA_Predict::ProjectPositionRollAndPull(), WsfSA_Predict::ProjectPositionSplitS(), WsfSA_Predict::ProjectPositionTurnToHeading(), WsfSA_Perceive::Prune(), WsfSA_Perceive::SetSelectedWeapon(), WsfSA_Assess::SortedGroups(), WsfSA_Perceive::SplitGroup(), WsfSA_Perceive::ThreatScore(), WsfSA_Perceive::TruthAssets(), WsfSA_Perceive::TryUpdateAssets(), WsfSA_Perceive::TryUpdatePerceivedItemData(), WsfSA_Perceive::UpdateAssetsData(), WsfSA_Assess::UpdateEngagements(), WsfSA_Assess::UpdateEngagementsData(), WsfSA_Perceive::UpdateGroupsData(), WsfSA_Perceive::UpdatePerceivedItemsCalculation(), WsfSA_Assess::UpdatePrioritizedItemData(), and WsfSA_Perceive::UpdateStatus().
|
inline |
Return a pointer to the SA Processor that owns this module.
References mSA_ProcessorPtr.
Referenced by WsfSA_Assess::BestTarget(), WsfSA_Assess::BestTargetEntity(), WsfSA_Assess::BestTargetGroup(), WsfSA_Assess::CalculateTrackedPlatforms(), WsfSA_Perceive::CreateAssetsList(), WsfSA_Perceive::CreateBanditsList(), WsfSA_Assess::GetGroup(), WsfSA_Assess::GetPerceivedTrackedPlatformWithTarget(), WsfSA_Assess::HighestThreat(), WsfSA_Assess::HighestThreatEntity(), WsfSA_Assess::HighestThreatGroup(), WsfSA_Assess::Initialize(), WsfSA_Perceive::Initialize(), WsfSA_Predict::Initialize(), WsfSA_Perceive::PerceivedAircraftAssets(), WsfSA_Perceive::PerceivedAssets(), WsfSA_Assess::PerceivedGroups(), WsfSA_Perceive::PerceivedMissileAssets(), WsfSA_Assess::PerceivedThreatItems(), WsfSA_Perceive::PossibleEnemy(), WsfSA_Perceive::ProcessInput(), WsfSA_Perceive::ProcessMessage(), WsfSA_Perceive::Prune(), WsfSA_Perceive::PurgeOldAssets(), WsfSA_Perceive::SetFocus(), WsfSA_Perceive::TryUpdateAssets(), WsfSA_Assess::TryUpdateEngagements(), WsfSA_Perceive::TryUpdatePerceivedItemCalculation(), WsfSA_Perceive::TryUpdatePerceivedItemData(), WsfSA_Assess::TryUpdatePrioritizedItemCalculation(), WsfSA_Assess::TryUpdatePrioritizedItemData(), WsfSA_Perceive::TryUpdateStatus(), WsfSA_Perceive::UpdateAssets(), WsfSA_Perceive::UpdateAssetsData(), WsfSA_Assess::UpdateEngagements(), WsfSA_Assess::UpdateEngagementsData(), WsfSA_Perceive::UpdateGroupsData(), WsfSA_Perceive::UpdatePerceivedItemsCalculation(), WsfSA_Assess::UpdatePrioritizedItemCalculation(), WsfSA_Assess::UpdatePrioritizedItemData(), and WsfSA_Perceive::UpdateStatus().
| WsfScriptContext & WsfSA_Module::GetScriptContext | ( | ) | const |
Return a reference to the script context.
References mSA_ProcessorPtr.
Referenced by WsfSA_Perceive::AssetScore(), WsfSA_Assess::CalculateDefensiveness(), WsfSA_Assess::CalculateRisk(), WsfSA_Assess::CalculateUrgency(), WsfSA_Assess::ExecuteCalculateDefensiveness(), WsfSA_Assess::ExecuteCalculateEntityTargetValue(), WsfSA_Assess::ExecuteCalculateEntityThreatLevel(), WsfSA_Assess::ExecuteCalculateFlightRisk(), WsfSA_Assess::ExecuteCalculateGroupTargetValue(), WsfSA_Assess::ExecuteCalculateGroupThreatLevel(), WsfSA_Assess::ExecuteCalculateMissileTargetValue(), WsfSA_Assess::ExecuteCalculateMissileThreatLevel(), WsfSA_Assess::ExecuteCalculateMissionRisk(), WsfSA_Assess::ExecuteCalculatePackageRisk(), WsfSA_Assess::ExecuteCalculateRisk(), WsfSA_Assess::ExecuteCalculateSelfRisk(), WsfSA_Assess::ExecuteCalculateUrgency(), WsfSA_Assess::ExecuteCalcWeaponSupport(), WsfSA_Predict::ProjectPositionForward(), WsfSA_Predict::ProjectPositionGoToPoint(), WsfSA_Predict::ProjectPositionInTime(), WsfSA_Predict::ProjectPositionLevelTurn(), WsfSA_Predict::ProjectPositionRollAndPull(), WsfSA_Predict::ProjectPositionRollAndPull(), WsfSA_Predict::ProjectPositionSplitS(), WsfSA_Predict::ProjectPositionTurnToHeading(), WsfSA_Perceive::Prune(), and WsfSA_Perceive::ThreatScore().
| WsfSimulation * WsfSA_Module::GetSimulation | ( | ) | const |
Return a pointer to the simulation.
References mSA_ProcessorPtr.
Referenced by WsfSA_Assess::CalculatePrioritizedTargets(), WsfSA_Assess::CalculatePrioritizedThreats(), WsfSA_Perceive::CreateAssetsList(), WsfSA_Perceive::CreateBanditsList(), WsfSA_Assess::ExpectedDetectionRangeAgainstTarget(), WsfSA_Assess::ExpectedDetectionRangeByTarget(), WsfSA_Assess::ExpectedNormalizedDetectionRangeAgainstTarget(), WsfSA_Assess::ExpectedNormalizedWezRangeAgainstTarget(), WsfSA_Perceive::Important(), WsfSA_Perceive::ProcessMessage(), WsfSA_Perceive::TryUpdateAssets(), WsfSA_Perceive::TryUpdatePerceivedItemData(), WsfSA_Perceive::Unimportant(), WsfSA_Perceive::UpdateAssetsData(), WsfSA_Assess::UpdateEngagements(), WsfSA_Assess::UpdateEngagementsData(), WsfSA_Perceive::UpdatePerceivedItemsCalculation(), WsfSA_Assess::UpdatePrioritizedItemData(), and WsfSA_Perceive::UpdateStatus().
| void WsfSA_Module::SetSAP | ( | WsfSA_Processor * | aSA_ProcPtr, |
| WsfSA_Processor::PerceiveData * | aDataPtr ) |
Sets the SA Processor that owns this module.
| aSA_ProcPtr | pointer to SAP. |
| aDataPtr | pointer to SAP's PerceiveData container. |
References mDataPtr, and mSA_ProcessorPtr.
|
virtual |
Update this module.
| aSimTime | sim time of the update. |
|
protected |
Perceived data container used by multiple SAP classes and lives in the SA Processor.
Referenced by WsfSA_Perceive::AddExtraCognitiveLoading(), WsfSA_Perceive::AssetScore(), WsfSA_Assess::BestTarget(), WsfSA_Assess::BestTargetAircraft(), WsfSA_Assess::BestTargetMissile(), WsfSA_Perceive::CreateAssetsList(), WsfSA_Perceive::CreateAssetSublists(), WsfSA_Perceive::CreateBanditsList(), WsfSA_Perceive::CreateBogiesList(), WsfSA_Perceive::CreateGroup(), WsfSA_Perceive::CreateSublists(), WsfSA_Perceive::DisbandGroup(), WsfSA_Perceive::DispenseChaff(), WsfSA_Perceive::DispenseDecoy(), WsfSA_Perceive::DispenseFlare(), WsfSA_Perceive::DropEntity(), WsfSA_Perceive::EngagedTargetValid(), WsfSA_Perceive::EntityIsInAssetGroup(), WsfSA_Perceive::EntityIsInAssetGroup(), WsfSA_Perceive::FindExpenableCountermeasures(), WsfSA_Perceive::FindWeapons(), WsfSA_Perceive::GetEngagedTarget(), WsfSA_Perceive::GetMasterArm(), WsfSA_Perceive::GetWeaponList(), WsfSA_Assess::HighestThreat(), WsfSA_Assess::HighestThreatAircraft(), WsfSA_Assess::HighestThreatMissile(), WsfSA_Perceive::Important(), WsfSA_Perceive::Important(), WsfSA_Perceive::Initialize(), WsfSA_Perceive::JammingDetected(), WsfSA_Perceive::LocalTrackDropped(), WsfSA_Perceive::MarkAssetAsImportant(), WsfSA_Perceive::MarkAssetAsUnimportant(), WsfSA_Perceive::MarkAssetTypeAsImportant(), WsfSA_Perceive::MarkAssetTypeAsUnimportant(), WsfSA_Perceive::MarkThreatAsImportant(), WsfSA_Perceive::MarkThreatAsUnimportant(), WsfSA_Perceive::MarkThreatTypeAsImportant(), WsfSA_Perceive::MarkThreatTypeAsUnimportant(), WsfSA_Perceive::MasterCautionActive(), WsfSA_Perceive::MasterWarningActive(), WsfSA_Perceive::MaxAssetLoad(), WsfSA_Perceive::MaxThreatLoad(), WsfSA_Perceive::MergeGroups(), WsfSA_Perceive::NearestAircraftAsset(), WsfSA_Perceive::NearestAircraftBandit(), WsfSA_Perceive::NearestAircraftBogie(), WsfSA_Perceive::NearestAsset(), WsfSA_Perceive::NearestBandit(), WsfSA_Perceive::NearestBogie(), WsfSA_Perceive::NearestMissileAsset(), WsfSA_Perceive::NearestMissileBandit(), WsfSA_Perceive::NearestMissileBogie(), WsfSA_Perceive::PerceivedAircraftAssets(), WsfSA_Perceive::PerceivedAircraftBandits(), WsfSA_Perceive::PerceivedAircraftBogies(), WsfSA_Perceive::PerceivedAsset(), WsfSA_Perceive::PerceivedAssets(), WsfSA_Perceive::PerceivedBandits(), WsfSA_Perceive::PerceivedBogies(), WsfSA_Perceive::PerceivedMissileAssets(), WsfSA_Perceive::PerceivedMissileBandits(), WsfSA_Perceive::PerceivedMissileBogies(), WsfSA_Perceive::PerceivedThreat(), WsfSA_Perceive::PerceivedThreat(), WsfSA_Perceive::ProcessInput(), WsfSA_Perceive::ProcessMessage(), WsfSA_Perceive::Prune(), WsfSA_Perceive::PurgeOldAssets(), WsfSA_Perceive::QuantityOfChaff(), WsfSA_Perceive::QuantityOfDecoys(), WsfSA_Perceive::QuantityOfFlares(), WsfSA_Perceive::QuantityOfSelectedWeapon(), WsfSA_Perceive::RemoveAnyInvalidEntitiesInBogiesAndBandits(), WsfSA_Perceive::RemoveEntityFromGroup(), WsfSA_Perceive::RenameGroup(), WsfSA_Perceive::ResetMaxAssetLoad(), WsfSA_Perceive::ResetMaxThreatLoad(), WsfSA_Perceive::SelectedWeapon(), WsfSA_Perceive::SelectedWeaponName(), WsfSA_Perceive::SetEngagedTarget(), WsfSA_Perceive::SetFocus(), WsfSA_Perceive::SetJammingDetected(), WsfSA_Perceive::SetMasterArm(), WsfSA_Perceive::SetMasterCautionActive(), WsfSA_Perceive::SetMasterWarningActive(), WsfSA_Perceive::SetMaxAssetLoad(), WsfSA_Perceive::SetMaxThreatLoad(), SetSAP(), WsfSA_Perceive::SetSelectedWeapon(), WsfSA_Perceive::SetShootCueActive(), WsfSA_Perceive::SetShootCueBlinking(), WsfSA_Perceive::SetWeaponBayDoorsAreOpen(), WsfSA_Perceive::ShootCueActive(), WsfSA_Perceive::ShootCueBlinking(), WsfSA_Assess::SortedGroups(), WsfSA_Perceive::SplitGroup(), WsfSA_Perceive::ThreatScore(), WsfSA_Perceive::TransferEntity(), WsfSA_Perceive::TruthAssets(), WsfSA_Perceive::TryUpdateAssets(), WsfSA_Perceive::TryUpdatePerceivedItemCalculation(), WsfSA_Perceive::Unimportant(), WsfSA_Perceive::Unimportant(), WsfSA_Perceive::UpdateAssetsData(), WsfSA_Assess::UpdateGroupFocusLists(), WsfSA_Perceive::UpdateGroupsData(), WsfSA_Perceive::UpdatePerceivedItemsCalculation(), WsfSA_Perceive::UpdateStatus(), WsfSA_Perceive::WeaponBayDoorsAreOpen(), WsfSA_Module(), and WsfSA_Module().
|
protected |
Pointer to the owning processor for this module.
Referenced by WsfSA_Predict::CheckRequestedTime(), WsfSA_Assess::ExpectedMaximumEngagementRangeAgainstTarget(), WsfSA_Assess::ExpectedMinimumEngagementRangeAgainstTarget(), WsfSA_Assess::ExpectedNoEscapeRangeAgainstTarget(), WsfSA_Assess::ExpectedWezRangeAgainstTarget(), WsfSA_Assess::ExpectedWezRangeByTarget(), GetPlatform(), GetSAP(), GetScriptContext(), GetSimulation(), SetSAP(), WsfSA_Module(), and WsfSA_Module().