#include <pointFilter.h>
Classes | |
struct | FilterRateCounterPair |
Pair of a filter pass rate and a point counter. everytime. More... | |
Public Member Functions | |
CFPointFilter (CFilterStrategy strategy, std::vector< PointFilterRule > filterRules, std::string name, long &randomSeedRef) | |
CFPointFilter (CFilterStrategy strategy, std::vector< PointFilterRule > filterRules, std::string name) | |
CFPointFilter (CFilterStrategy strategy, std::string name) | |
CFPointFilter (std::string str, CFilterStrategy strategy, std::string name) | |
create pointFilter from string . Format: 'rule1,rule2,..,rule N' with rule=[(vanishedFocalValues,jacobianRank,smooth,quadricsRank),filterPassRate] and smooth= 'true' or 'false'. Example : [(13,5,false,3),100]. In case 13 focal values vanished and JacobianRank=5 and QuadricsRank=3 one of 100 result points will pass the filter | |
void | onRuleScanned (std::string str) |
void | addFilterRule (uint16_t exactVanishedFocalValues, uint16_t jacobianRank, bool smooth, uint16_t quadricsRank, uint32_t filterRate) |
void | addFilterRule (const PointFilterRule &fr) |
bool | pointPassedFilter (uint16_t exactVanishedFocalValues, uint16_t jacobianRank, bool smooth, uint16_t quadricsRank) const |
void | print (std::ostream &os) |
void | printInMacaulayStyle (std::ostream &os) |
Static Public Member Functions | |
static double | seedFromTime () |
Private Types | |
typedef std::map< const PointFilterKey, FilterRateCounterPair > | hierarchicalFilterRuleMap_Type |
Private Attributes | |
long | randomSeed_m |
long & | randomSeedRef_m |
CFilterStrategy | strategy_m |
rule_term_scanned * | singleRuleScannedTrigger_m |
functor which is used to tringger everytme a single point filter rule is parsed and callssback this::onRuleScanned() | |
std::string | name_m |
hierarchicalFilterRuleMap_Type | hierarchicalFilterRules_m |
/
Definition at line 255 of file pointFilter.h.
typedef std::map< const PointFilterKey, FilterRateCounterPair > CFPointFilter::hierarchicalFilterRuleMap_Type [private] |
Definition at line 299 of file pointFilter.h.
CFPointFilter::CFPointFilter | ( | CFilterStrategy | strategy, | |
std::vector< PointFilterRule > | filterRules, | |||
std::string | name, | |||
long & | randomSeedRef | |||
) | [inline] |
Definition at line 283 of file pointFilter.hpp.
References addFilterRule().
CFPointFilter::CFPointFilter | ( | CFilterStrategy | strategy, | |
std::vector< PointFilterRule > | filterRules, | |||
std::string | name | |||
) | [inline] |
Definition at line 300 of file pointFilter.hpp.
References addFilterRule().
CFPointFilter::CFPointFilter | ( | CFilterStrategy | strategy, | |
std::string | name | |||
) | [inline] |
Definition at line 318 of file pointFilter.hpp.
CFPointFilter::CFPointFilter | ( | std::string | str, | |
CFilterStrategy | strategy, | |||
std::string | name | |||
) | [inline] |
Definition at line 246 of file pointFilter.hpp.
References PointFilterRule::getRuleRef(), singleRuleScannedTrigger_m, space_rule_g, and spacy_colon_g.
void CFPointFilter::addFilterRule | ( | const PointFilterRule & | fr | ) | [inline] |
Definition at line 386 of file pointFilter.hpp.
References CFilterStrategy::CF_FILTER_RANDOM_START, CFilterStrategy::CF_FILTER_RANDOM_SYNC, CFilterStrategy::CF_FILTER_SAVE_FIRST, PointFilterRule::getKeyConstRef(), PointFilterRule::getPassFilterRate(), hierarchicalFilterRules_m, CFilterStrategy::integral(), randomSeedRef_m, randomUInt32(), and strategy_m.
void CFPointFilter::addFilterRule | ( | uint16_t | exactVanishedFocalValues, | |
uint16_t | jacobianRank, | |||
bool | smooth, | |||
uint16_t | quadricsRank, | |||
uint32_t | filterRate | |||
) | [inline] |
Definition at line 419 of file pointFilter.hpp.
Referenced by CFPointFilter(), onRuleScanned(), pointFilterTestPassed(), and testFilterRandomPart().
void CFPointFilter::onRuleScanned | ( | std::string | str | ) | [inline] |
Definition at line 237 of file pointFilter.hpp.
References addFilterRule().
Referenced by rule_term_scanned::operator()().
bool CFPointFilter::pointPassedFilter | ( | uint16_t | exactVanishedFocalValues, | |
uint16_t | jacobianRank, | |||
bool | smooth, | |||
uint16_t | quadricsRank | |||
) | const [inline] |
Definition at line 329 of file pointFilter.hpp.
References CFilterStrategy::CF_FILTER_RANDOM_START, CFilterStrategy::CF_FILTER_RANDOM_SYNC, CFilterStrategy::CF_FILTER_SAVE_FIRST, hierarchicalFilterRules_m, CFilterStrategy::integral(), randomSeedRef_m, randomUInt32(), and strategy_m.
Referenced by pointFilterTestPassed(), nCenterFocus::CenterfocusParams< TPolynomXY, TRing >::pointPassedFilter(), and testFilterRandomPart().
void CFPointFilter::print | ( | std::ostream & | os | ) | [inline] |
Definition at line 433 of file pointFilter.hpp.
References hierarchicalFilterRules_m.
Referenced by printInMacaulayStyle().
void CFPointFilter::printInMacaulayStyle | ( | std::ostream & | os | ) | [inline] |
Definition at line 447 of file pointFilter.hpp.
References name_m, and print().
static double CFPointFilter::seedFromTime | ( | ) | [inline, static] |
Definition at line 310 of file pointFilter.h.
hierarchicalFilterRuleMap_Type CFPointFilter::hierarchicalFilterRules_m [mutable, private] |
Definition at line 301 of file pointFilter.h.
Referenced by addFilterRule(), pointPassedFilter(), and print().
std::string CFPointFilter::name_m [private] |
Definition at line 296 of file pointFilter.h.
Referenced by printInMacaulayStyle().
long CFPointFilter::randomSeed_m [private] |
Definition at line 287 of file pointFilter.h.
long& CFPointFilter::randomSeedRef_m [private] |
Definition at line 289 of file pointFilter.h.
Referenced by addFilterRule(), and pointPassedFilter().
Definition at line 294 of file pointFilter.h.
Referenced by CFPointFilter().
CFilterStrategy CFPointFilter::strategy_m [private] |
Definition at line 291 of file pointFilter.h.
Referenced by addFilterRule(), and pointPassedFilter().