Main MRPT website > C++ reference for MRPT 1.5.6
List of all members | Public Member Functions | Public Attributes
mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t > Struct Template Reference

Detailed Description

template<class GRAPH_t>
struct mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >

Class containing the declarations of supplementary methods that can be used in application-related code.

Class instance can be handy for adding keeping the available deciders/optimizers in a compact manner and for verifying whether a given decider can be used.

Definition at line 106 of file TUserOptionsChecker.h.

#include <mrpt/graphslam/apps_related/TUserOptionsChecker.h>

Inheritance diagram for mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >:
Inheritance graph

Public Types

handy typedefs for the creation of deciders/optimzer instances from

the corresponding strings

typedef GRAPH_t::constraint_t constraint_t
 
typedef GRAPH_t::constraint_t::type_value pose_t
 
typedef std::map< std::string, mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_t > *(*)()> node_regs_t
 
typedef std::map< std::string, mrpt::graphslam::deciders::CEdgeRegistrationDecider< GRAPH_t > *(*)()> edge_regs_t
 
typedef std::map< std::string, mrpt::graphslam::optimizers::CGraphSlamOptimizer< GRAPH_t > *(*)()> optimizers_t
 

Public Member Functions

 TUserOptionsChecker ()
 Constructor. More...
 
virtual ~TUserOptionsChecker ()
 Destructor. More...
 
virtual void createDeciderOptimizerMappings ()
 Create the necessary mappings from strings to the corresponding instance creation functors. More...
 
virtual void _createDeciderOptimizerMappings ()
 
virtual void populateDeciderOptimizerProperties ()
 Populate the available decider, optimizer classes available in user applications. More...
 
virtual bool checkRegistrationDeciderExists (std::string given_reg, std::string reg_type) const
 Check if the given registrator decider exists in the vector of deciders. More...
 
virtual bool checkOptimizerExists (std::string given_opt) const
 Check if the given optimizer exists in the vector of optimizers. More...
 
virtual void dumpRegistrarsToConsole (std::string reg_type="all") const
 Print the registration deciders vector in a formatted manner to the standard output. More...
 
virtual void dumpOptimizersToConsole () const
 Print the optimizers vector in a formatted manner to the standard output. More...
 
template<>
void _createDeciderOptimizerMappings ()
 
template<>
void _createDeciderOptimizerMappings ()
 
template<>
void _createDeciderOptimizerMappings ()
 

Static Public Member Functions

Methods for initializing decider/optimizer instances based on the user

command line choices - http://stackoverflow.com/a/582456/2843583

Warning
Caller is responsible for deleting the initialized instances
template<class T >
static mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_t > * createNodeRegistrationDecider ()
 
template<class T >
static mrpt::graphslam::deciders::CEdgeRegistrationDecider< GRAPH_t > * createEdgeRegistrationDecider ()
 
template<class T >
static mrpt::graphslam::optimizers::CGraphSlamOptimizer< GRAPH_t > * createGraphSlamOptimizer ()
 

Public Attributes

const std::string sep_header
 
const std::string sep_subheader
 
Mappings from registration decider/optimizer names to functors

}

for creating instances of the corresponding classes

node_regs_t node_regs_map
 
edge_regs_t edge_regs_map
 
optimizers_t optimizers_map
 
Vectors containing descriptions about the available

deciders/optimizers.

Handy for displaying information to the user (e.g. in help text)

std::vector< TRegistrationDeciderProps * > regs_descriptions
 
std::vector< TOptimizerProps * > optimizers_descriptions
 

Member Typedef Documentation

◆ constraint_t

template<class GRAPH_t>
typedef GRAPH_t::constraint_t mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::constraint_t

Definition at line 111 of file TUserOptionsChecker.h.

◆ edge_regs_t

Definition at line 118 of file TUserOptionsChecker.h.

◆ node_regs_t

Definition at line 115 of file TUserOptionsChecker.h.

◆ optimizers_t

template<class GRAPH_t>
typedef std::map< std::string, mrpt::graphslam::optimizers::CGraphSlamOptimizer<GRAPH_t>*(*)()> mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::optimizers_t

Definition at line 121 of file TUserOptionsChecker.h.

◆ pose_t

template<class GRAPH_t>
typedef GRAPH_t::constraint_t::type_value mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::pose_t

Definition at line 112 of file TUserOptionsChecker.h.

Constructor & Destructor Documentation

◆ TUserOptionsChecker()

template<class GRAPH_t >
mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::TUserOptionsChecker ( )

Constructor.

Definition at line 14 of file TUserOptionsChecker_impl.h.

◆ ~TUserOptionsChecker()

template<class GRAPH_t >
mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::~TUserOptionsChecker ( )
virtual

Destructor.

Definition at line 20 of file TUserOptionsChecker_impl.h.

Member Function Documentation

◆ _createDeciderOptimizerMappings() [1/4]

template<>
void mrpt::graphslam::apps::TUserOptionsChecker< mrpt::graphs::CNetworkOfPoses2DInf >::_createDeciderOptimizerMappings ( )
inline

Definition at line 76 of file TUserOptionsChecker_impl.h.

◆ _createDeciderOptimizerMappings() [2/4]

template<>
void mrpt::graphslam::apps::TUserOptionsChecker< mrpt::graphs::CNetworkOfPoses2DInf_NA >::_createDeciderOptimizerMappings ( )
inline

