ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
larcfm::TCASTable Class Reference
Inheritance diagram for larcfm::TCASTable:
larcfm::ParameterTable larcfm::ParameterAcceptor larcfm::ParameterProvider

Public Member Functions

void clear ()
 
int getSensitivityLevel (double alt) const
 
int getSensitivityLevel (double alt, const std::string &u) const
 
bool isValidSensitivityLevel (int sl) const
 
int getMaxSensitivityLevel () const
 
double getLevelAltitudeLowerBound (int sl) const
 
double getLevelAltitudeLowerBound (int sl, std::string u) const
 
double getLevelAltitudeUpperBound (int sl) const
 
double getLevelAltitudeUpperBound (int sl, std::string u) const
 
void setDefaultTCASIIThresholds (bool ra)
 
double getTAU (int sl) const
 
double getTCOA (int sl) const
 
double getDMOD (int sl) const
 
double getDMOD (int sl, std::string u) const
 
double getZTHR (int sl) const
 
double getZTHR (int sl, std::string u) const
 
double getHMD (int sl) const
 
double getHMD (int sl, std::string u) const
 
bool setTAU (int sl, double val)
 
void setTAU (int sl, double val, std::string u)
 
bool setTCOA (int sl, double val)
 
void setTCOA (int sl, double val, std::string u)
 
bool setDMOD (int sl, double val)
 
void setDMOD (int sl, double val, std::string u)
 
bool setZTHR (int sl, double val)
 
void setZTHR (int sl, double val, std::string u)
 
bool setHMD (int sl, double val)
 
void setHMD (int sl, double val, std::string u)
 
int addSensitivityLevel (double alt)
 
int addSensitivityLevel ()
 
int addSensitivityLevel (double alt, std::string u)
 
void setHMDFilter (bool flag)
 
bool getHMDFilter () const
 
bool isRAStandard () const
 
bool isTAStandard () const
 
std::string toString () const
 
std::string toPVS () const
 
std::string getUnits (const std::string &key) const
 
bool equals (const TCASTable &t) const
 
bool contains (const TCASTable &tab) const
 
ParameterData getParameters () const
 
void updateParameterData (ParameterData &p) const
 
void setParameters (const ParameterData &p)
 

Static Public Member Functions

static const TCASTableTCASII_RA ()
 
static const TCASTableTCASII_TA ()
 
static TCASTable make_TCASII_Table (bool ra)
 
static TCASTable make_Empty_TCASTable ()
 

Private Member Functions

void add_zeros ()
 
void default_units ()
 
void setTCASIILevels ()
 
std::string pvs_list (const std::vector< double > &v) const
 

Static Private Member Functions

static const std::vector< double > & default_levels ()
 
static const std::vector< double > & TA_TAU ()
 
static const std::vector< double > & RA_TAU ()
 
static const std::vector< double > & TA_DMOD ()
 
static const std::vector< double > & RA_DMOD ()
 
static const std::vector< double > & TA_ZTHR ()
 
static const std::vector< double > & RA_ZTHR ()
 
static const std::vector< double > & RA_HMD ()
 
static std::string list_units (const std::string &units, const std::vector< double > &v)
 

Private Attributes

bool HMDFilter_
 
std::map< std::string, std::string > units_
 
std::vector< double > TAU_
 
std::vector< double > TCOA_
 
std::vector< double > DMOD_
 
std::vector< double > ZTHR_
 
std::vector< double > HMD_
 
std::vector< double > levels_
 

Member Function Documentation

◆ addSensitivityLevel() [1/3]

int larcfm::TCASTable::addSensitivityLevel ( )

Add empty sensitivity level Add value 0 to DMOD,HMD,ZTHR,TAUMOD,TCOA Either returns index of new maximum sensitivity level

◆ addSensitivityLevel() [2/3]

int larcfm::TCASTable::addSensitivityLevel ( double  alt)

