10 #ifndef TUSEROPTIONSCHECKER_H
11 #define TUSEROPTIONSCHECKER_H
101 template <
class GRAPH_t>
109 using pose_t =
typename GRAPH_t::constraint_t::type_value;
GLuint GLuint GLsizei GLenum type
GLuint const GLchar * name
GLsizei const GLchar ** string
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.
typename GRAPH_t::constraint_t::type_value pose_t
virtual void createDeciderOptimizerMappings()
Create the necessary mappings from strings to the corresponding instance creation functors.
edge_regs_t edge_regs_map
std::map< std::string, mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_t > *(*)()> node_regs_t
virtual void dumpOptimizersToConsole() const
Print the optimizers vector in a formatted manner to the standard output.
typename GRAPH_t::constraint_t constraint_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
std::map< std::string, mrpt::graphslam::deciders::CEdgeRegistrationDecider< GRAPH_t > *(*)()> edge_regs_t
std::map< std::string, mrpt::graphslam::optimizers::CGraphSlamOptimizer< GRAPH_t > *(*)()> optimizers_t
virtual void dumpRegistrarsToConsole(std::string reg_type="all") const
Print the registration deciders vector in a formatted manner to the standard output.
const std::string sep_header