WSF
WsfSA_Group Class Reference

#include <WsfSA_Group.hpp>

Inheritance diagram for WsfSA_Group:
Collaboration diagram for WsfSA_Group:

Public Types

using ElementList = std::list<WsfSA_EntityPerception*>
Public Types inherited from WsfSA_PerceivedItem
enum  Identification {
  UNKNOWN = 0 , FRIENDLY = 1 , NEUTRAL = 2 , BOGIE = 3 ,
  BANDIT = 4
}
enum  ItemType { ENTITY = 0 , GROUP = 1 }
enum  Importance { IGNORED = 0 , NOMINAL = 1 , IMPORTANT = 2 }

Public Member Functions

 WsfSA_Group ()=default
 WsfSA_Group (const WsfPlatform *aOwningPlatform)
 ~WsfSA_Group () override
 WsfSA_Group (const WsfSA_Group &aSrc)
WsfSA_GroupClone () const
bool IsSame (const WsfSA_PerceivedItem *aOther) const override
const char * GetScriptClassName () const override
ItemType GetItemType () const override
double GetLat_deg () const override
void SetLat_deg (double aLat_deg) override
double GetLon_deg () const override
void SetLon_deg (double aLon_deg) override
double GetAltitude_ft () const override
void SetAltitude_ft (double aAltitude_ft) override
double GetSpeed_kts () const override
void SetSpeed_kts (double aSpeed_kts) override
double GetHeading_deg () const override
void SetHeading_deg (double aHeading_deg) override
Importance GetImportance () const override
void SetImportance (Importance aImportance) override
Identification GetIdentification () const override
void SetIdentification (Identification aIdent) override
std::string GetPerceivedName () const override
void SetPerceivedName (const std::string &aIdString) override
bool GetAngleOnly () const override
void SetAngleOnly (bool aAngleOnly) override
float GetRadiusCurrent_nm () const
void SetRadiusCurrent_nm (float aValue)
float GetRadiusMinimum_nm () const
void SetRadiusMinimum_nm (float aValue)
double GetLastUpdateTime_sec () const
void SetLastUpdateTime_sec (double aValue)
bool GetFocus () const
void SetFocus (bool aFocus)
bool GetElementProtection () const
void SetElementProtection (bool aProtectElements)
bool GetFocusProtection () const
void SetFocusProtection (bool aProtectFocus)
size_t GetNumElements () const
const ElementListGetElementList () const
void SetElementList (const ElementList &aList)
ElementListModifiableElementList ()
bool AddElement (WsfSA_EntityPerception *aElement)
bool RemoveElement (WsfSA_EntityPerception *aElement)
double EstimatedTimeToIntercept (WsfPlatform *aTarget) const override
 Returns an estimate of the time for this entity to intercept the specified platform.
Public Member Functions inherited from WsfSA_PerceivedItem
 WsfSA_PerceivedItem ()
 WsfSA_PerceivedItem (const WsfPlatform *aOwningPlatform)
 WsfSA_PerceivedItem (const WsfSA_PerceivedItem &aSrc)
WsfSA_PerceivedItemoperator= (const WsfSA_PerceivedItem &aRhs)
bool operator== (const WsfSA_PerceivedItem &aRhs)=delete
bool operator!= (const WsfSA_PerceivedItem &aRhs)=delete
const char * GetScriptClassName () const override
double CalcRangeForPlatform (const WsfPlatform *aPlatform)
double AngleOffHeadingFromOwningPlatform_deg ()
 Find the angle off heading from this PI's owning platform, in degrees -180 to 180.
const WsfPlatformOwningPlatform () const
void OwningPlatform (const WsfPlatform *aPlatform)
bool PerceptionIsMalformed () const
void SetMalformedCondition ()
virtual double GetBearing_deg () const
virtual void SetBearing_deg (double aBearing_deg)
virtual double GetThreatLevel () const
virtual void SetThreatLevel (double aThreatLevel)
virtual double GetTargetValue () const
virtual void SetTargetValue (double aTargetValue)
virtual bool GetAltitudeValid () const
virtual void SetAltitudeValid (bool aSetting)
virtual bool GetSpeedValid () const
virtual void SetSpeedValid (bool aSetting)
virtual bool GetHeadingValid () const
virtual void SetHeadingValid (bool aSetting)
virtual double GetSelectionScore () const
virtual void SetSelectionScore (double aSelectionScore)

Additional Inherited Members

Static Public Member Functions inherited from WsfSA_PerceivedItem
static double GetAssumedRangeForAngleOnlyTargets ()
static void SetAssumedRangeForAngleOnlyTargets (double aRange)
static bool CompareScoreLowGood (const WsfSA_PerceivedItem *aFirstItem, const WsfSA_PerceivedItem *aSecondItem)
static bool CompareScoreHighGood (const WsfSA_PerceivedItem *aFirstItem, const WsfSA_PerceivedItem *aSecondItem)
static bool CompareThreatLevelHighGood (const WsfSA_PerceivedItem *aFirstItem, const WsfSA_PerceivedItem *aSecondItem)
static bool CompareTargetValueHighGood (const WsfSA_PerceivedItem *aFirstItem, const WsfSA_PerceivedItem *aSecondItem)
Static Public Attributes inherited from WsfSA_PerceivedItem
static double mAssumedRangeForAngleOnlyTargets = 2.0e13

Member Typedef Documentation

◆ ElementList

Constructor & Destructor Documentation

◆ WsfSA_Group() [1/3]

WsfSA_Group::WsfSA_Group ( )
default