Add sensitivity level with upper bound altitude alt (in internal units). Requires: alt > levels_.get(size(levels_)-1) or an empty table Add value 0 to DMOD,HMD,ZTHR,TAUMOD,TCOA Either returns index of new maximum sensitivity level or 0 (if requires is false)

◆ addSensitivityLevel() [3/3]

int larcfm::TCASTable::addSensitivityLevel ( double  alt,
std::string  u 
)

Add sensitivity level with upper bound altitude alt (in given units). Requires: alt > levels_.get(size(levels_)-1) or an empty table Add value 0 to DMOD,HMD,ZTHR,TAUMOD,TCOA Either returns new sensitivity level or 0 (if requires is false)

◆ getDMOD() [1/2]

double larcfm::TCASTable::getDMOD ( int  sl) const

Returns DMOD for sensitivity level sl in internal units. This returns a negative value if an invalid level is input.

◆ getDMOD() [2/2]

double larcfm::TCASTable::getDMOD ( int  sl,
std::string  u 
) const

Returns DMOD for sensitivity level sl in u units. This returns a negative value if an invalid level is input.

◆ getHMD() [1/2]

double larcfm::TCASTable::getHMD ( int  sl) const

Returns HMD for sensitivity level sl in internal units. This returns a negative value if an invalid level is input.

◆ getHMD() [2/2]

double larcfm::TCASTable::getHMD ( int  sl,
std::string  u 
) const

Returns HMD for sensitivity level sl in u units. This returns a negative value if an invalid level is input.

◆ getLevelAltitudeLowerBound() [1/2]

double larcfm::TCASTable::getLevelAltitudeLowerBound ( int  sl) const

Returns altitude lower bound for a given sensitivity level sl, in internal units. Note this is an open bound (sl is valid for altitudes strictly greater than the return value) This returns a negative value if an invalid level is input.

◆ getLevelAltitudeLowerBound() [2/2]

double larcfm::TCASTable::getLevelAltitudeLowerBound ( int  sl,
std::string  u 
) const

Returns altitude lower bound for a given sensitivity level sl, in given units. Note this is an open bound (sl is valid for altitudes strictly greater than the return value) This returns a negative value if an invalid level is input.

◆ getLevelAltitudeUpperBound() [1/2]

double larcfm::TCASTable::getLevelAltitudeUpperBound ( int  sl) const

Returns altitude upper bound for a given sensitivity level sl, in internal units. Note this is a closed bound (sl is valid for altitudes less than or equal to the return value) This returns a negative value if an invalid level is input.

◆ getLevelAltitudeUpperBound() [2/2]

double larcfm::TCASTable::getLevelAltitudeUpperBound ( int  sl,
std::string  u 
) const

Returns altitude upper bound for a given sensitivity level sl, in given units. Note this is a closed bound (sl is valid for altitudes less than or equal to the return value) This returns a negative value if an invalid level is input.

◆ getMaxSensitivityLevel()

int larcfm::TCASTable::getMaxSensitivityLevel ( ) const

Returns the maximum defined sensitivity level (indexed from 1).

◆ getParameters()

ParameterData larcfm::TCASTable::getParameters ( ) const
virtual

◆ getSensitivityLevel() [1/2]

int larcfm::TCASTable::getSensitivityLevel ( double  alt) const

Return sensitivity level from alt, specified in internal units. Sensitivity levels are indexed from 1.

◆ getSensitivityLevel() [2/2]

int larcfm::TCASTable::getSensitivityLevel ( double  alt,
const std::string &  u 
) const

Return sensitivity level from alt specified in u units

◆ getTAU()

double larcfm::TCASTable::getTAU ( int  sl) const

Returns TAU threshold for sensitivity level sl in seconds. This returns a negative value if an invalid level is input.

◆ getTCOA()

double larcfm::TCASTable::getTCOA ( int  sl) const

Returns TCOA threshold for sensitivity level sl in seconds This returns a negative value if an invalid level is input.

◆ getZTHR() [1/2]

double larcfm::TCASTable::getZTHR ( int  sl) const

