|
WSF
|
#include <WsfSphericalLethality.hpp>


Public Member Functions | |
| WsfSphericalLethality (WsfScenario &aScenario) | |
| ~WsfSphericalLethality () override=default | |
| WsfWeaponEffects * | Clone () const override |
| bool | PreInitialize () override |
| bool | ProcessInput (UtInput &aInput) override |
| void | SetMinRadius (double aRadius) |
| Public Member Functions inherited from WsfExplicitWeaponEffects | |
| WsfExplicitWeaponEffects (WsfScenario &aScenario) | |
| ~WsfExplicitWeaponEffects () override=default | |
| virtual double | MaximumEffectiveRadiusSquared () const |
| Access the miss radius squared beyond which the weapon has no effect. | |
| virtual double | MaximumEffectiveRadius () const |
| Access the miss radius beyond which the weapon has no effect. | |
| void | SetMaxiumEffectiveRadius (double aRadius) |
| Set the radius beyond which the weapon has no effect. | |
| Public Member Functions inherited from WsfWeaponEffects | |
| WsfWeaponEffects (WsfScenario &aScenario) | |
| ~WsfWeaponEffects () override | |
| bool | ProcessInput (UtInput &aInput) override |
| virtual bool | Initialize (double aSimTime, const WsfWeaponEngagement *aEngagementPtr) |
| UtScriptContext * | GetScriptAccessibleContext () const override |
| Result | GetTargetResult () const |
| Result | GetIncidentalResult () const |
| Result | GetTotalResult () const |
| bool | UseLaunchPk () const |
| bool | UseInterceptPk () const |
| double | GetPkDegrade () const |
| Return the current Pk degrade factor. | |
| double | GetPkConstraint () const |
| void | SetInvincibleIndex (unsigned int aPlatformID) |
| Set the ID of a platform which shall not be damaged. (Usually the launching entity.). | |
| unsigned int | GetInvincibleIndex () const |
| Get the ID of a platform which will not be damaged. | |
| void | SetDamageRadius (double aDamageRadius) |
| Set the maximum lethal damage radius for this effect. | |
| double | GetDamageRadius () const |
| Return the maximum lethal damage radius for this effect. | |
| double | GetLaunchPk () const |
| Get the Launch Pk. | |
| double | GetInterceptPk () const |
| Get the Intercept Pk. | |
| bool | DrawEndgamePk () |
| Force a pk draw for an external platform target. | |
| virtual double | GetCEP () const |
| Access the value for engagement Circular Error Probable (CEP). | |
| void | SetCEP (double aValue) |
| void | SetPkDegrade (double aPkDegrade) |
| virtual double | GetPkDrawn () const |
| Access the Pk value drawn for the (intended) target hit assessment. | |
| bool | DebugEnabled () const |
| Returns 'true' if debugging is enabled for this instance. | |
| void | SetDebugEnabled (bool aDebugEnabled) |
| Enable or disable debugging for this instance. | |
| unsigned int | KilledPlatformCount () const |
| Method returns the count of platforms killed during this engagement. | |
| bool | IsKilledPlatform (size_t aPlatformIndex) const |
| Returns 'true' if the specified WSF platform index has been killed during this engagement. | |
| WsfPk::Table * | GetPkTable () |
| WsfScenario & | GetScenario () |
| virtual void | ProcessEffectExplicit (double aSimTime) |
| virtual void | ProcessEffectImplicit (double aSimTime) |
| virtual void | Terminate (double aSimTime) |
| void | Defeat () |
| bool | GetIncidentalDamageAllowed () const |
| void | SetIncidentalDamageAllowed (bool aIncidentalDamageAllowed) |
| bool | GetParentDamageAllowed () const |
| void | SetParentDamageAllowed (bool aParentDamageAllowed) |
| 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) |
Protected Member Functions | |
| WsfSphericalLethality (const WsfSphericalLethality &aSrc)=default | |
| WsfSphericalLethality & | operator= (const WsfSphericalLethality &aRhs)=delete |
| void | ApplyEffectTo (double aSimTime, WsfPlatform *aOtherPlatformPtr) override |
| Protected Member Functions inherited from WsfExplicitWeaponEffects | |
| WsfExplicitWeaponEffects (const WsfExplicitWeaponEffects &aSrc)=default | |
| void | CalcInterceptPk (double aSimTime, WsfPlatform *aTargetPtr) override |
| void | CalcPkParameters (WsfPlatform *aTargetPtr, double &aAzimuth, double &aElevation, double &aMissileSpeed, double &aTargetSpeed) override |
| bool | IsVulnerable (WsfPlatform *aTargetPtr) override |
| double | LastTestRadiusSquared () const |
| void | CalcInterceptGeometry (WsfPlatform *aTargetPtr, double &aRangeRate, double &aApproachAngle) |
| Protected Member Functions inherited from WsfWeaponEffects | |
| WsfWeaponEffects (const WsfWeaponEffects &aSrc) | |
| Copy Constructor for Clone(). | |
| WsfWeaponEffects & | operator= (const WsfWeaponEffects &aRhs) |
| virtual void | ApplyEffectIncrement (double aSimTime, WsfPlatform *aOtherPlatformPtr, double aDamageAmount) |
| virtual void | ApplyDamageResultToOtherPlatform (double aSimTime, WsfPlatform *aOtherPlatformPtr, double aDamage, Result aResult) |
| virtual void | CalcLaunchPk (double aSimTime) |
| virtual void | CalcPkDegradation (double aSimTime, WsfPlatform *aTargetPtr) |
| bool | IsIntendedTargetValid () |
| This protected method assures that a specified target index does exist. | |
| void | AddToKilledPlatforms (unsigned int aKilledIndex) |
| double | DrawUniformPk () |
| Draw a uniform value for Pk determination. | |
| void | ProcessEffectCommon (double aSimTime, WsfPlatform *aRefPlatformPtr) |
| bool | Defeated () const |
| Return a flag to indicate that this effect has been annulled by outside influences. | |
| const WsfWeaponEngagement * | GetEngagement () const |
| Return the Engagement that this effect was instantiated to support. | |
| void | SetUseLaunchPk () |
| Indicate that you wish to use the Launch Pk value (in lieu of the Intercept Pk value). | |
| void | SetUseInterceptPk () |
| Indicate that you wish to use the Intercept Pk value (in lieu of the Launch Pk value). | |
| void | SetLaunchPk (double aValue) |
| void | SetInterceptPk (double aValue) |
| void | SetPkDrawn (double aValue) |
| Set the Pk value used in the intended target hit assessment. | |
| void | SetIncidentalResult (const WsfWeaponEffects::Result &aResult) |
| void | SetTargetResult (const WsfWeaponEffects::Result &aResult) |
| void | SetResult (const WsfWeaponEffects::Result &aResult, bool aIsIntended) |
| size_t | KilledPlatform (size_t aIndex) |
| Method returns an index of one of the platforms killed during this engagement. | |
| const WsfWeaponEngagement * | GetEngagementPtr () const |
| WsfSimulation * | GetSimulation () const |
| WsfScriptContext * | GetScriptContext () const |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
Additional Inherited Members | |
| Public Types inherited from WsfWeaponEffects | |
| enum | Result { cINVALID , cMISSED , cDAMAGED , cKILLED } |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
| Static Public Member Functions inherited from WsfWeaponEffects | |
| static WsfStringId | GetWeaponEffectsType (WsfPlatform &aPlatform) |
| Return the weapon effects type for the associated platform. | |
| static std::string | GetResultString (WsfWeaponEffects::Result aResult) |
| Static Public Attributes inherited from WsfWeaponEffects | |
| static const char * | cTYPE_KIND = "weapon_effect" |
| static const double | cUNHARMED = 0.0 |
| Value indicating no damage to a player, the weapon had no effect. | |
| static const double | cMORTALLY_WOUNDED = 1.0 |
A WsfLethality class that causes incremental damage inversely proportional to miss distance. A specialization WsfLethality that causes incremental damage to other platforms, varying inversely proportional to miss distance. No random draws are used. The amount of damage imposed is constrained between minimum and maximum levels as specified by input files. The implementation does not account for hardness of the target platform.
| WsfSphericalLethality::WsfSphericalLethality | ( | WsfScenario & | aScenario | ) |
References WsfExplicitWeaponEffects::WsfExplicitWeaponEffects().
Referenced by Clone(), operator=(), and WsfSphericalLethality().
|
overridedefault |
References WsfWeaponEffects::WsfWeaponEffects().
|
protecteddefault |
References WsfSphericalLethality().
|
overrideprotectedvirtual |
Virtual method to apply an amount of damage to an affected target platform. The platform should have already passed a IsVulnerable() check prior to this call. This base implementation considers whether the targeted WsfPlatform IsIndestructible() or not. If so, no Pk is drawn, but an ever decreasing amount of damage is applied to the platform, based upon the set Pk constraint. If the platform is destructible, a draw is taken against either the Launch or Intercept Pk value and any applied Pk degradation, and the damage result is boolean (zero damage, or death).
| aSimTime | Current simulated time. |
| aOtherPlatformPtr | Platform to (potentially) apply damage to. |
Reimplemented from WsfWeaponEffects.
References WsfWeaponEffects::ApplyEffectIncrement(), WsfPlatform::GetDamageFactor(), WsfExplicitWeaponEffects::LastTestRadiusSquared(), and WsfExplicitWeaponEffects::MaximumEffectiveRadius().
|
overridevirtual |
Create a clone of the object.
Reimplemented from WsfExplicitWeaponEffects.
References WsfSphericalLethality(), and WsfWeaponEffects::WsfWeaponEffects().
|
protecteddelete |
References WsfSphericalLethality().
|
overridevirtual |
Method will initialize any data required by the object prior to first use. (The type loader must call this method on each object after the data input stream is read and parsed.)
Reimplemented from WsfWeaponEffects.
References WsfExplicitWeaponEffects::MaximumEffectiveRadius(), and WsfWeaponEffects::PreInitialize().
|
overridevirtual |
Method will read a data stream, and initialize any data required by the object prior to first use. The type loader must call this method on each object after the data stream input is read.
Reimplemented from WsfExplicitWeaponEffects.
References WsfExplicitWeaponEffects::ProcessInput().
|
inline |