00001 /* -*- mode: C++ -*- 00002 * 00003 * Copyright (C) 2007, Mickey Ristroph 00004 * 00005 * License: Modified BSD Software License Agreement 00006 * 00007 * $Id: GraphSearch.h 435 2010-08-20 15:24:22Z jack.oquin $ 00008 * 00009 * Graph search algorithms, for use by Commander, or whoever. 00010 */ 00011 00012 #ifndef __GRAPHSEARCH_h__ 00013 #define __GRAPHSEARCH_h__ 00014 00015 #include <art_map/Graph.h> 00016 #include <art_map/types.h> 00017 #include <queue> 00018 #include <vector> 00019 #include <map> 00020 #include <iostream> 00021 00022 namespace GraphSearch { 00023 WayPointEdgeList astar_search(const Graph& graph, 00024 waypt_index_t start_id, 00025 waypt_index_t goal_id, 00026 float speedlimit=1.0); 00027 00028 WayPointNodeList edge_list_to_node_list(const Graph& graph, 00029 WayPointEdgeList& edges); 00030 }; 00031 00032 #endif