Returns Z threshold for sensitivity level sl in internal units. This returns a negative value if an invalid level is input.

◆ getZTHR() [2/2]

double larcfm::TCASTable::getZTHR ( int  sl,
std::string  u 
) const

Returns Z threshold for sensitivity level sl in u units. This returns a negative value if an invalid level is input.

◆ isRAStandard()

bool larcfm::TCASTable::isRAStandard ( ) const

Return true if the values in the table correspond to the standard RA values

◆ isTAStandard()

bool larcfm::TCASTable::isTAStandard ( ) const

Return true if the values in the table correspond to the standard TA values

◆ isValidSensitivityLevel()

bool larcfm::TCASTable::isValidSensitivityLevel ( int  sl) const

Return true if the sensitivity level is between 1 and levels.size().

◆ make_Empty_TCASTable()

TCASTable larcfm::TCASTable::make_Empty_TCASTable ( )
static

Make empty TCASTable

Returns
This returns a zeroed table with one unbounded level. That level has value 0 for DMOD,HMD,ZTHR,TAUMOD,TCOA

◆ setDefaultTCASIIThresholds()

void larcfm::TCASTable::setDefaultTCASIIThresholds ( bool  ra)

Set table to TCASII Thresholds (RA Table when ra is true, TA Table when ra is false)

◆ setDMOD() [1/2]

bool larcfm::TCASTable::setDMOD ( int  sl,
double  val 
)

Modify the value of DMOD for a given sensitivity level Parameter val is given in internal units. Val is >= 0. Return true is value was set.

◆ setDMOD() [2/2]

void larcfm::TCASTable::setDMOD ( int  sl,
double  val,
std::string  u 
)

Modify the value of DMOD for a given sensitivity level Parameter val is given in u units. Val is >= 0.

◆ setHMD() [1/2]

bool larcfm::TCASTable::setHMD ( int  sl,
double  val 
)

Modify the value of HMD for a given sensitivity level Parameter val is given in internal units. Val is >= 0. Return true is value was set.

◆ setHMD() [2/2]

void larcfm::TCASTable::setHMD ( int  sl,
double  val,
std::string  u 
)

Modify the value of HMD for a given sensitivity level Parameter val is given in u units. Val is >= 0.

◆ setParameters()

void larcfm::TCASTable::setParameters ( const ParameterData p)
virtual

◆ setTAU() [1/2]

bool larcfm::TCASTable::setTAU ( int  sl,
double  val 
)

Modify the value of Tau Threshold for a given sensitivity level Parameter val is given in seconds. Val is >= 0. Return true is value was set.

◆ setTAU() [2/2]

void larcfm::TCASTable::setTAU ( int  sl,
double  val,
std::string  u 
)

Modify the value of Tau Threshold for a given sensitivity level Parameter val is given in given units. Val is >= 0

◆ setTCOA() [1/2]

bool larcfm::TCASTable::setTCOA ( int  sl,
double  val 
)

Modify the value of TCOA Threshold for a given sensitivity level Parameter val is given in seconds. Val is >= 0. Return true is value was set.

◆ setTCOA() [2/2]

void larcfm::TCASTable::setTCOA ( int  sl,
double  val,
std::string  u 
)

Modify the value of TCOA Threshold for a given sensitivity level Parameter val is given in given units. Val is >= 0

◆ setZTHR() [1/2]

bool larcfm::TCASTable::setZTHR ( int  sl,
double  val 
)

Modify the value of ZTHR for a given sensitivity level Parameter val is given in internal units. Val is >= 0. Return true is value was set.

◆ setZTHR() [2/2]

void larcfm::TCASTable::setZTHR ( int  sl,
double  val,
std::string  u 
)

Modify the value of ZTHR for a given sensitivity level Parameter val is given in u units. Val is >= 0.

◆ toString()

std::string larcfm::TCASTable::toString ( ) const
virtual

◆ updateParameterData()

void larcfm::TCASTable::updateParameterData ( ParameterData p) const
virtual

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