|
WSF
|
#include <WsfSA_Group.hpp>


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_Group * | Clone () 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 ElementList & | GetElementList () const |
| void | SetElementList (const ElementList &aList) |
| ElementList * | ModifiableElementList () |
| 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_PerceivedItem & | operator= (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 WsfPlatform * | OwningPlatform () 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 |
| using WsfSA_Group::ElementList = std::list<WsfSA_EntityPerception*> |
|
default |
Referenced by Clone(), IsSame(), and WsfSA_Group().
|
inlineexplicit |
References WsfSA_PerceivedItem::WsfSA_PerceivedItem().
|
override |
| WsfSA_Group::WsfSA_Group | ( | const WsfSA_Group & | aSrc | ) |
References WsfSA_Group(), and WsfSA_PerceivedItem::WsfSA_PerceivedItem().
| bool WsfSA_Group::AddElement | ( | WsfSA_EntityPerception * | aElement | ) |
References WsfSA_EntityPerception::GetParentGroup(), and WsfSA_EntityPerception::SetParentGroup().
Referenced by WsfSA_GroupManager::AttemptToJoinBestGroup(), WsfSA_GroupUtils::DisbandGroup(), WsfSA_GroupManager::FormDegenerateGroup(), WsfSA_GroupUtils::RemoveEntityFromGroup(), and WsfSA_GroupUtils::TransferEntity().
|
inline |
References WsfSA_Group().
|
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.
| aTarget | pointer 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().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::DistanceFromCentroid(), EstimatedTimeToIntercept(), and WsfSA_GroupUtils::SortedGroups().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
|
inline |
|
inline |
Referenced by WsfSA_GroupManager::AttemptToJoinBestGroup().
|
inline |
|
inline |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
|
overridevirtual |
|
overridevirtual |
Implements WsfSA_PerceivedItem.
References WsfSA_PerceivedItem::IMPORTANT.
Referenced by SetImportance().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
References WsfSA_PerceivedItem::GROUP.
|
inline |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::DistanceFromCentroid(), and EstimatedTimeToIntercept().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::DistanceFromCentroid(), and EstimatedTimeToIntercept().
|
inline |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by IsSame(), SetImportance(), and WsfSA_GroupUtils::SplitGroup().
|
inline |
Referenced by WsfSA_GroupUtils::CalcRadiusForGroup_nm(), and WsfSA_GroupUtils::SortedGroups().
|
inline |
Referenced by WsfSA_GroupUtils::CalcRadiusForGroup_nm().
|
inlineoverride |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by EstimatedTimeToIntercept().
|
overridevirtual |
|
inline |
| bool WsfSA_Group::RemoveElement | ( | WsfSA_EntityPerception * | aElement | ) |
References WsfSA_EntityPerception::GetParentGroup(), and WsfSA_EntityPerception::SetParentGroup().
Referenced by WsfSA_GroupUtils::DisbandGroup(), and WsfSA_GroupUtils::RemoveEntityFromGroup().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::RecalculateGroupCentroid().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
| void WsfSA_Group::SetElementList | ( | const ElementList & | aList | ) |
|
inline |
|
inline |
|
inline |
Referenced by WsfSA_GroupUtils::SetFocus().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::RecalculateGroupCentroid().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
|
overridevirtual |
Implements WsfSA_PerceivedItem.
References GetImportance(), and GetPerceivedName().
|
inline |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::RecalculateGroupCentroid().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::RecalculateGroupCentroid().
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::CreateGroup(), WsfSA_GroupUtils::DisbandGroup(), WsfSA_GroupManager::FormDegenerateGroup(), WsfSA_GroupUtils::MergeGroups(), WsfSA_GroupUtils::RemoveEntityFromGroup(), WsfSA_GroupUtils::RenameGroup(), and WsfSA_GroupUtils::SplitGroup().
|
inline |
|
inline |
|
inlineoverridevirtual |
Implements WsfSA_PerceivedItem.
Referenced by WsfSA_GroupUtils::RecalculateGroupCentroid().