|
WSF
|
#include <WsfEW_RepeaterEffect.hpp>


Classes | |
| class | RepeaterEffectData |
Public Types | |
| enum | ControlMethod { cCM_NONE = 1 , cCM_USE_REPEATER = cCM_NONE << 1 , cCM_USE_ACTUALS = cCM_NONE << 2 , cCM_USE_REPEATER_ACTUALS = cCM_NONE << 3 } |
| enum | GainControlType { cMG_NONE = 1 , cMG_DESIRED_RCS = cMG_NONE << 1 , cMG_MIN_J_TO_N = cMG_NONE << 2 , cMG_MIN_J_TO_S = cMG_NONE << 3 , cMG_MIN_DETECT = cMG_NONE << 4 , cMG_MASKING = cMG_NONE << 5 } |
| Public Types inherited from WsfEW_RadiusEffect | |
| enum | RadiusLimitType { cJRL_NONE = 0 , cJRL_INSIDE = 1 , cJRL_OUTSIDE = 2 , cJRL_BOTH = 3 , cJRL_EQUAL = 4 } |
| using | RadiusTypeToValueMap = std::map<RadiusLimitType, double> |
| Public Types inherited from WsfEW_Effect | |
| enum | Behavior { cEB_UNDEFINED = 1 , cEB_DROP_TRACK = cEB_UNDEFINED << 1 , cEB_MAINTAIN_TRACK = cEB_UNDEFINED << 2 , cEB_TRACK_ERROR = cEB_UNDEFINED << 3 , cEB_DROP_MESSAGE = cEB_UNDEFINED << 4 , cEB_MAINTAIN_MESSAGE = cEB_UNDEFINED << 5 , cEB_MESSAGE_ERROR = cEB_UNDEFINED << 6 , cEB_JAMMER_POWER_EFFECT = cEB_UNDEFINED << 7 , cEB_SIGNAL_POWER_EFFECT = cEB_UNDEFINED << 8 , cEB_SLC_DEGRADE_EFFECT = cEB_UNDEFINED << 9 , cEB_FALSE_TARGET_EFFECT = cEB_UNDEFINED << 10 , cEB_PULSE_EFFECT = cEB_UNDEFINED << 11 , cEB_AGILITY_EFFECT = cEB_UNDEFINED << 12 , cEB_REPEATER_EFFECT = cEB_UNDEFINED << 13 , cEB_REPEATER_UPDATE = cEB_UNDEFINED << 14 , cEB_FLOODED_BLOCKED = cEB_UNDEFINED << 15 , cEB_FLOODED_MAINTAINED = cEB_UNDEFINED << 16 , cEB_JAM_STROBE_EFFECT = cEB_UNDEFINED << 17 , cEB_TARGET_REJECT_EFFECT = cEB_UNDEFINED << 18 , cEB_NEXT_FREE_MASK = cEB_UNDEFINED << 19 } |
| The behavior the EW effect exhibits. More... | |
| enum | Coherency { cEC_NONE = 1 , cEC_NONCOHERENT = cEC_NONE << 1 , cEC_COHERENT = cEC_NONE << 2 , cEC_NONCOHERENT_PULSE = cEC_NONE << 3 , cEC_COHERENT_PULSE = cEC_NONE << 4 } |
| The signal coherency the EW effect exhibits on the affected system. More... | |
| enum | ModulationType { cEM_NONE = 1 , cEM_CW = cEM_NONE << 1 , cEM_COHPULSE = cEM_NONE << 2 , cEM_NONCOHPULSE = cEM_NONE << 3 , cEM_LINEARFM = cEM_NONE << 4 , cEM_NONLINEARFM = cEM_NONE << 5 , cEM_PHASEKEY = cEM_NONE << 6 , cEM_PHASEMOD = cEM_NONE << 7 , cEM_PHASECODE = cEM_NONE << 8 , cEM_ASK = cEM_NONE << 9 , cEM_FSK = cEM_NONE << 10 , cEM_PSK = cEM_NONE << 11 , cEM_BPSK = cEM_NONE << 12 , cEM_QPSK = cEM_NONE << 13 , cEM_DPSK = cEM_NONE << 14 , cEM_QAM = cEM_NONE << 15 } |
| enum | TargetProtectionType { cTP_ALL , cTP_NON_SELF_PROTECT , cTP_SELF_PROTECT } |
| The target protection type this effect is limited to. More... | |
| enum | SystemFunction { cES_UNDEFINED = 1 , cES_COMM = cES_UNDEFINED << 1 , cES_SENSOR = cES_UNDEFINED << 2 , cES_JAMMER = cES_UNDEFINED << 3 , cES_NEXT_FREE_MASK = cES_UNDEFINED << 4 } |
| The type of system function types the EW effect can affect. More... | |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
Public Member Functions | |
| WsfEW_RepeaterEffect () | |
| WsfEW_RepeaterEffect & | operator= (const WsfEW_RepeaterEffect &)=delete |
| ~WsfEW_RepeaterEffect () override=default | |
| WsfEW_Effect * | Clone () const override |
| bool | Initialize (WsfSimulation &aSimulation) override |
| bool | ProcessInput (UtInput &aInput) override |
| void | ApplyUnmitigatedEffect (WsfEW_Effects &aEW_Effects) const override |
| void | ApplyMitigatedEffect (WsfEW_Effect *aEW_EffectPtr, WsfEW_Effects &aEW_Effects) const override |
| 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 |
| Public Member Functions inherited from WsfEW_RadiusEffect | |
| WsfEW_RadiusEffect () | |
| WsfEW_RadiusEffect & | operator= (const WsfEW_RadiusEffect &)=delete |
| ~WsfEW_RadiusEffect () override=default | |
| int | GetRadiusLimitMask (WsfStringId aSystemTypeId) const |
| double | GetRadiusFactor (WsfStringId aSystemTypeId) const |
| double | GetRadiusFactor (WsfStringId aSystemTypeId, RadiusLimitType aJRL_Type) const |
| Public Member Functions inherited from WsfEW_Effect | |
| WsfEW_Effect ()=default | |
| WsfEW_Effect & | operator= (const WsfEW_Effect &)=delete |
| ~WsfEW_Effect () override | |
| virtual void | ProcessUnmitigatedEffect (double aSimTime, const WsfEM_Interaction &aTargetInteraction, const WsfEM_Interaction &aJammerToTgtInteraction, const ut::optional< WsfEM_Interaction > &aTgtToJammerInteraction, WsfEW_Effects &aEW_Effects) |
| virtual void | ProcessMitigatedEffect (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) |
| virtual void | RemoveJammerXmtr (unsigned int aXmtrId) |
| virtual void | RemoveJammerXmtr (WsfEM_Xmtr *aJammerXmtrPtr) |
| void | SetSystemFunctionMask (SystemFunction aSystemFunction) |
| Set the system type. | |
| void | SetSystemFunctionMask (const std::string &aSystemFunctionId) |
| void | AddSystemFunctionMask (SystemFunction aSystemFunction) |
| Set the system type. | |
| void | AddSystemFunctionMask (const std::string &aSystemFunctionId) |
| unsigned int | GetSystemFunctionMask () const |
| void | SetCoherencyMask (Coherency aCoherency) |
| void | AddCoherencyMask (Coherency aCoherency) |
| unsigned int | GetCoherencyMask () const |
| void | SetBehavior (Behavior aBehavior) |
| Behavior | GetBehavior () const |
| void | SetDebug (bool aDebug) |
| bool | DebugEnabled () const |
| void | SetEA_EP_Ptr (WsfEW_EA_EP *aPtr) |
| WsfEW_EA_EP * | GetEA_EP_Ptr () const |
| WsfEW_EA * | GetEA_Ptr () const |
| WsfEW_EP * | GetEP_Ptr () const |
| WsfEW_Technique * | GetTechniquePtr () const |
| void | SetTechniquePtr (WsfEW_Technique *aPtr) |
| virtual double | GetJammingPulseDensity () const |
| virtual double | GetJammingPulseDensity (WsfEM_Xmtr *aXmtrPtr) const |
| virtual bool | AllowTarget (WsfPlatform *aXmtrPlatform, WsfPlatform *aTargetPlatform) const |
| virtual void | UpdateCurrentIds (WsfEM_Rcvr *aRcvrPtr, WsfEM_Xmtr *aXmtrPtr, WsfPlatform *aTargetPtr) |
| WsfSimulation * | GetSimulation () const |
| ut::Random & | GetRandom () |
| 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 |
| 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 TypeList & | GetTypeList () const |
| bool | IsA_TypeOf (WsfStringId aType) const |
| WsfObject & | operator= (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) |
Effect Data methods. | |
| EffectData * | NewEffectData () override |
| EffectData * | PropagateEffectDataPtr (WsfStringId aSystemTypeId) override |
Repeater effect data Accessor/Mutator methods. | |
| ControlMethod | GetControlMethod (WsfStringId aSystemTypeId) const |
| void | SetControlMethod (WsfStringId aSystemTypeId, ControlMethod aControlMethod) |
| double | GetMinimumGainFactor (WsfStringId aSystemTypeId) const |
| double | GetMaximumGainFactor (WsfStringId aSystemTypeId) const |
| void | SetGainFactors (WsfStringId aSystemTypeId, double aMinimumGainFactor, double aMaximumGainFactor) |
| int | GetGainControlTypeMask (WsfStringId aSystemTypeId) const |
| double | GetDesiredJtoN (WsfStringId aSystemTypeId) const |
| void | SetDesiredJtoN (WsfStringId aSystemTypeId, double aDesiredJtoN) |
| double | GetDesiredJtoS (WsfStringId aSystemTypeId) const |
| void | SetDesiredJtoS (WsfStringId aSystemTypeId, double aDesiredJtoS) |
| double | GetDesiredFT_RCS (WsfStringId aSystemTypeId) const |
| void | SetDesiredFT_RCS (WsfStringId aSystemTypeId, double aDesiredFT_MaskingRCS) |
| double | GetMinDetectFactor (WsfStringId aSystemTypeId) const |
| void | SetMinDetectFactor (WsfStringId aSystemTypeId, double aMinDetectFactor) |
| double | GetMaskingFactor (WsfStringId aSystemTypeId) const |
| void | SetMaskingFactor (WsfStringId aSystemTypeId, double aMaskingFactor) |
| WsfEW_RepeaterEffect (const WsfEW_RepeaterEffect &aSrc) | |
| double | GetRepeaterFactor () |
| Get the current repeater factor for last call to UpdateEffects(...) or UpdateRepeaterFactor(...). | |
| void | UpdateGainFactors (const WsfEM_Interaction &aTargetInteraction, const WsfEM_Interaction &aJammerToTgtInteraction, const ut::optional< WsfEM_Interaction > &aTgtToJammerInteraction, double aCurrentGains[]) |
Additional Inherited Members | |
| static WsfEW_Effect::SystemFunction | ConvertToEW_SystemFunction (WsfEM_Rcvr::RcvrFunction aRcvrFunction) |
| static WsfEW_Effect::SystemFunction | ConvertToEW_SystemFunction (WsfEM_Xmtr::XmtrFunction aXmtrFunction) |
| static unsigned int | ConvertCoherencyIdToMask (WsfStringId aCoherencyId) |
| using | EffectDataMap = std::map<WsfStringId, EffectData*> |
| WsfEW_RadiusEffect (const WsfEW_RadiusEffect &aSrc) | |
| bool | ProcessEffectDataBlock (UtInputBlock &aInputBlock, WsfStringId aSystemTypeId) |
| virtual EffectData & | GetEffectData (WsfStringId aSystemTypeId) |
| void | ResetEffectData (WsfStringId aSystemTypeId) |
| bool | EffectDataExists (WsfStringId aSystemTypeId) const |
| void | InsertNewEffectData (WsfStringId aSystemTypeId, WsfEW_Types::EW_EffectData *aEffectPtr) |
| WsfEW_Effect (const WsfEW_Effect &aSrc) | |
| virtual void | PrintUpdateMessage (ut::log::MessageStream &aStream, double aSimTime, WsfEW_Effect *aEW_EffectPtr=nullptr) |
| void | ResetProtectionTypeFlag (WsfEM_Xmtr *aXmtrPtr, const WsfEM_Interaction &aTargetInteraction, WsfEW_Effects &aEW_Effects) |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
| unsigned int | mSystemFunctionMask {cES_UNDEFINED} |
| The system type mask that this EW effect can affect. | |
| Behavior | mBehavior {cEB_UNDEFINED} |
| The behavior that this EW effect exhibits. | |
| unsigned int | mCoherencyMask {cEC_NONE} |
| The coherency of this effect wrt to the affected system. | |
| bool | mDebug {false} |
| The debug flag, 'true' for debug, false otherwise. | |
| WsfStringId | mCurrentTargetId {nullptr} |
| Current target Id. | |
| WsfStringId | mCurrentXmtrPlatformId {nullptr} |
| Current transmitting platform Id. | |
| WsfStringId | mCurrentRcvrPlatformId {nullptr} |
| Current receiving platform Id. | |
| int | mCurrentXmtrUniqueId {0} |
| Current transmitter unique Id. | |
| int | mCurrentRcvrUniqueId {0} |
| Current receiver unique Id. | |
| WsfStringId | mEffectedSystemId {nullptr} |
| The type Id of the system being effected, changes with each call to UpdateEffects(...) or UpdateCurrentIds(...). | |
| WsfStringId | mEffectingSystemId {nullptr} |
| The type Id of the system doing the effecting, changes with each call to UpdateEffects(...) or UpdateCurrentIds(...). | |
| bool | mUpdatingEffect {true} |
| Variable to prevent infinite recursion in UpdateEffect. | |
| EffectDataMap | mEffectDataMap |
| Map of the System Type Id to the data required for this effect. | |
WsfEW_RepeaterEffect models and applies calculated physical power gain effects to the jamming power.
Can be associated with an EA or EP technique to increase or decrease the physical jammer power by a factor via automated methods based on received transmitted powers.
| WsfEW_RepeaterEffect::WsfEW_RepeaterEffect | ( | ) |
References WsfEW_Effect::cEB_JAMMER_POWER_EFFECT, WsfEW_Effect::cEC_NONE, WsfEW_Effect::mBehavior, WsfEW_Effect::mCoherencyMask, and WsfEW_RadiusEffect::WsfEW_RadiusEffect().
Referenced by Clone(), operator=(), WsfEW_PowerEffect::WsfEW_PowerEffect(), WsfEW_PowerEffect::WsfEW_PowerEffect(), and WsfEW_RepeaterEffect().
|
overridedefault |
References GetControlMethod(), GetDesiredFT_RCS(), GetDesiredJtoN(), GetDesiredJtoS(), GetGainControlTypeMask(), GetMaskingFactor(), GetMaximumGainFactor(), GetMinDetectFactor(), GetMinimumGainFactor(), SetControlMethod(), SetDesiredFT_RCS(), SetDesiredJtoN(), SetDesiredJtoS(), SetGainFactors(), SetMaskingFactor(), SetMinDetectFactor(), and WsfEW_Effect::WsfEW_Effect().
|
protected |
References WsfEW_RadiusEffect::WsfEW_RadiusEffect(), and WsfEW_RepeaterEffect().
|
overridevirtual |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_DegradeEffect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References WsfEW_RadiusEffect::ApplyMitigatedEffect(), and WsfEW_Effect::WsfEW_Effect().
Referenced by WsfEW_PowerEffect::ApplyMitigatedEffect().
|
overridevirtual |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_DegradeEffect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References WsfEW_RadiusEffect::ApplyUnmitigatedEffect(), cCM_NONE, WsfEW_Effect::cEB_REPEATER_EFFECT, WsfEW_Effect::cEC_COHERENT, WsfEW_Effect::cEC_COHERENT_PULSE, WsfEW_Effect::cEC_NONCOHERENT, WsfEW_Effect::cEC_NONCOHERENT_PULSE, WsfEW_Effect::cEC_NONE, WsfEW_Effect::GetCoherencyMask(), GetControlMethod(), WsfEW_Effect::mDebug, WsfEW_Effect::mEffectedSystemId, WsfEW_Effects::mEW_CoherentJammingEffect, WsfEW_Effects::mEW_NoiseJammingEffect, WsfEW_Effects::mEW_PulseJammingEffect, WsfEW_Effects::mMask, and WsfEW_Effects::EW_JammingEffect::mRepeaterFactor.
Referenced by WsfEW_PowerEffect::ApplyUnmitigatedEffect().
|
overridevirtual |
Clone this object.
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_DegradeEffect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References WsfEW_Effect::WsfEW_Effect(), and WsfEW_RepeaterEffect().
| WsfEW_RepeaterEffect::ControlMethod WsfEW_RepeaterEffect::GetControlMethod | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by ApplyUnmitigatedEffect(), UpdateEffects(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetDesiredFT_RCS | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetDesiredJtoN | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetDesiredJtoS | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| int WsfEW_RepeaterEffect::GetGainControlTypeMask | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetMaskingFactor | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetMaximumGainFactor | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateEffects(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetMinDetectFactor | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateGainFactors(), and ~WsfEW_RepeaterEffect().
| double WsfEW_RepeaterEffect::GetMinimumGainFactor | ( | WsfStringId | aSystemTypeId | ) | const |
Referenced by UpdateEffects(), and ~WsfEW_RepeaterEffect().
|
inlineprotected |
Get the current repeater factor for last call to UpdateEffects(...) or UpdateRepeaterFactor(...).
Referenced by WsfEW_CoverPulseEffect::UpdateEffects(), WsfEW_PowerEffect::UpdateEffects(), WsfEW_RPJ_Effect::UpdateEffects(), and WsfEW_TrackEffect::UpdateEffects().
|
overridevirtual |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_DegradeEffect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References WsfEW_Effect::cES_COMM, WsfEW_Effect::cES_SENSOR, WsfEW_Effect::GetEA_Ptr(), WsfEW_RadiusEffect::Initialize(), WsfEW_Effect::mSystemFunctionMask, and ok.
Referenced by WsfEW_PowerEffect::Initialize().
|
inlineoverrideprotectedvirtual |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLC_DegradeEffect, and WsfEW_TrackEffect.
Referenced by SetControlMethod(), SetDesiredFT_RCS(), SetDesiredJtoN(), SetDesiredJtoS(), SetGainFactors(), SetMaskingFactor(), and SetMinDetectFactor().
|
delete |
References WsfEW_RepeaterEffect().
|
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'.
| aInput | a reference to a UtInput object. |
| UtInput::ExceptionBase | (or an object derived from it) if the command was recognized but contains some sort of error. |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_DegradeEffect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References WsfEW_RadiusEffect::ProcessInput().
Referenced by WsfEW_PowerEffect::ProcessInput().
|
overrideprotectedvirtual |
Propagate the new effect data pointer to the other classes for local casting.
| aSystemTypeId | The system type id to propagate the pointer for. |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLC_DegradeEffect, and WsfEW_TrackEffect.
References WsfEW_RadiusEffect::PropagateEffectDataPtr().
Referenced by WsfEW_PowerEffect::PropagateEffectDataPtr().
| void WsfEW_RepeaterEffect::SetControlMethod | ( | WsfStringId | aSystemTypeId, |
| ControlMethod | aControlMethod ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetDesiredFT_RCS | ( | WsfStringId | aSystemTypeId, |
| double | aDesiredFT_MaskingRCS ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetDesiredJtoN | ( | WsfStringId | aSystemTypeId, |
| double | aDesiredJtoN ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetDesiredJtoS | ( | WsfStringId | aSystemTypeId, |
| double | aDesiredJtoS ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetGainFactors | ( | WsfStringId | aSystemTypeId, |
| double | aMinimumGainFactor, | ||
| double | aMaximumGainFactor ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetMaskingFactor | ( | WsfStringId | aSystemTypeId, |
| double | aMaskingFactor ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
| void WsfEW_RepeaterEffect::SetMinDetectFactor | ( | WsfStringId | aSystemTypeId, |
| double | aMinDetectFactor ) |
References WsfEW_Effect::EffectDataExists(), WsfEW_Effect::InsertNewEffectData(), and NewEffectData().
Referenced by ~WsfEW_RepeaterEffect().
|
overridevirtual |
Allows the effect to update any parameters needed before running an apply effect method.
| 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. |
| aEW_Effects | [input] The current effect that is being updated. |
| aEW_EffectPtr | [input] The currently processing EW effect pointer to prevent recursion in EW effect processing loops. |
Reimplemented from WsfEW_RadiusEffect.
Reimplemented in WsfEW_RPJ_Effect, WsfEW_SimpleFT_Effect, WsfEW_SLB_Effect, WsfEW_SLC_Effect, and WsfEW_TrackEffect.
References cCM_NONE, cCM_USE_ACTUALS, cCM_USE_REPEATER, cCM_USE_REPEATER_ACTUALS, WsfEW_Effect::cEB_REPEATER_UPDATE, WsfEM_Antenna::ComputeAspect(), WsfEW_Result::Find(), WsfEM_XmtrRcvr::GetAntenna(), WsfEM_XmtrRcvr::GetAntennaPattern(), GetControlMethod(), WsfEM_XmtrRcvr::GetFrequency(), WsfAntennaPattern::GetGain(), WsfEM_Antenna::GetLocationWCS(), GetMaximumGainFactor(), WsfAntennaPattern::GetMinimumGain(), GetMinimumGainFactor(), WsfAntennaPattern::GetPeakGain(), WsfEM_XmtrRcvr::GetPolarization(), WsfEM_Antenna::GetRelativeLocationWCS(), WsfEM_Interaction::GetTransmitter(), WsfEM_Interaction::BeamData::mAz, WsfEW_Effects::mCurrentRepeaterData, WsfEW_Effect::mDebug, WsfEM_Interaction::BeamData::mEBS_Az, WsfEM_Interaction::BeamData::mEBS_El, WsfEW_Effect::mEffectedSystemId, WsfEM_Interaction::BeamData::mEl, WsfEW_Result::mEW_Effects, WsfEW_Effects::RepeaterData::mGain, WsfEW_Effects::mMask, WsfEW_Effects::RepeaterData::mMinGain, WsfEW_Effects::RepeaterData::mPeakGain, WsfEM_Interaction::RelativeData::mTrueAz, WsfEM_Interaction::RelativeData::mTrueEl, WsfEM_Interaction::mXmtrBeam, WsfEM_Interaction::mXmtrToTgt, WsfEW_RadiusEffect::UpdateEffects(), UpdateGainFactors(), and WsfEW_Effect::WsfEW_Effect().
Referenced by WsfEW_PowerEffect::UpdateEffects().
|
protected |
References WsfEM_Interaction::BeginOneWayInteraction(), WsfEW_Effect::cEC_COHERENT, WsfEW_Effect::cEC_COHERENT_PULSE, cMG_DESIRED_RCS, cMG_MASKING, cMG_MIN_DETECT, cMG_MIN_J_TO_N, cMG_MIN_J_TO_S, cMG_NONE, WsfRF_Jammer::ComputeReceiverGains(), WsfEM_Interaction::ComputeRF_OneWayPower(), WsfEW_Effect::GetCoherencyMask(), GetDesiredFT_RCS(), GetDesiredJtoN(), GetDesiredJtoS(), GetGainControlTypeMask(), GetMaskingFactor(), GetMinDetectFactor(), WsfEM_Rcvr::GetNoiseMultiplier(), WsfEM_Rcvr::GetNoisePower(), WsfEM_Interaction::GetReceiver(), WsfEM_Interaction::GetTarget(), WsfEM_Interaction::GetTransmitter(), WsfPlatform::IsFalseTarget(), WsfEM_Interaction::mClutterPower, WsfEW_Effect::mDebug, WsfEM_Interaction::mDetectionThreshold, WsfEW_Effect::mEffectedSystemId, WsfEM_Interaction::BeamData::mGain, WsfEM_Interaction::mRadarSig, WsfEM_Interaction::mRcvdPower, WsfEM_Interaction::mRcvrBeam, WsfEM_Interaction::SetReceiverBeamPosition(), and WsfEM_Interaction::SetTransmitterBeamPosition().
Referenced by UpdateEffects().