template class mrpt::graphslam::deciders::CRangeScanEdgeRegistrationDecider

Edge Registration Decider Interface from which RangeScanner-based ERDs can inherit from.

Holds common vars for the underlying classesand provides methods for accessing and modifying them.

Since the decider inherits from the CRangeScanOps class, it parses the configuration parameters of the latter as well from the “ICP” section. Refer to the CRangeScanOps documentation for its list of configuration parameters

#include <mrpt/graphslam/interfaces/CRangeScanEdgeRegistrationDecider.h>

template <class GRAPH_T>
class CRangeScanEdgeRegistrationDecider:
    public mrpt::graphslam::deciders::CEdgeRegistrationDecider,
    public mrpt::graphslam::deciders::CRangeScanOps
{
public:
    // typedefs

    typedef mrpt::graphslam::deciders::CEdgeRegistrationDecider<GRAPH_T> parent_t;
    typedef mrpt::graphslam::deciders::CRangeScanOps<GRAPH_T> range_ops_t;
    typedef std::map<mrpt::graphs::TNodeID, mrpt::obs::CObservation2DRangeScan::Ptr> nodes_to_scans2D_t;

    // construction

    CRangeScanEdgeRegistrationDecider();
};

// direct descendants

template <class GRAPH_T = typename mrpt::graphs::CNetworkOfPoses2DInf>
class CICPCriteriaERD;

Inherited Members

public:
    // typedefs

    typedef mrpt::graphslam::CRegistrationDeciderOrOptimizer<GRAPH_T> parent;
    typedef typename GRAPH_T::constraint_t constraint_t;
    typedef typename GRAPH_T::constraint_t::type_value pose_t;

    // structs

    struct TMsg;
    struct TParams;

    //
methods

    virtual void setClassName(const std::string& name);
    bool isMultiRobotSlamClass();
    std::string getClassName() const;
    virtual void getEdgesStats(std::map<std::string, int>* edge_type_to_num) const;
    virtual bool justInsertedLoopClosure() const;
    virtual void getDescriptiveReport(std::string* report_str) const;
    virtual bool updateState(mrpt::obs::CActionCollection::Ptr action, mrpt::obs::CSensoryFrame::Ptr observations, mrpt::obs::CObservation::Ptr observation) = 0;
    virtual void setWindowManagerPtr(mrpt::graphslam::CWindowManager* win_manager);
    virtual void setCriticalSectionPtr(std::mutex* graph_section);
    virtual void initializeVisuals();
    virtual void updateVisuals();
    virtual void notifyOfWindowEvents(const std::map<std::string, bool>& events_occurred);
    virtual void loadParams(const std::string& source_fname);
    virtual void printParams() const;
    virtual void setGraphPtr(GRAPH_T* graph);
    virtual void initializeLoggers(const std::string& name);

Typedefs

typedef mrpt::graphslam::deciders::CRangeScanOps<GRAPH_T> range_ops_t

Typedef for accessing methods of the RangeScanRegistrationDecider_t parent class.