35 template <
class GRAPH_T =
typename mrpt::graphs::CNetworkOfPoses2DInf>
47 using pose_t =
typename GRAPH_T::constraint_t::type_value;
56 std::map<std::string, int>* edge_type_to_num)
const {};
77 const std::set<mrpt::graphs::TNodeID>&)
CEdgeRegistrationDecider()=default
virtual void checkRegistrationCondition(mrpt::graphs::TNodeID from, mrpt::graphs::TNodeID to)
Interface for implementing edge registration classes.
void getDescriptiveReport(std::string *report_str) const override
Fill the provided string with a detailed report of the decider/optimizer state.
virtual bool justInsertedLoopClosure() const
Used by the caller to query for possible loop closures in the last edge registration procedure...
virtual void checkRegistrationCondition(const std::set< mrpt::graphs::TNodeID > &)
~CEdgeRegistrationDecider() override=default
virtual void getEdgesStats(std::map< std::string, int > *edge_type_to_num) const
Fill the given map with the type of registered edges as well as the corresponding number of registrat...
bool m_override_registered_nodes_check
Indicates whether the ERD implementation expects, at most one single node to be registered, between successive calls to the updateState method.
Interface for implementing node/edge registration deciders or optimizer classes.
typename GRAPH_t ::constraint_t constraint_t
type of graph constraints
typename GRAPH_t ::constraint_t::type_value pose_t
type of underlying poses (2D/3D).
virtual void registerNewEdge(const mrpt::graphs::TNodeID &from, const mrpt::graphs::TNodeID &to, const constraint_t &rel_edge)
Register a new constraint/edge in the current graph.
uint64_t TNodeID
A generic numeric type for unique IDs of nodes or entities.