diff --git a/include/core/utils/graph_search.h b/include/core/utils/graph_search.h index 5551dead4ef15a2bd518717a3a6bdc56b8be40d6..cf14ff844d981922848645774799f2b18655e06f 100644 --- a/include/core/utils/graph_search.h +++ b/include/core/utils/graph_search.h @@ -22,10 +22,23 @@ class GraphSearch ~GraphSearch(); - FactorBasePtrList shortestPath(FrameBasePtr frm1, FrameBasePtr frm2, const unsigned int max_graph_dist = 0); + FactorBasePtrList computeShortestPath(FrameBasePtr frm1, + FrameBasePtr frm2, + const unsigned int max_graph_dist = 0); std::set<FrameBasePtr> getNeighborFrames(const std::set<FrameBasePtr>& frms); + + static FactorBasePtrList shortestPath(FrameBasePtr frm1, + FrameBasePtr frm2, + const unsigned int max_graph_dist = 0) + { + GraphSearch graph_search; + + return graph_search.computeShortestPath(frm1, frm2, max_graph_dist); + } + }; + } // namespace wolf #endif diff --git a/src/utils/graph_search.cpp b/src/utils/graph_search.cpp index 9c3684e5110e6526c33bae41db31b9e2ef5771cb..f1959a029f8b17b97612e047a6d3a6926c18ac3b 100644 --- a/src/utils/graph_search.cpp +++ b/src/utils/graph_search.cpp @@ -13,9 +13,9 @@ GraphSearch::~GraphSearch() } -FactorBasePtrList GraphSearch::shortestPath(FrameBasePtr frm1, - FrameBasePtr frm2, - const unsigned int max_graph_dist) +FactorBasePtrList GraphSearch::computeShortestPath(FrameBasePtr frm1, + FrameBasePtr frm2, + const unsigned int max_graph_dist) { std::set<FrameBasePtr> frm_neigs({frm1}); unsigned int depth = 0; @@ -95,3 +95,4 @@ std::set<FrameBasePtr> GraphSearch::getNeighborFrames(const std::set<FrameBasePt return frm_neigs; } +