10 #ifndef CEDGEREGISTRATIONDECIDER_H 11 #define CEDGEREGISTRATIONDECIDER_H 36 template <
class GRAPH_T =
typename mrpt::graphs::CNetworkOfPoses2DInf>
48 using pose_t =
typename GRAPH_T::constraint_t::type_value;
70 std::map<std::string, int>* edge_type_to_num)
const {};
92 const std::set<mrpt::graphs::TNodeID>&)
virtual void checkRegistrationCondition(mrpt::graphs::TNodeID from, mrpt::graphs::TNodeID to)
virtual bool updateState(mrpt::obs::CActionCollection::Ptr action, mrpt::obs::CSensoryFrame::Ptr observations, mrpt::obs::CObservation::Ptr observation)=0
Generic method for fetching the incremental action/observation readings from the calling function...
Interface for implementing edge registration classes.
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()
Default class constructor.
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).
GLsizei const GLchar ** string
virtual ~CEdgeRegistrationDecider()
Default class destructor.
virtual void getDescriptiveReport(std::string *report_str) const
Fill the provided string with a detailed report of the decider/optimizer state.
uint64_t TNodeID
A generic numeric type for unique IDs of nodes or entities.
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.