Referenced by Clone(), IsSame(), and WsfSA_Group().

◆ WsfSA_Group() [2/3]

WsfSA_Group::WsfSA_Group ( const WsfPlatform * aOwningPlatform)
inlineexplicit

◆ ~WsfSA_Group()

WsfSA_Group::~WsfSA_Group ( )
override

◆ WsfSA_Group() [3/3]

WsfSA_Group::WsfSA_Group ( const WsfSA_Group & aSrc)

Member Function Documentation

◆ AddElement()

◆ Clone()

WsfSA_Group * WsfSA_Group::Clone ( ) const
inline

References WsfSA_Group().

◆ EstimatedTimeToIntercept()

double WsfSA_Group::EstimatedTimeToIntercept ( WsfPlatform * aTarget) const
overridevirtual

Returns an estimate of the time for this entity to intercept the specified platform.

If no intercept is possible, -1.0 will be returned. If the entity is angle-only, or if it lacks speed data, no intercept will be calculated and -1.0 will be returned.

Parameters
aTargetpointer to the platform being considered

Implements WsfSA_PerceivedItem.

References GetAltitude_ft(), WsfSA_PerceivedItem::GetAltitudeValid(), GetLat_deg(), GetLon_deg(), GetSpeed_kts(), WsfSA_PerceivedItem::GetSpeedValid(), and WsfIntercept::Intercept().

◆ GetAltitude_ft()

double WsfSA_Group::GetAltitude_ft ( ) const
inlineoverridevirtual

◆ GetAngleOnly()

bool WsfSA_Group::GetAngleOnly ( ) const
inlineoverridevirtual

Implements WsfSA_PerceivedItem.

◆ GetElementList()

◆ GetElementProtection()

bool WsfSA_Group::GetElementProtection ( ) const
inline

◆ GetFocus()

◆ GetFocusProtection()

bool WsfSA_Group::GetFocusProtection ( ) const
inline

◆ GetHeading_deg()

double WsfSA_Group::GetHeading_deg ( ) const
inlineoverridevirtual

Implements WsfSA_PerceivedItem.

◆ GetIdentification()

◆ GetImportance()

WsfSA_PerceivedItem::Importance WsfSA_Group::GetImportance ( ) const
overridevirtual

Implements WsfSA_PerceivedItem.

References WsfSA_PerceivedItem::IMPORTANT.

Referenced by SetImportance().

◆ GetItemType()

ItemType WsfSA_Group::GetItemType ( ) const
inlineoverridevirtual

◆ GetLastUpdateTime_sec()

double WsfSA_Group::GetLastUpdateTime_sec ( ) const
inline

◆ GetLat_deg()

double WsfSA_Group::GetLat_deg ( ) const
inlineoverridevirtual

◆ GetLon_deg()

double WsfSA_Group::GetLon_deg ( ) const
inlineoverridevirtual

◆ GetNumElements()

◆ GetPerceivedName()

std::string WsfSA_Group::GetPerceivedName ( ) const
inlineoverridevirtual

◆ GetRadiusCurrent_nm()

float WsfSA_Group::GetRadiusCurrent_nm ( ) const
inline

◆ GetRadiusMinimum_nm()

float WsfSA_Group::GetRadiusMinimum_nm ( ) const
inline

◆ GetScriptClassName()

const char * WsfSA_Group::GetScriptClassName ( ) const
inlineoverride

◆ GetSpeed_kts()

double WsfSA_Group::GetSpeed_kts ( ) const
inlineoverridevirtual

Implements WsfSA_PerceivedItem.

Referenced by EstimatedTimeToIntercept().

◆ IsSame()

◆ ModifiableElementList()

ElementList * WsfSA_Group::ModifiableElementList ( )
inline

◆ RemoveElement()

◆ SetAltitude_ft()

void WsfSA_Group::SetAltitude_ft ( double aAltitude_ft)
inlineoverridevirtual

◆ SetAngleOnly()

void WsfSA_Group::SetAngleOnly ( bool aAngleOnly)
inlineoverridevirtual

Implements WsfSA_PerceivedItem.

◆ SetElementList()

◆ SetElementProtection()

◆ SetFocus()

void WsfSA_Group::SetFocus ( bool aFocus)
inline

◆ SetFocusProtection()

void WsfSA_Group::SetFocusProtection ( bool aProtectFocus)
inline

◆ SetHeading_deg()

void WsfSA_Group::SetHeading_deg ( double aHeading_deg)
inlineoverridevirtual

◆ SetIdentification()

void WsfSA_Group::SetIdentification ( Identification aIdent)
inlineoverridevirtual

Implements WsfSA_PerceivedItem.

◆ SetImportance()

void WsfSA_Group::SetImportance ( Importance aImportance)
overridevirtual

◆ SetLastUpdateTime_sec()

void WsfSA_Group::SetLastUpdateTime_sec ( double aValue)
inline

◆ SetLat_deg()

void WsfSA_Group::SetLat_deg ( double aLat_deg)
inlineoverridevirtual

◆ SetLon_deg()

void WsfSA_Group::SetLon_deg ( double aLon_deg)
inlineoverridevirtual

◆ SetPerceivedName()

◆ SetRadiusCurrent_nm()

void WsfSA_Group::SetRadiusCurrent_nm ( float aValue)
inline

◆ SetRadiusMinimum_nm()

◆ SetSpeed_kts()

void WsfSA_Group::SetSpeed_kts ( double aSpeed_kts)
inlineoverridevirtual

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved