10 #ifndef CICPCRITERIANRD_H    11 #define CICPCRITERIANRD_H    42 namespace mrpt { 
namespace graphslam { 
namespace deciders {
   100 template<
class GRAPH_T>
   113                 typedef typename GRAPH_T::constraint_t::type_value 
pose_t;
   117                                                 constraint_t::state_length,
   152                                 mrpt::obs::CActionCollectionPtr action,
   153                                 mrpt::obs::CSensoryFramePtr observations,
   154                                 mrpt::obs::CObservationPtr observation );
   159                 bool updateState2D(mrpt::obs::CObservation2DRangeScanPtr observation);
   164                 bool updateState3D(mrpt::obs::CObservation3DRangeScanPtr observation);
 bool updateState2D(mrpt::obs::CObservation2DRangeScanPtr observation)
Specialized updateState method used solely when dealing with 2DRangeScan information. 
 
int m_times_used_ICP
How many times we used the ICP Edge instead of Odometry edge. 
 
void getDescriptiveReport(std::string *report_str) const
Fill the provided string with a detailed report of the decider/optimizer state. 
 
GRAPH_T::constraint_t::type_value pose_t
type of underlying poses (2D/3D). 
 
mrpt::graphslam::deciders::CRangeScanOps< GRAPH_T > range_ops_t
Typedef for accessing methods of the RangeScanRegistrationDecider parent class. 
 
decider_t & decider
Reference to outer decider class. 
 
bool updateState(mrpt::obs::CActionCollectionPtr action, mrpt::obs::CSensoryFramePtr observations, mrpt::obs::CObservationPtr observation)
Update the decider state using the latest dataset measurements. 
 
Interface for implementing node registration classes. 
 
pose_t m_curr_odometry_only_pose
pose_t estimation using only odometry information. 
 
pose_t m_last_odometry_only_pose
pose_t estimation using only odometry information. 
 
ICP-based Fixed Intervals Node Registration. 
 
GRAPH_T::global_pose_t global_pose_t
 
double registration_max_distance
Maximum distance for new node registration. 
 
This class allows loading and storing values and vectors of different types from a configuration text...
 
CICPCriteriaNRD< GRAPH_T > decider_t
self type - Handy typedef 
 
bool checkRegistrationCondition()
Check whether a new node should be registered in the graph. 
 
void printParams() const
Print the problem parameters - relevant to the decider/optimizer to the screen in a unified/compact w...
 
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
 
GRAPH_T::constraint_t constraint_t
type of graph constraints 
 
A numeric matrix of compile-time fixed size. 
 
mrpt::obs::CObservation3DRangeScanPtr m_curr_laser_scan3D
 
double registration_max_angle
Maximum angle difference for new node registration. 
 
CICPCriteriaNRD()
Class constructor. 
 
bool m_use_distance_node_reg
 
constraint_t m_latest_odometry_PDF
Odometry rigid-body transformation since the last accepted LaserScan. 
 
TSlidingWindow m_mahal_distance_ICP_odom
Keeps track of the last N measurements between the ICP edge and the corresponding odometry measuremen...
 
GLsizei const GLchar ** string
 
bool m_use_angle_difference_node_reg
 
bool updateState3D(mrpt::obs::CObservation3DRangeScanPtr observation)
Specialized updateState method used solely when dealing with 3DRangeScan information. 
 
Class for keeping together all the RangeScanner-related functions. 
 
GRAPH_T::constraint_t::type_value pose_t
type of underlying poses (2D/3D). 
 
bool checkRegistrationCondition2D()
Specialized checkRegistrationCondtion method used solely when dealing with 2DRangeScan information...
 
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries. 
 
mrpt::math::CMatrixFixedNumeric< double, constraint_t::state_length, constraint_t::state_length > InfMat
 
Class to monitor the evolution of a statistical quantity. 
 
~CICPCriteriaNRD()
Class destructor. 
 
void loadParams(const std::string &source_fname)
Load the necessary for the decider/optimizer configuration parameters. 
 
GLsizei GLsizei GLchar * source
 
bool checkRegistrationCondition3D()
Specialized checkRegistrationCondition method used solely when dealing with 3DRangeScan information...
 
mrpt::graphslam::deciders::CNodeRegistrationDecider< GRAPH_T > parent_t
Node Registration Decider. 
 
mrpt::obs::CObservation3DRangeScanPtr m_last_laser_scan3D
 
mrpt::obs::CObservation2DRangeScanPtr m_last_laser_scan2D
handy laser scans to use in the class methods 
 
void dumpToTextStream(mrpt::utils::CStream &out) const
This method should clearly display all the contents of the structure in textual form, sending it to a CStream. 
 
void loadFromConfigFile(const mrpt::utils::CConfigFileBase &source, const std::string §ion)
This method load the options from a ".ini"-like file or memory-stored string list. 
 
GRAPH_T::constraint_t constraint_t
Handy typedefs. 
 
int m_times_used_odom
How many times we used the Odometry Edge instead of the ICP edge. 
 
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
 
mrpt::obs::CObservation2DRangeScanPtr m_curr_laser_scan2D
Current LaserScan.