11 _gainThreshold(1e-6), _lastChi(0.), _auxTerminateFlag(false),
12 _maxIterations(
std::numeric_limits<int>::max())
23 assert(dynamic_cast<const SparseOptimizer*>(graph) &&
"graph is not a SparseOptimizer");
24 assert(dynamic_cast<HyperGraphAction::ParametersIteration*>(parameters) &&
"error casting parameters");
42 bool stopOptimizer =
false;
45 double gain = (
_lastChi - currentChi) / currentChi;
void setOptimizerStopFlag(const SparseOptimizer *optimizer, bool stop)
void setMaxIterations(int maxit)
double gainThreshold() const
SparseOptimizerTerminateAction()
void setGainThreshold(double gainThreshold)
bool * forceStopFlag() const
double activeRobustChi2() const
virtual HyperGraphAction * operator()(const HyperGraph *graph, Parameters *parameters=0)
Protocol The SLAM executable accepts such as solving the and retrieving or vertices in the graph
Abstract action that operates on an entire graph.