12#ifndef WSFEW_SLB_EFFECT_HPP
13#define WSFEW_SLB_EFFECT_HPP
15#include "wsf_mil_export.h"
82 const ut::optional<WsfEM_Interaction>& aTgtToJammerInteraction,
97 bool AddTargetBlankingProbability(
double aDutyCycle,
double aProbability);
103 double GetTargetBlankingProbability(
double aDutyCycle)
const;
111 bool mExplicitAuxBeamTilt;
113 double mAuxThresholds[2];
114 double mMainThresholds[2];
117 double mBlankingThreshold;
119 double mSaturationDutyCycle;
Definition WsfAntennaPattern.hpp:35
Definition WsfEM_Antenna.hpp:49
Definition WsfEM_Interaction.hpp:68
Definition WsfEM_Rcvr.hpp:68
Definition WsfEM_Xmtr.hpp:55
Definition WsfEW_EA.hpp:37
Definition WsfEW_EP.hpp:36
Definition WsfEW_Effect.hpp:45
virtual void RemoveJammerXmtr(unsigned int aXmtrId)
Definition WsfEW_Effect.cpp:399
Definition WsfEW_Effects.hpp:41
void ApplyUnmitigatedEffect(WsfEW_Effects &aEW_Effects) const override
Definition WsfEW_PowerEffect.cpp:72
bool Initialize(WsfSimulation &aSimulation) override
Definition WsfEW_PowerEffect.cpp:53
bool ProcessInput(UtInput &aInput) override
Definition WsfEW_PowerEffect.cpp:66
WsfEW_Effect * Clone() const override
Definition WsfEW_PowerEffect.cpp:47
WsfEW_PowerEffect()
Definition WsfEW_PowerEffect.cpp:30
void ApplyMitigatedEffect(WsfEW_Effect *aEW_EffectPtr, WsfEW_Effects &aEW_Effects) const override
Definition WsfEW_PowerEffect.cpp:233
void UpdateEffects(double aSimTime, const WsfEM_Interaction &aTargetInteraction, const WsfEM_Interaction &aJammerToTgtInteraction, const ut::optional< WsfEM_Interaction > &aTgtToJammerInteraction, WsfEW_Effects &aEW_Effects, WsfEW_Effect *aEW_EffectPtr=nullptr) override
Definition WsfEW_PowerEffect.cpp:393
WsfEW_SLB_Effect models and applies Sidelobe Blanker (SLB) effects.
Definition WsfEW_SLB_Effect.hpp:35
virtual WsfEM_Rcvr * GetAuxRcvrPtr()
Definition WsfEW_SLB_Effect.hpp:92
WsfEW_SLB_Effect & operator=(const WsfEW_SLB_Effect &)=delete
virtual double GetBlankingThreshold() const
Definition WsfEW_SLB_Effect.hpp:91
TargetBlankingTable mTargetBlankingTable
Definition WsfEW_SLB_Effect.hpp:100
virtual bool ProcessTargetBlankingBlock(UtInputBlock &aInputBlock)
Definition WsfEW_SLB_Effect.cpp:277
std::map< unsigned int, double > BlankingMap
Definition WsfEW_SLB_Effect.hpp:37
SaturationEffect
Definition WsfEW_SLB_Effect.hpp:41
@ cSE_DUTYCYCLELIMITEFFECT
Apply saturation at a specified duty cycle.
Definition WsfEW_SLB_Effect.hpp:42
@ cSE_NOSATURATIONEFFECT
Don't care about saturation effects.
Definition WsfEW_SLB_Effect.hpp:43
std::vector< std::pair< double, double > > TargetBlankingTable
Definition WsfEW_SLB_Effect.hpp:38
TargetBlankingEffect
Definition WsfEW_SLB_Effect.hpp:47
@ cTB_DUTYCYCLEPROBABILITY
Apply target blanking via a uniform probability comparison with the duty-cycle.
Definition WsfEW_SLB_Effect.hpp:50
@ cTB_DUTYCYCLETABLE
Apply target blanking via an input table and a uniform random number draw.
Definition WsfEW_SLB_Effect.hpp:51
@ cTB_NOTARGETBLANKING
Don't care about target blanking effects.
Definition WsfEW_SLB_Effect.hpp:52
@ cTB_DUTYCYCLEALGORITHM
Definition WsfEW_SLB_Effect.hpp:48
BlankerState
Definition WsfEW_SLB_Effect.hpp:57
@ cPOWERLIMITED
Jammer signal is outside the operating power region.
Definition WsfEW_SLB_Effect.hpp:62
@ cOFF
Blanker off.
Definition WsfEW_SLB_Effect.hpp:59
@ cBLANKING
Blanker functioning.
Definition WsfEW_SLB_Effect.hpp:58
@ cSTALLED
Blanker stalled, no longer blanking.
Definition WsfEW_SLB_Effect.hpp:60
@ cMAINLOBE
Jammer signal in mainlobe or power in Aux is less than main.
Definition WsfEW_SLB_Effect.hpp:61
virtual bool ProcessTargetBlankingInput(UtInput &aInput)
Definition WsfEW_SLB_Effect.cpp:291
TargetBlankingEffect mTargetBlankingEffect
Definition WsfEW_SLB_Effect.hpp:99
WsfEW_SLB_Effect()
Definition WsfEW_SLB_Effect.cpp:42
The main controller for a simulation.
Definition WsfSimulation.hpp:109