10 #ifndef CEDGEREGISTRATIONDECIDER_H 11 #define CEDGEREGISTRATIONDECIDER_H 28 namespace mrpt {
namespace graphslam {
namespace deciders {
41 template<
class GRAPH_T=
typename mrpt::graphs::CNetworkOfPoses2DInf>
53 typedef typename GRAPH_T::constraint_t::type_value
pose_t;
68 mrpt::obs::CActionCollectionPtr action,
69 mrpt::obs::CSensoryFramePtr observations,
70 mrpt::obs::CObservationPtr observation ) = 0;
75 std::map<std::string, int>* edge_type_to_num)
const {};
96 const std::set<mrpt::utils::TNodeID>&) {}
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...
GRAPH_T::constraint_t::type_value pose_t
type of underlying poses (2D/3D).
GRAPH_T::constraint_t constraint_t
type of graph constraints
uint64_t TNodeID
The type for node IDs in graphs of different types.
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.
virtual bool updateState(mrpt::obs::CActionCollectionPtr action, mrpt::obs::CSensoryFramePtr observations, mrpt::obs::CObservationPtr observation)=0
Generic method for fetching the incremental action/observation readings from the calling function...
Interface for implementing node/edge registration deciders or optimizer classes.
virtual void registerNewEdge(const mrpt::utils::TNodeID &from, const mrpt::utils::TNodeID &to, const constraint_t &rel_edge)
Register a new constraint/edge in the current graph.
GLsizei const GLchar ** string
virtual ~CEdgeRegistrationDecider()
Default class destructor.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
virtual void checkRegistrationCondition(mrpt::utils::TNodeID from, mrpt::utils::TNodeID to)
virtual void getDescriptiveReport(std::string *report_str) const
Fill the provided string with a detailed report of the decider/optimizer state.
virtual void checkRegistrationCondition(const std::set< mrpt::utils::TNodeID > &)
mrpt::graphslam::CRegistrationDeciderOrOptimizer< GRAPH_T > parent
Handy typedefs.