10 #ifndef CREGISTRATIONDECIDEROROPTIMIZER_H    11 #define CREGISTRATIONDECIDEROROPTIMIZER_H    43 template <
class GRAPH_T = 
typename mrpt::graphs::CNetworkOfPoses2DInf>
   107                 const std::map<std::string, bool>& events_occurred);
 virtual void notifyOfWindowEvents(const std::map< std::string, bool > &events_occurred)
Get a list of the window events that happened since the last call. 
 
mrpt::gui::CDisplayWindow3D * m_win
Window to use. 
 
virtual void loadParams(const std::string &source_fname)
Load the necessary for the decider/optimizer configuration parameters. 
 
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-observations (or observation-only) measurements...
 
virtual void printParams() const
Print the problem parameters - relevant to the decider/optimizer to the screen in a unified/compact w...
 
std::string getClassName() const
 
static const std::string header_sep
Separator string to be used in debugging messages. 
 
virtual void setCriticalSectionPtr(std::mutex *graph_section)
Fetch a std::mutex for locking the GRAPH_T resource. 
 
mrpt::graphslam::CWindowObserver * m_win_observer
CWindowObserver object for monitoring various visual-oriented events. 
 
bool is_mr_slam_class
Boolean indicating if the current class can be used in multi-robot SLAM operations. 
 
std::string m_class_name
Name of the class instance. 
 
CRegistrationDeciderOrOptimizer()
Ctor 
 
virtual void setGraphPtr(GRAPH_T *graph)
Fetch the graph on which the decider/optimizer will work on. 
 
mrpt::graphslam::CWindowManager * m_win_manager
Pointer to the CWindowManager object used to store visuals-related instances. 
 
virtual void initializeVisuals()
Initialize visual objects in CDisplayWindow (e.g. 
 
static const std::string report_sep
 
Interface for implementing node/edge registration deciders or optimizer classes. 
 
std::shared_ptr< CSensoryFrame > Ptr
 
virtual void getDescriptiveReport(std::string *report_str) const
Fill the provided string with a detailed report of the decider/optimizer state. 
 
virtual void initializeLoggers(const std::string &name)
Initialize the COutputLogger, CTimeLogger instances given the name of the decider/optimizer at hand...
 
std::shared_ptr< CObservation > Ptr
 
virtual void setWindowManagerPtr(mrpt::graphslam::CWindowManager *win_manager)
Fetch a CWindowManager pointer. 
 
GRAPH_T * m_graph
Pointer to the graph that is under construction. 
 
virtual void assertVisualsVars()
Handy function for making all the visuals assertions in a compact manner. 
 
GLsizei const GLchar ** string
 
virtual ~CRegistrationDeciderOrOptimizer()
 
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries. 
 
std::shared_ptr< CActionCollection > Ptr
 
mrpt::utils::CTimeLogger m_time_logger
Time logger instance. 
 
Monitor events in the visualization window. 
 
virtual void updateVisuals()
Update the relevant visual features in CDisplayWindow. 
 
GLuint const GLchar * name
 
A versatile "profiler" that logs the time spent within each pair of calls to enter(X)-leave(X), among other stats. 
 
bool m_initialized_visuals
 
bool isMultiRobotSlamClass()
 
std::mutex * m_graph_section
 
Class acts as a container for storing pointers to mrpt::gui::CDisplayWindow3D, mrpt::graphslam::CWind...
 
virtual void setClassName(const std::string &name)
 
A graphical user interface (GUI) for efficiently rendering 3D scenes in real-time.