|
WSF
|
#include <WsfEW_Effects.hpp>

Classes | |
| class | EW_Error |
| class | EW_JammingEffect |
| class | EW_SignalEffect |
| class | RepeaterData |
Public Member Functions | |
| virtual | ~WsfEW_Effects ()=default |
| void | Process (double aSimTime, const WsfEM_Interaction &aTargetInteraction, const WsfEM_Interaction &aJammerToTgtInteraction, const ut::optional< WsfEM_Interaction > &aTgtToJammerInteraction, bool aProcessOnlyEA_Effects) |
| void | Print (ut::log::MessageStream &aStream) const |
| Print the interaction data to standard output. | |
| void | Reset () |
Static Public Member Functions | |
| static std::unique_ptr< UtScriptClass > | CreateScriptClass (const std::string &aClassName, UtScriptTypes *aScriptTypesPtr) |
Public Attributes | |
| unsigned int | mMask {0} |
| unsigned int | mEA_CoherencyMask {0} |
| EW_Error | mEW_Error |
| EW_JammingEffect | mEW_NoiseJammingEffect |
| EW_JammingEffect | mEW_PulseJammingEffect |
| EW_JammingEffect | mEW_CoherentJammingEffect |
| EW_SignalEffect | mEW_SignalEffect |
| RepeaterData | mCurrentRepeaterData |
A support class for Electronic Warfare (EW) interaction effects.
This class is used to provide a common mechanism for performing EW interactions (i.e.: interactions involving EW).
Most of the class data is public and represents the results of various calculations performed by the class. Much data is maintained so interested parties can gather data without having to modify the underlying code.
|
virtualdefault |
References CreateScriptClass(), Print(), Process(), and Reset().
|
static |
Create the 'class' object for the script system. This is invoked once by WsfScriptManager to create the 'class' object that defines the interface to instances of this class from the script system.
Referenced by ~WsfEW_Effects().
| void WsfEW_Effects::Print | ( | ut::log::MessageStream & | aStream | ) | const |
Print the interaction data to standard output.
References mEW_CoherentJammingEffect, mEW_Error, mEW_NoiseJammingEffect, mEW_PulseJammingEffect, mEW_SignalEffect, and mMask.
Referenced by ~WsfEW_Effects().
| void WsfEW_Effects::Process | ( | double | aSimTime, |
| const WsfEM_Interaction & | aTargetInteraction, | ||
| const WsfEM_Interaction & | aJammerToTgtInteraction, | ||
| const ut::optional< WsfEM_Interaction > & | aTgtToJammerInteraction, | ||
| bool | aProcessOnlyEA_Effects ) |
Process an electronic warfare interaction between a transmitter and a receiver during a target interaction.
| aSimTime | [input] The current simulation time. |
| aTargetInteraction | [input] The target interaction for the detection attempt. |
| aJammerToTgtInteraction | [input] The jammer interaction for the jammer xmtr to victim Rcvr. |
| aTgtToJammerInteraction | [input] Optional jammer interaction for the Victim Xmtr to jammer Rcvr. This will have no value if the jammer Rcvr doesn't exist. |
| aProcessOnlyEA_Effects | [input] Process only EA effects, not EP effects. |
References WsfEW_Technique::CanApplyTechnique(), WsfEW_Effect::cEB_REPEATER_UPDATE, WsfEW_Effect::ConvertToEW_SystemFunction(), WsfEW_Effect::GetCoherencyMask(), WsfEW_Technique::GetEffect(), WsfEW_Technique::GetEffects(), WsfEW_EA::GetElectronicAttack(), WsfEW_EP::GetElectronicProtect(), WsfEM_Rcvr::GetFunction(), WsfEM_Xmtr::GetFunction(), WsfEW_EA_EP::GetMitigatingEffects(), WsfEM_Interaction::GetReceiver(), WsfEW_EA_EP::GetTechnique(), WsfEW_EA_EP::GetTechniquesInUse(), WsfEM_Interaction::GetTransmitter(), mEA_CoherencyMask, mMask, and WsfEW_Effect::ProcessUnmitigatedEffect().
Referenced by ~WsfEW_Effects().
| void WsfEW_Effects::Reset | ( | ) |
References mCurrentRepeaterData, mEA_CoherencyMask, mEW_CoherentJammingEffect, mEW_Error, mEW_NoiseJammingEffect, mEW_PulseJammingEffect, mEW_SignalEffect, and mMask.
Referenced by WsfRF_Jammer::ComputeTotalJammerEffects(), and ~WsfEW_Effects().
| RepeaterData WsfEW_Effects::mCurrentRepeaterData |
Referenced by WsfRF_Repeater::CheckDetectAndUpdate(), Reset(), and WsfEW_RepeaterEffect::UpdateEffects().
| unsigned int WsfEW_Effects::mEA_CoherencyMask {0} |
Referenced by WsfRF_Jammer::ComputeSingleJammerEffect(), WsfRF_Jammer::ComputeTotalJammerEffects(), Process(), and Reset().
| EW_JammingEffect WsfEW_Effects::mEW_CoherentJammingEffect |
Referenced by WsfEW_PowerEffect::ApplyMitigatedEffect(), WsfEW_PulseSuppressEffect::ApplyMitigatedEffect(), WsfEW_RadiusEffect::ApplyMitigatedEffect(), WsfEW_SLB_Effect::ApplyMitigatedEffect(), WsfEW_SLC_Effect::ApplyMitigatedEffect(), WsfEW_PowerEffect::ApplyUnmitigatedEffect(), WsfEW_RadiusEffect::ApplyUnmitigatedEffect(), WsfEW_RepeaterEffect::ApplyUnmitigatedEffect(), WsfEW_RPJ_Effect::ApplyUnmitigatedEffect(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfRF_Jammer::ComputeTotalJammerEffects(), WsfFalseTarget::PowerSufficiencyCheck(), Print(), Reset(), WsfEW_Effect::ResetProtectionTypeFlag(), WsfEW_PowerEffect::UpdateEffects(), WsfEW_SimpleFT_Effect::UpdateEffects(), and WsfEW_TrackEffect::UpdateEffects().
| EW_Error WsfEW_Effects::mEW_Error |
Referenced by WsfEW_CommEffect::ApplyMitigatedEffect(), WsfEW_TrackEffect::ApplyMitigatedEffect(), WsfEW_CommEffect::ApplyUnmitigatedEffect(), WsfEW_TrackEffect::ApplyUnmitigatedEffect(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfEW_SensorComponent::ComputeSphericalMeasurementErrors(), WsfRF_Jammer::ComputeTotalJammerEffects(), Print(), and Reset().
| EW_JammingEffect WsfEW_Effects::mEW_NoiseJammingEffect |
Referenced by WsfEW_PowerEffect::ApplyMitigatedEffect(), WsfEW_RadiusEffect::ApplyMitigatedEffect(), WsfEW_SLB_Effect::ApplyMitigatedEffect(), WsfEW_SLC_Effect::ApplyMitigatedEffect(), WsfEW_PowerEffect::ApplyUnmitigatedEffect(), WsfEW_RadiusEffect::ApplyUnmitigatedEffect(), WsfEW_RepeaterEffect::ApplyUnmitigatedEffect(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfRF_Jammer::ComputeTotalJammerEffects(), Print(), Reset(), WsfEW_Effect::ResetProtectionTypeFlag(), and WsfEW_PowerEffect::UpdateEffects().
| EW_JammingEffect WsfEW_Effects::mEW_PulseJammingEffect |
Referenced by WsfEW_PowerEffect::ApplyMitigatedEffect(), WsfEW_PulseSuppressEffect::ApplyMitigatedEffect(), WsfEW_RadiusEffect::ApplyMitigatedEffect(), WsfEW_SLB_Effect::ApplyMitigatedEffect(), WsfEW_SLC_Effect::ApplyMitigatedEffect(), WsfEW_CoverPulseEffect::ApplyUnmitigatedEffect(), WsfEW_PowerEffect::ApplyUnmitigatedEffect(), WsfEW_RadiusEffect::ApplyUnmitigatedEffect(), WsfEW_RepeaterEffect::ApplyUnmitigatedEffect(), WsfEW_RPJ_Effect::ApplyUnmitigatedEffect(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPower(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeJammerPowers(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfRF_Jammer::ComputeTotalJammerEffects(), Print(), Reset(), WsfEW_Effect::ResetProtectionTypeFlag(), WsfEW_CoverPulseEffect::UpdateEffects(), WsfEW_PowerEffect::UpdateEffects(), and WsfEW_RPJ_Effect::UpdateEffects().
| EW_SignalEffect WsfEW_Effects::mEW_SignalEffect |
Referenced by WsfEW_PowerEffect::ApplyMitigatedEffect(), WsfEW_PowerEffect::ApplyUnmitigatedEffect(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfRF_Jammer::ComputeTotalJammerEffects(), WsfEW_SensorComponent::EW_Beam::DetectJamStrobes(), WsfFalseTarget::PowerSufficiencyCheck(), Print(), Reset(), WsfEW_CoverPulseEffect::UpdateEffects(), WsfEW_PowerEffect::UpdateEffects(), WsfEW_SimpleFT_Effect::UpdateEffects(), and WsfEW_TrackEffect::UpdateEffects().
| unsigned int WsfEW_Effects::mMask {0} |
Referenced by WsfEW_AgilityEffect::ApplyMitigatedEffect(), WsfEW_CommEffect::ApplyMitigatedEffect(), WsfEW_PowerEffect::ApplyMitigatedEffect(), WsfEW_PulseSuppressEffect::ApplyMitigatedEffect(), WsfEW_RadiusEffect::ApplyMitigatedEffect(), WsfEW_SLB_Effect::ApplyMitigatedEffect(), WsfEW_SLC_Effect::ApplyMitigatedEffect(), WsfEW_TrackEffect::ApplyMitigatedEffect(), WsfEW_AgilityEffect::ApplyUnmitigatedEffect(), WsfEW_CommEffect::ApplyUnmitigatedEffect(), WsfEW_CoverPulseEffect::ApplyUnmitigatedEffect(), WsfEW_FalseTargetEffect::ApplyUnmitigatedEffect(), WsfEW_PolModEffect::ApplyUnmitigatedEffect(), WsfEW_PowerEffect::ApplyUnmitigatedEffect(), WsfEW_RadiusEffect::ApplyUnmitigatedEffect(), WsfEW_RepeaterEffect::ApplyUnmitigatedEffect(), WsfEW_RPJ_Effect::ApplyUnmitigatedEffect(), WsfEW_SimpleFT_Effect::ApplyUnmitigatedEffect(), WsfEW_SLC_DegradeEffect::ApplyUnmitigatedEffect(), WsfEW_TrackEffect::ApplyUnmitigatedEffect(), WsfEW_SensorComponent::AttemptToDetect(), WsfEW_CommComponent::AttemptToReceive(), WsfRF_Repeater::CheckDetectAndUpdate(), WsfRF_Jammer::ComputeSingleJammerEffect(), WsfEW_SensorComponent::ComputeSphericalMeasurementErrors(), WsfRF_Jammer::ComputeTotalJammerEffects(), WsfFalseTarget::PowerSufficiencyCheck(), Print(), Process(), Reset(), WsfEW_Effect::ResetProtectionTypeFlag(), WsfEW_RepeaterEffect::UpdateEffects(), and WsfEW_SimpleFT_Effect::UpdateEffects().