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

Public Member Functions

void setMod (double mod)
 
void initialize (double hysteresis_time, double persistence_time, bool bands_persistence, int m, int n)
 
double getLastTime () const
 
bool getLastPreferredDirection () const
 
double getLastResolutionLow () const
 
double getLastResolutionUp () const
 
double getRawResolutionLow () const
 
double getRawResolutionUp () const
 
int getLastNFactorLow () const
 
int getLastNFactorUp () const
 
const std::vector< BandsMofN > & bands_mofn () const
 
void reset ()
 
void resetIfCurrentTime (double current_time)
 
void m_of_n (std::vector< ColorValue > &lcvs)
 
int bandsPersistence (std::vector< BandsRange > &ranges, std::vector< ColorValue > &lcvs, bool recovery, double val)
 
void resolutionsHysteresis (const std::vector< BandsRange > &ranges, BandsRegion::Region corrective_region, double delta, int nfactor, double val, int idx_l, int idx_u)
 
void preferredDirectionHysteresis (double delta, double nfactor, double val)
 
void bandsHysteresis (const std::vector< BandsRange > &ranges, BandsRegion::Region corrective_region, double delta, int nfactor, double val, int idx)
 
std::string toString () const
 

Private Member Functions

void conflict_region_persistence (const std::vector< BandsRange > &ranges, int idx)
 
bool to_the_left (double a, double b) const
 
bool contiguous_resolution_region (const std::vector< BandsRange > &ranges, BandsRegion::Region corrective_region, bool dir, int idx_from, int idx_to) const
 
void switch_dir (bool dir, double nfactor)
 

Static Private Member Functions

static bool is_below_corrective_region (BandsRegion::Region corrective_region, BandsRegion::Region region)
 
static bool is_up_from_corrective_region (BandsRegion::Region corrective_region, BandsRegion::Region region)
 

Private Attributes

double mod_
 
double mod2_
 
double hysteresis_time_
 
double persistence_time_
 
bool bands_persistence_
 
double last_time_
 
int m_
 
int n_
 
std::vector< BandsMofNbands_mofn_
 
bool preferred_dir_
 
double time_of_dir_
 
BandsRegion::Region conflict_region_
 
double conflict_region_low_
 
double conflict_region_up_
 
double time_of_conflict_region_
 
double resolution_up_
 
double resolution_low_
 
double raw_up_
 
double raw_low_
 
int nfactor_up_
 
int nfactor_low_
 

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