MRPT
2.0.4
|
Holds the data of an information path.
Path comprises of nodes (TNodeID type) and constraints between them. Only consecutive nodes are connected by edges, thus path.
Definition at line 28 of file TUncertaintyPath.h.
#include <mrpt/graphslam/misc/TUncertaintyPath.h>
Public Types | |
using | constraint_t = typename GRAPH_T::constraint_t |
using | pose_t = typename constraint_t::type_value |
using | self_t = TUncertaintyPath< GRAPH_T > |
Public Member Functions | |
TUncertaintyPath () | |
TUncertaintyPath (const mrpt::graphs::TNodeID &starting_node) | |
TUncertaintyPath (const mrpt::graphs::TNodeID &starting_node, const mrpt::graphs::TNodeID &ending_node, const constraint_t &edge) | |
~TUncertaintyPath () override=default | |
void | clear () |
bool | isEmpty () const |
void | assertIsBetweenNodeIDs (const mrpt::graphs::TNodeID &from, const mrpt::graphs::TNodeID &to) const |
Assert that the current path is between the given nodeIDs. More... | |
void | loadFromConfigFile (const mrpt::config::CConfigFileBase &source, const std::string §ion) override |
This method load the options from a ".ini"-like file or memory-stored string list. More... | |
void | dumpToTextStream (std::ostream &out) const override |
This method should clearly display all the contents of the structure in textual form, sending it to a std::ostream. More... | |
std::string | getAsString () const |
void | getAsString (std::string *str) const |
const mrpt::graphs::TNodeID & | getSource () const |
Return the source node of this path. More... | |
const mrpt::graphs::TNodeID & | getDestination () const |
Return the Destination node of this path. More... | |
double | getDeterminant () |
bool | hasLowerUncertaintyThan (const self_t &other) const |
Test if the current path has a lower uncertainty than the other path. More... | |
void | addToPath (const mrpt::graphs::TNodeID &node, const constraint_t &edge) |
add a new link in the current path. More... | |
self_t & | operator+= (const self_t &other) |
bool | operator== (const self_t &other) const |
bool | operator!= (const self_t &other) const |
void | loadFromConfigFileName (const std::string &config_file, const std::string §ion) |
Behaves like loadFromConfigFile, but you can pass directly a file name and a temporary CConfigFile object will be created automatically to load the file. More... | |
virtual void | saveToConfigFile (mrpt::config::CConfigFileBase &target, const std::string §ion) const |
This method saves the options to a ".ini"-like file or memory-stored string list. More... | |
void | saveToConfigFileName (const std::string &config_file, const std::string §ion) const |
Behaves like saveToConfigFile, but you can pass directly a file name and a temporary CConfigFile object will be created automatically to save the file. More... | |
void | dumpToConsole () const |
Just like dumpToTextStream() but sending the text to the console (std::cout) More... | |
Public Attributes | |
std::vector< mrpt::graphs::TNodeID > | nodes_traversed |
Nodes that the Path comprises of. More... | |
constraint_t | curr_pose_pdf |
Current path position + corresponding covariance. More... | |
bool | determinant_is_updated |
Determine whether the determinant of the Path is up-to-date and can be directly fetched or has to be computed again. More... | |
double | determinant_cached |
Static Protected Member Functions | |
static void | dumpVar_int (std::ostream &out, const char *varName, int v) |
Used to print variable info from dumpToTextStream with the macro LOADABLEOPTS_DUMP_VAR. More... | |
static void | dumpVar_float (std::ostream &out, const char *varName, float v) |
static void | dumpVar_double (std::ostream &out, const char *varName, double v) |
static void | dumpVar_bool (std::ostream &out, const char *varName, bool v) |
static void | dumpVar_string (std::ostream &out, const char *varName, const std::string &v) |
Friends | |
std::ostream & | operator<< (std::ostream &o, const self_t &obj) |
using mrpt::graphslam::TUncertaintyPath< GRAPH_T >::constraint_t = typename GRAPH_T::constraint_t |
Definition at line 30 of file TUncertaintyPath.h.
using mrpt::graphslam::TUncertaintyPath< GRAPH_T >::pose_t = typename constraint_t::type_value |
Definition at line 31 of file TUncertaintyPath.h.
using mrpt::graphslam::TUncertaintyPath< GRAPH_T >::self_t = TUncertaintyPath<GRAPH_T> |
Definition at line 32 of file TUncertaintyPath.h.
mrpt::graphslam::TUncertaintyPath< GRAPH_T >::TUncertaintyPath | ( | ) |
Definition at line 19 of file TUncertaintyPath_impl.h.
References mrpt::containers::clear().
mrpt::graphslam::TUncertaintyPath< GRAPH_T >::TUncertaintyPath | ( | const mrpt::graphs::TNodeID & | starting_node | ) |
Definition at line 24 of file TUncertaintyPath_impl.h.
References mrpt::containers::clear().
mrpt::graphslam::TUncertaintyPath< GRAPH_T >::TUncertaintyPath | ( | const mrpt::graphs::TNodeID & | starting_node, |
const mrpt::graphs::TNodeID & | ending_node, | ||
const constraint_t & | edge | ||
) |
Definition at line 31 of file TUncertaintyPath_impl.h.
References mrpt::containers::clear().
|
overridedefault |
void mrpt::graphslam::TUncertaintyPath< GRAPH_T >::addToPath | ( | const mrpt::graphs::TNodeID & | node, |
const constraint_t & | edge | ||
) |
add a new link in the current path.
Add the node that the path traverses and the information matrix of the extra link
Definition at line 155 of file TUncertaintyPath_impl.h.
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::getMinUncertaintyPath().
void mrpt::graphslam::TUncertaintyPath< GRAPH_T >::assertIsBetweenNodeIDs | ( | const mrpt::graphs::TNodeID & | from, |
const mrpt::graphs::TNodeID & | to | ||
) | const |
Assert that the current path is between the given nodeIDs.
Call to this method practically checks if the give nodes match the source and destination nodeIDs.
std::runtime_error | in case the conditions don't hold |
Definition at line 72 of file TUncertaintyPath_impl.h.
References ASSERTDEBMSG_, and mrpt::format().
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::generatePWConsistencyElement().
void mrpt::graphslam::TUncertaintyPath< GRAPH_T >::clear | ( | ) |
Definition at line 41 of file TUncertaintyPath_impl.h.
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::getMinUncertaintyPath().
|
inherited |
Just like dumpToTextStream() but sending the text to the console (std::cout)
Definition at line 43 of file CLoadableOptions.cpp.
References mrpt::config::CLoadableOptions::dumpToTextStream().
Referenced by mrpt::hmtslam::CTopLCDetector_GridMatching::computeTopologicalObservationModel(), mrpt::ros1bridge::MapHdl::loadMap(), mrpt::graphslam::deciders::CICPCriteriaNRD< GRAPH_T >::printParams(), and mrpt::apps::CGridMapAlignerApp::run().
|
overridevirtual |
This method should clearly display all the contents of the structure in textual form, sending it to a std::ostream.
The default implementation in this base class relies on saveToConfigFile() to generate a plain text representation of all the parameters.
Reimplemented from mrpt::config::CLoadableOptions.
Definition at line 174 of file TUncertaintyPath_impl.h.
References mrpt::format(), and out.
|
staticprotectedinherited |
Definition at line 62 of file CLoadableOptions.cpp.
References mrpt::format(), LOADABLEOPTS_COLUMN_WIDTH, and out.
|
staticprotectedinherited |
Definition at line 56 of file CLoadableOptions.cpp.
References mrpt::format(), LOADABLEOPTS_COLUMN_WIDTH, and out.
|
staticprotectedinherited |
Definition at line 50 of file CLoadableOptions.cpp.
References mrpt::format(), LOADABLEOPTS_COLUMN_WIDTH, and out.
|
staticprotectedinherited |
Used to print variable info from dumpToTextStream with the macro LOADABLEOPTS_DUMP_VAR.
Definition at line 44 of file CLoadableOptions.cpp.
References mrpt::format(), LOADABLEOPTS_COLUMN_WIDTH, and out.
|
staticprotectedinherited |
Definition at line 69 of file CLoadableOptions.cpp.
References mrpt::format(), LOADABLEOPTS_COLUMN_WIDTH, and out.
std::string mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getAsString | ( | ) | const |
Definition at line 217 of file TUncertaintyPath_impl.h.
void mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getAsString | ( | std::string * | str | ) | const |
Definition at line 180 of file TUncertaintyPath_impl.h.
References mrpt::math::MatrixBase< Scalar, Derived >::det(), and mrpt::containers::getSTLContainerAsString().
const mrpt::graphs::TNodeID & mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getDestination | ( | ) | const |
Return the Destination node of this path.
Definition at line 230 of file TUncertaintyPath_impl.h.
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::addToPaths(), and mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::execDijkstraProjection().
double mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getDeterminant | ( | ) |
Definition at line 236 of file TUncertaintyPath_impl.h.
References mrpt::math::MatrixBase< Scalar, Derived >::det().
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::getMinUncertaintyPath(), mrpt::graphslam::TUncertaintyPath< GRAPH_T >::hasLowerUncertaintyThan(), and mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::popMinUncertaintyPath().
const mrpt::graphs::TNodeID & mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getSource | ( | ) | const |
Return the source node of this path.
Definition at line 225 of file TUncertaintyPath_impl.h.
bool mrpt::graphslam::TUncertaintyPath< GRAPH_T >::hasLowerUncertaintyThan | ( | const self_t & | other | ) | const |
Test if the current path has a lower uncertainty than the other path.
Definition at line 265 of file TUncertaintyPath_impl.h.
References ASSERTDEBMSG_, mrpt::graphslam::TUncertaintyPath< GRAPH_T >::curr_pose_pdf, mrpt::format(), and mrpt::graphslam::TUncertaintyPath< GRAPH_T >::getDeterminant().
bool mrpt::graphslam::TUncertaintyPath< GRAPH_T >::isEmpty | ( | ) | const |
Definition at line 66 of file TUncertaintyPath_impl.h.
|
overridevirtual |
This method load the options from a ".ini"-like file or memory-stored string list.
Only those parameters found in the given "section" and having the same name that the variable are loaded. Those not found in the file will stay with their previous values (usually the default values loaded at initialization). An example of an ".ini" file:
Implements mrpt::config::CLoadableOptions.
Definition at line 168 of file TUncertaintyPath_impl.h.
|
inherited |
Behaves like loadFromConfigFile, but you can pass directly a file name and a temporary CConfigFile object will be created automatically to load the file.
Definition at line 22 of file CLoadableOptions.cpp.
References mrpt::config::CLoadableOptions::loadFromConfigFile().
Referenced by mrpt::graphslam::deciders::CICPCriteriaNRD< GRAPH_T >::loadParams().
bool mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator!= | ( | const self_t & | other | ) | const |
Definition at line 149 of file TUncertaintyPath_impl.h.
TUncertaintyPath< GRAPH_T > & mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator+= | ( | const self_t & | other | ) |
Definition at line 88 of file TUncertaintyPath_impl.h.
References ASSERTDEBMSG_, mrpt::graphslam::TUncertaintyPath< GRAPH_T >::curr_pose_pdf, and mrpt::graphslam::TUncertaintyPath< GRAPH_T >::nodes_traversed.
bool mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator== | ( | const self_t & | other | ) | const |
Definition at line 135 of file TUncertaintyPath_impl.h.
References mrpt::graphslam::TUncertaintyPath< GRAPH_T >::curr_pose_pdf, and mrpt::graphslam::TUncertaintyPath< GRAPH_T >::nodes_traversed.
|
virtualinherited |
This method saves the options to a ".ini"-like file or memory-stored string list.
Reimplemented in mrpt::vision::TMultiResDescOptions, mrpt::nav::CPTG_RobotShape_Circular, mrpt::vision::TMultiResDescMatchOptions, mrpt::nav::CPTG_RobotShape_Polygonal, mrpt::nav::CParameterizedTrajectoryGenerator, mrpt::maps::TSetOfMetricMapInitializers, mrpt::maps::COccupancyGridMap3D::TLikelihoodOptions, mrpt::nav::CAbstractNavigator::TAbstractNavigatorParams, mrpt::nav::CAbstractPTGBasedReactive::TAbstractPTGNavigatorParams, mrpt::maps::COccupancyGridMap3D::TInsertionOptions, mrpt::nav::CPTG_DiffDrive_CollisionGridBased, mrpt::nav::CWaypointsNavigator::TWaypointsNavigatorParams, mrpt::nav::CHolonomicFullEval::TOptions, mrpt::bayes::CParticleFilter::TParticleFilterOptions, mrpt::nav::CHolonomicND::TOptions, mrpt::nav::CReactiveNavigationSystem::TReactiveNavigatorParams, mrpt::maps::TMapGenericParams, mrpt::nav::CMultiObjectiveMotionOptimizerBase::TParamsBase, mrpt::nav::CHolonomicVFF::TOptions, mrpt::slam::CICP::TConfigParams, mrpt::slam::CIncrementalMapPartitioner::TOptions, mrpt::maps::CPointCloudFilterByDistance::TOptions, mrpt::nav::CPTG_DiffDrive_C, mrpt::maps::TMetricMapInitializer, mrpt::nav::CPTG_DiffDrive_alpha, mrpt::nav::CMultiObjMotionOpt_Scalarization::TParams, mrpt::nav::CPTG_DiffDrive_CC, mrpt::nav::CPTG_DiffDrive_CCS, mrpt::nav::CPTG_DiffDrive_CS, and mrpt::nav::CPTG_Holo_Blend.
Definition at line 29 of file CLoadableOptions.cpp.
Referenced by mrpt::config::CLoadableOptions::dumpToTextStream(), and mrpt::config::CLoadableOptions::saveToConfigFileName().
|
inherited |
Behaves like saveToConfigFile, but you can pass directly a file name and a temporary CConfigFile object will be created automatically to save the file.
Definition at line 36 of file CLoadableOptions.cpp.
References mrpt::config::CLoadableOptions::saveToConfigFile().
|
friend |
Definition at line 85 of file TUncertaintyPath.h.
constraint_t mrpt::graphslam::TUncertaintyPath< GRAPH_T >::curr_pose_pdf |
Current path position + corresponding covariance.
Definition at line 97 of file TUncertaintyPath.h.
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::generatePWConsistencyElement(), mrpt::graphslam::TUncertaintyPath< GRAPH_T >::hasLowerUncertaintyThan(), mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator+=(), mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator==(), and mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::updateCurrCovarianceVisualization().
double mrpt::graphslam::TUncertaintyPath< GRAPH_T >::determinant_cached |
Definition at line 103 of file TUncertaintyPath.h.
bool mrpt::graphslam::TUncertaintyPath< GRAPH_T >::determinant_is_updated |
Determine whether the determinant of the Path is up-to-date and can be directly fetched or has to be computed again.
Definition at line 102 of file TUncertaintyPath.h.
std::vector<mrpt::graphs::TNodeID> mrpt::graphslam::TUncertaintyPath< GRAPH_T >::nodes_traversed |
Nodes that the Path comprises of.
Nodes in the path are added to the end of the vector.
Definition at line 95 of file TUncertaintyPath.h.
Referenced by mrpt::graphslam::deciders::CLoopCloserERD< GRAPH_T >::addToPaths(), mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator+=(), and mrpt::graphslam::TUncertaintyPath< GRAPH_T >::operator==().
Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 33de1d0ad Sat Jun 20 11:02:42 2020 +0200 at sáb jun 20 17:35:17 CEST 2020 |