10 #ifndef TUSEROPTIONSCHECKER_H
11 #define TUSEROPTIONSCHECKER_H
32 namespace mrpt {
namespace graphslam {
namespace apps {
41 is_mr_slam_class(false),
105 template<
class GRAPH_t>
112 typedef typename GRAPH_t::constraint_t::type_value
pose_t;
GLuint GLuint GLsizei GLenum type
GLuint const GLchar * name
GLsizei const GLchar ** string
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Properties struct for the Optimizer classes.
Properties struct for both the Registration Decider and Optimizer classes.
TRegistrationDeciderOrOptimizerProps()
std::string name
Name of the decider or optimizer class.
std::string description
General description of the decicder or optimizer class.
~TRegistrationDeciderOrOptimizerProps()
bool is_mr_slam_class
Class indicating if the current decider/optimizer class can be used in a multi-robot SLAM operation.
Properties struct for the Registration Decider classes.
std::vector< std::string > observations_used
Measurements that the current decider class can utilize.
TRegistrationDeciderProps()
~TRegistrationDeciderProps()
std::string rawlog_format
Rawlog formats that the decider can be used in.
std::string type
Type of decider.
Class containing the declarations of supplementary methods that can be used in application-related co...
virtual bool checkOptimizerExists(std::string given_opt) const
Check if the given optimizer exists in the vector of optimizers.
virtual ~TUserOptionsChecker()
Destructor.
virtual void populateDeciderOptimizerProperties()
Populate the available decider, optimizer classes available in user applications.
TUserOptionsChecker()
Constructor.
virtual void createDeciderOptimizerMappings()
Create the necessary mappings from strings to the corresponding instance creation functors.
edge_regs_t edge_regs_map
virtual void dumpOptimizersToConsole() const
Print the optimizers vector in a formatted manner to the standard output.
std::map< std::string, mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_t > *(*)()> node_regs_t
GRAPH_t::constraint_t constraint_t
GRAPH_t::constraint_t::type_value pose_t
optimizers_t optimizers_map
static mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_t > * createNodeRegistrationDecider()
const std::string sep_subheader
static mrpt::graphslam::deciders::CEdgeRegistrationDecider< GRAPH_t > * createEdgeRegistrationDecider()
virtual void _createDeciderOptimizerMappings()
std::vector< TOptimizerProps * > optimizers_descriptions
static mrpt::graphslam::optimizers::CGraphSlamOptimizer< GRAPH_t > * createGraphSlamOptimizer()
std::vector< TRegistrationDeciderProps * > regs_descriptions
virtual bool checkRegistrationDeciderExists(std::string given_reg, std::string reg_type) const
Check if the given registrator decider exists in the vector of deciders.
node_regs_t node_regs_map
virtual void dumpRegistrarsToConsole(std::string reg_type="all") const
Print the registration deciders vector in a formatted manner to the standard output.
std::map< std::string, mrpt::graphslam::optimizers::CGraphSlamOptimizer< GRAPH_t > *(*)()> optimizers_t
std::map< std::string, mrpt::graphslam::deciders::CEdgeRegistrationDecider< GRAPH_t > *(*)()> edge_regs_t
const std::string sep_header