Definition at line 88 of file TUserOptionsChecker_impl.h.

◆ _createDeciderOptimizerMappings() [3/4]

template<>
void mrpt::graphslam::apps::TUserOptionsChecker< mrpt::graphs::CNetworkOfPoses3DInf >::_createDeciderOptimizerMappings ( )
inline

Definition at line 101 of file TUserOptionsChecker_impl.h.

◆ _createDeciderOptimizerMappings() [4/4]

template<class GRAPH_t >
void mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::_createDeciderOptimizerMappings ( )
virtual

Definition at line 71 of file TUserOptionsChecker_impl.h.

◆ checkOptimizerExists()

template<class GRAPH_t >
bool mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::checkOptimizerExists ( std::string  given_opt) const
virtual

Check if the given optimizer exists in the vector of optimizers.

Returns
True if it exists, false otherwise

Definition at line 230 of file TUserOptionsChecker_impl.h.

Referenced by CGraphSlamHandler< GRAPH_T >::initEngine().

◆ checkRegistrationDeciderExists()

template<class GRAPH_t >
bool mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::checkRegistrationDeciderExists ( std::string  given_reg,
std::string  reg_type 
) const
virtual

Check if the given registrator decider exists in the vector of deciders.

Parameters
[in]given_regString specifying the type of decider - This should either be "node" or "edge"
Returns
True if it exists, false otherwise

Definition at line 189 of file TUserOptionsChecker_impl.h.

Referenced by CGraphSlamHandler< GRAPH_T >::initEngine().

◆ createDeciderOptimizerMappings()

template<class GRAPH_t >
void mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::createDeciderOptimizerMappings ( )
virtual

Create the necessary mappings from strings to the corresponding instance creation functors.

Method is used for populating a map from string to instance creation function. The decider/optimzer can then be spawned according to the user selection.

Definition at line 41 of file TUserOptionsChecker_impl.h.

◆ createEdgeRegistrationDecider()

template<class GRAPH_t>
template<class T >
static mrpt::graphslam::deciders::CEdgeRegistrationDecider<GRAPH_t>* mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::createEdgeRegistrationDecider ( )
inlinestatic

Definition at line 187 of file TUserOptionsChecker.h.

◆ createGraphSlamOptimizer()

template<class GRAPH_t>
template<class T >
static mrpt::graphslam::optimizers::CGraphSlamOptimizer<GRAPH_t>* mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::createGraphSlamOptimizer ( )
inlinestatic

Definition at line 192 of file TUserOptionsChecker.h.

◆ createNodeRegistrationDecider()

template<class GRAPH_t>
template<class T >
static mrpt::graphslam::deciders::CNodeRegistrationDecider<GRAPH_t>* mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::createNodeRegistrationDecider ( )
inlinestatic

Definition at line 182 of file TUserOptionsChecker.h.

◆ dumpOptimizersToConsole()

template<class GRAPH_t >
void mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::dumpOptimizersToConsole ( ) const
virtual

Print the optimizers vector in a formatted manner to the standard output.

Definition at line 160 of file TUserOptionsChecker_impl.h.

◆ dumpRegistrarsToConsole()

template<class GRAPH_t >
void mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::dumpRegistrarsToConsole ( std::string  reg_type = "all") const
virtual

Print the registration deciders vector in a formatted manner to the standard output.

Parameters
[in]reg_typeMethod prints both the node registration and edge registration deciders of the given vector unless specified otherwise. The available argument options are "node", "edge", "all"

Definition at line 106 of file TUserOptionsChecker_impl.h.

◆ populateDeciderOptimizerProperties()

template<class GRAPH_t >
void mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::populateDeciderOptimizerProperties ( )
virtual

Populate the available decider, optimizer classes available in user applications.

Definition at line 261 of file TUserOptionsChecker_impl.h.

Member Data Documentation

◆ edge_regs_map

template<class GRAPH_t>
edge_regs_t mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::edge_regs_map

Definition at line 202 of file TUserOptionsChecker.h.

Referenced by CGraphSlamHandler< GRAPH_T >::initEngine().

◆ node_regs_map

template<class GRAPH_t>
node_regs_t mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::node_regs_map

Definition at line 201 of file TUserOptionsChecker.h.

Referenced by CGraphSlamHandler< GRAPH_T >::initEngine().

◆ optimizers_descriptions

template<class GRAPH_t>
std::vector<TOptimizerProps*> mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::optimizers_descriptions

Definition at line 213 of file TUserOptionsChecker.h.

◆ optimizers_map

template<class GRAPH_t>
optimizers_t mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::optimizers_map

Definition at line 203 of file TUserOptionsChecker.h.

Referenced by CGraphSlamHandler< GRAPH_T >::initEngine().

◆ regs_descriptions

template<class GRAPH_t>
std::vector<TRegistrationDeciderProps*> mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::regs_descriptions

Definition at line 212 of file TUserOptionsChecker.h.

◆ sep_header

template<class GRAPH_t>
const std::string mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::sep_header

Definition at line 216 of file TUserOptionsChecker.h.

◆ sep_subheader

template<class GRAPH_t>
const std::string mrpt::graphslam::apps::TUserOptionsChecker< GRAPH_t >::sep_subheader

Definition at line 217 of file TUserOptionsChecker.h.




Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019