|
WSF
|
#include <WsfEW_EA.hpp>


Classes | |
| class | EA_Technique |
| Special class to handle the EA specific technique implementations as required. More... | |
Public Member Functions | |
| WsfEW_EA () | |
| WsfEW_EA & | operator= (const WsfEW_EA &)=delete |
| ~WsfEW_EA () override | |
| Public Member Functions inherited from WsfEW_EA_EP | |
| WsfEW_EA_EP () | |
| WsfEW_EA_EP & | operator= (const WsfEW_EA_EP &)=delete |
| ~WsfEW_EA_EP () override=default | |
| bool | HasFrequencyAgilityEffect () const |
| bool | EffectIsAvailable (WsfStringId aEffectNameId) const |
| bool | EffectIsAvailable (WsfEW_Types::TechniqueId aTechId, WsfStringId aEffectNameId) const |
| virtual WsfEW_Effect * | GetEffect (WsfEW_Types::TechniqueId aTechId, unsigned int aIndex) const |
| virtual WsfEW_Effect * | GetEffect (WsfEW_Types::TechniqueId aTechId, WsfStringId aEffectId) const |
| virtual const WsfEW_Technique::EffectPtrVec & | GetEffects (WsfEW_Types::TechniqueId aId) const |
| WsfSimulation * | GetSimulation () const |
| bool | ProcessInput (UtInput &aInput) override |
| virtual bool | DebugEnabled () const |
| Determines if debugging is enabled. | |
| virtual WsfEM_XmtrRcvr & | GetLinkedXmtrRcvr () const |
| virtual void | RemoveJammerXmtr (unsigned int aXmtrId) |
| virtual void | RemoveJammerXmtr (WsfEM_Xmtr *aXmtrPtr) |
| virtual WsfEW_Technique::EffectPtrVec | GetMitigatingEffects (const WsfEW_Effect *aEA_EffectPtr, WsfEW_Effect::SystemFunction aAffectingSystemFunction, WsfEW_Effect::SystemFunction aAffectedSystemFunction) |
| bool | TechniquesAreAvailable () const |
| Return true if there are techniques available, 0 otherwise. | |
| bool | TechniquesAreInUse () const |
| Return true if there are techniques in use, 0 otherwise. | |
| bool | TechniqueIsAvailable (WsfEW_Types::TechniqueId aId) const |
| bool | TechniqueIsInUse (WsfEW_Types::TechniqueId aId) const |
| bool | TechniqueIsExternallyControlled (WsfEW_Types::TechniqueId aId) const |
| const WsfEW_Types::TechniqueIdVec & | GetTechniquesAvailable () const |
| Return a list of all the technique Ids that are currently available. | |
| const WsfEW_Types::TechniqueIdVec & | GetTechniquesInUse () const |
| Return a list of all the technique Ids that are currently in use. | |
| void | SetTechnique (WsfEW_Types::TechniqueId aTechniqueId, bool aOnOff) |
| void | ResetTechniquesInUseList () |
| virtual bool | CanApplyTechnique (WsfEW_Types::TechniqueId aId, WsfEW_Effect::SystemFunction aSystemFunction) const |
| virtual WsfEW_Types::TechniqueIdVec * | GetMitigatedTechniques () |
| 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) |
Static Public Member Functions | |
| static WsfEW_EA_EP * | GetElectronicAttack (const WsfEM_Xmtr &aXmtr) |
| Convenience method to get the electronic attack object for the specified transmitter. | |
| static void | SetElectronicAttack (WsfEM_Xmtr &aXmtr, WsfEW_EA_EP *aElectronicAttackPtr) |
| Convenience method to set the electronic attack object for the specified transmitter. | |
Technique methods. | |
| typedef std::map< WsfEW_Types::TechniqueId, EA_Technique * > | TechniqueIdToPtrMap |
| Map the technique's ID to its location (pointer). | |
| typedef std::map< WsfEW_Types::TechniqueId, EA_Technique * >::iterator | TechniqueIdToPtrMapIter |
| typedef std::map< WsfEW_Types::TechniqueId, EA_Technique * >::const_iterator | TechniqueIdToPtrMapConstIter |
| bool | AddTechnique (WsfEW_Technique *aTechniquePtr) override |
| WsfEW_Technique * | GetTechnique (WsfEW_Types::TechniqueId aTechniqueId) const override |
| WsfEW_Technique * | GetTechnique (unsigned int aIndex) const override |
| virtual bool | SelectTechnique (unsigned int aIndex, WsfEW_Effect::SystemFunction aSystemFunction) |
| virtual bool | SelectTechnique (WsfEW_Types::TechniqueId aId, WsfEW_Effect::SystemFunction aSystemFunction) |
| virtual bool | DeselectTechnique (unsigned int aIndex, WsfEW_Effect::SystemFunction aSystemFunction) |
| virtual bool | DeselectTechnique (WsfEW_Types::TechniqueId aId, WsfEW_Effect::SystemFunction aSystemFunction) |
| bool | SetDeltaGainTechnique (double aSimTime, WsfStringId aTechniqueId, bool aOnOff, bool aDebug, WsfStringId aEffectId, double aJammingDeltaGain, WsfStringId aSystemTypeId, WsfStringId aSystemFunctionId) override |
| virtual bool | DeselectTechnique (unsigned int aIndex) |
| virtual bool | DeselectTechnique (WsfEW_Types::TechniqueId aId) |
| virtual bool | SelectTechnique (unsigned int aIndex) |
| virtual bool | SelectTechnique (WsfEW_Types::TechniqueId aId) |
| WsfEW_EA (const WsfEW_EA &aSrc) | |
Common infrastructure methods. | |
| WsfEW_EA_EP * | Clone () const override |
| bool | Initialize (WsfSimulation &aSimulation, WsfEM_XmtrRcvr *aXmtrRcvrPtr) override |
Additional Inherited Members | |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
| WsfEW_EA_EP (const WsfEW_EA_EP &aSrc) | |
| bool | PrivateSetTechnique (WsfEW_Types::TechniqueId aTechnique, bool aOnOff) |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
| WsfSimulation * | mSimulationPtr |
| WsfEW_Types::TechniqueIdVec | mTechniques |
| A collection/list of all the Techniques by Id. | |
| WsfEW_Types::TechniqueIdVec | mTechniquesInUse |
| A collection of all the Techniques currently in use by Id. | |
| bool | mDebug |
| Debug flag 'true' if debug is enabled, 'false' otherwise. | |
| WsfEM_XmtrRcvr * | mLinkedXmtrRcvrPtr |
| The transmitter/receiver to which this EA/EP is linked to. | |
A class which encapsulates data and functionality related to an Electronic Attack.
An instance of this class is aggregated into a weapon whose intent is to defeat an adversary using electromagnetic emissions. The attack may be designed to confuse, disorient, blind, or otherwise deceive an opponents sensors, or overwhelm his ability to process a voluminous amount of mis-information. The attack may include employing one or more preplanned counter-counter-techniques in response to the adversary's recognition of the attack, and a corresponding attempt to nullify it.
| typedef std::map<WsfEW_Types::TechniqueId, EA_Technique*> WsfEW_EA::TechniqueIdToPtrMap |
Map the technique's ID to its location (pointer).
| typedef std::map<WsfEW_Types::TechniqueId,EA_Technique*>::const_iterator WsfEW_EA::TechniqueIdToPtrMapConstIter |
| typedef std::map<WsfEW_Types::TechniqueId,EA_Technique*>::iterator WsfEW_EA::TechniqueIdToPtrMapIter |
| WsfEW_EA::WsfEW_EA | ( | ) |
References WsfEW_EA_EP::WsfEW_EA_EP().
Referenced by Clone(), operator=(), and WsfEW_EA().
|
override |
References WsfEW_EA_EP::mTechniques.
|
protected |
References WsfEW_EA(), and WsfEW_EA_EP::WsfEW_EA_EP().
|
overridevirtual |
Reimplemented from WsfEW_EA_EP.
References WsfEW_EA_EP::AddTechnique(), and WsfObject::GetNameId().
|
overridevirtual |
Clone this object.
Implements WsfEW_EA_EP.
References WsfEW_EA(), and WsfEW_EA_EP::WsfEW_EA_EP().
|
virtual |
Deselect a technique for use based on technique index
| aIndex | Specifies the index of the technique in the list (0 - size mTechniques-1). |
Reimplemented from WsfEW_EA_EP.
|
virtual |
Deselect a technique for use based on technique index for the specified System Type
| aIndex | Specifies the index of the technique in the list (0 - size mTechniques-1). |
| aSystemFunction | Indicates what system type that the effect will be applied to (i.e. Comms, Sensors, etc.). |
References WsfEW_EA_EP::mDebug, WsfEW_EA_EP::mTechniques, and WsfEW_EA_EP::PrivateSetTechnique().
|
virtual |
Deselect a technique for use based on technique Id
| aId | Specifies the Id of the technique in the list. |
Reimplemented from WsfEW_EA_EP.
|
virtual |
Deselect a technique for use based on technique Id for the specified System Type
| aId | Specifies the Id of the technique in the list. |
| aSystemFunction | Indicates what system type that the effect will be applied to (i.e. Comms, Sensors, etc.). |
References WsfEW_EA_EP::mDebug, and WsfEW_EA_EP::PrivateSetTechnique().
|
static |
Convenience method to get the electronic attack object for the specified transmitter.
References WsfEW_XmtrComponent::Find(), WsfEW_XmtrComponent::GetElectronicAttack(), and WsfEW_EA_EP::WsfEW_EA_EP().
Referenced by WsfRF_Jammer::DeselectEA_Technique(), WsfXIO_WeaponComponent::EM_XmtrInfo_Load(), WsfEW_Effects::Process(), WsfRF_Jammer::SelectEA_Technique(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfRF_Jammer::SetEA_DeltaGainTechnique(), WsfRF_Jammer::StartJamming(), WsfMilDisInterface::UpdateBeamFromXmtr(), WsfEW_SensorComponent::EW_Mode::UpdateFalseTargetInteractors(), WsfRF_Jammer::UpdateJamming(), and UT_DEFINE_SCRIPT_METHOD().
|
overridevirtual |
Reimplemented from WsfEW_EA_EP.
References WsfEW_EA_EP::mTechniques.
|
overridevirtual |
Reimplemented from WsfEW_EA_EP.
Referenced by Initialize().
|
overridevirtual |
Reimplemented from WsfEW_EA_EP.
References GetTechnique(), WsfEW_EA_EP::Initialize(), WsfEW_EA_EP::mTechniques, WsfEW_Technique::SetEA_EP_Ptr(), and success.
References WsfEW_EA(), and WsfEW_EA_EP::WsfEW_EA_EP().
|
virtual |
Selects a technique for use based on technique index
| aIndex | Specifies the index of the technique in the list (0 - size mTechniques-1). |
Reimplemented from WsfEW_EA_EP.
|
virtual |
Selects a technique for use based on technique index for the specified System Type
| aIndex | Specifies the index of the technique in the list (0 - size mTechniques-1). |
| aSystemFunction | Indicates what system type that the effect will be applied to (i.e. Comms, Sensors, etc.). |
References WsfEW_EA_EP::mDebug, WsfEW_EA_EP::mTechniques, and WsfEW_EA_EP::PrivateSetTechnique().
|
virtual |
Selects a technique for use based on technique Id
| aId | Specifies the Id of the technique in the list. |
Reimplemented from WsfEW_EA_EP.
|
virtual |
Selects a technique for use based on technique Id for the specified System Type
| aId | Specifies the Id of the technique in the list. |
| aSystemFunction | Indicates what system type that the effect will be applied to (i.e. Comms, Sensors, etc.). |
References WsfEW_EA_EP::mDebug, and WsfEW_EA_EP::PrivateSetTechnique().
|
overridevirtual |
Set a jamming modulation technique on an active spot using the supplied criteria.
| aSimTime | The current simulation time. |
| aTechniqueId | The assigned technique Id to set. |
| aOnOff | The default state of the technique. |
| aDebug | The debug state 'true' or 'false'. |
| aEffectId | The assigned effect Id to set. |
| aJammingDeltaGain | The assigned jamming modulation value. |
| aSystemTypeId | The assigned System Type Id of the target types this technique be applied to. |
| aSystemFunctionId | The assigned System Function Id of the target types this technique be applied to. |
Reimplemented from WsfEW_EA_EP.
References WsfObject::GetNameId(), WsfEW_EA_EP::GetSimulation(), WsfEW_EA::EA_Technique::Initialize(), WsfEW_EA_EP::mDebug, WsfEW_EA_EP::mTechniques, WsfEW_Technique::SetDebug(), WsfEW_Technique::SetDefaultOn(), WsfEW_Technique::SetDeltaGainEffect(), WsfEW_Technique::SetEA_EP_Ptr(), and WsfObject::SetName().
|
static |
Convenience method to set the electronic attack object for the specified transmitter.
References WsfEW_XmtrComponent::FindOrCreate(), WsfEW_XmtrComponent::SetElectronicAttack(), and WsfEW_EA_EP::WsfEW_EA_EP().
Referenced by WsfRF_Jammer::StartJamming().