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.