ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
larcfm::KinematicBandsCore Class Reference

Public Member Functions

 KinematicBandsCore (const KinematicBandsParameters &params)
 
 KinematicBandsCore (const KinematicBandsCore &core)
 
KinematicBandsCoreoperator= (const KinematicBandsCore &core)
 
void setKinematicBandsCore (const KinematicBandsCore &core)
 
void clear ()
 
void reset ()
 
int currentAlertLevel ()
 
int epsilonH ()
 
int epsilonV ()
 
std::vector< TrafficState > const & correctiveAircraft ()
 
double minHorizontalRecovery () const
 
double minVerticalRecovery () const
 
bool hasOwnship () const
 
TrafficState intruder (const std::string &id) const
 
bool hasTraffic () const
 
std::vector< TrafficState > const & conflictAircraft (int alert_level)
 
Interval const & timeIntervalOfViolation (int alert_level)
 
TrafficState const & criteria_ac () const
 
TrafficState const & recovery_ac () const
 
std::string toString () const
 

Static Public Member Functions

static int epsilonH (const TrafficState &ownship, const TrafficState &ac)
 
static int epsilonV (const TrafficState &ownship, const TrafficState &ac)
 

Public Attributes

TrafficState ownship
 
std::vector< TrafficStatetraffic
 
KinematicBandsParameters parameters
 
TrafficState most_urgent_ac
 

Static Public Attributes

static TCASTable RA
 

Private Member Functions

void update ()
 
void conflict_aircraft (int alert_level)
 

Private Attributes

bool outdated_
 
int epsh_
 
int epsv_
 
std::vector< std::vector< TrafficState > > conflict_acs_
 
std::vector< Intervaltiov_
 
int current_alert_
 

Member Function Documentation

◆ clear()

void larcfm::KinematicBandsCore::clear ( )

Clear ownship and traffic data from this object.

◆ conflict_aircraft()

void larcfm::KinematicBandsCore::conflict_aircraft ( int  alert_level)
private

Put in conflict_acs_ the list of aircraft predicted to be in conflict for the given alert level. Requires: 1 <= alert_level <= alertor.mostSevereAlertLevel()

◆ conflictAircraft()

std::vector< TrafficState > const & larcfm::KinematicBandsCore::conflictAircraft ( int  alert_level)

Return list of conflict aircraft for a given alert level. Requires: 1 <= alert_level <= alertor.mostSevereAlertLevel()

◆ correctiveAircraft()

std::vector< TrafficState > const & larcfm::KinematicBandsCore::correctiveAircraft ( )

Return list of corrective aircraft

◆ currentAlertLevel()

int larcfm::KinematicBandsCore::currentAlertLevel ( )

Returns current alert level

◆ epsilonH()

int larcfm::KinematicBandsCore::epsilonH ( )

Returns horizontal epsilon for implicit coordination with respect to criteria ac

◆ epsilonV()

int larcfm::KinematicBandsCore::epsilonV ( )

Returns vertical epsilon for implicit coordination with respect to criteria ac

◆ minHorizontalRecovery()

double larcfm::KinematicBandsCore::minHorizontalRecovery ( ) const

Returns actual minimum horizontal separation for recovery bands in internal units.

◆ minVerticalRecovery()

double larcfm::KinematicBandsCore::minVerticalRecovery ( ) const

Returns actual minimum vertical separation for recovery bands in internal units.

◆ reset()

void larcfm::KinematicBandsCore::reset ( )

Reset cached values

◆ setKinematicBandsCore()

void larcfm::KinematicBandsCore::setKinematicBandsCore ( const KinematicBandsCore core)

Set kinematic bands core

◆ timeIntervalOfViolation()

Interval const & larcfm::KinematicBandsCore::timeIntervalOfViolation ( int  alert_level)

Return time interval of violation for given alert level Requires: 1 <= alert_level <= alertor.mostSevereAlertLevel()

◆ update()

void larcfm::KinematicBandsCore::update ( )
private

Update cached values


The documentation for this class was generated from the following file: