00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef OR_TOOLS_GRAPH_SHORTESTPATHS_H_
00019 #define OR_TOOLS_GRAPH_SHORTESTPATHS_H_
00020
00021 #include <string>
00022 #include <vector>
00023
00024 #include "base/callback.h"
00025 #include "base/integral_types.h"
00026 #include "base/macros.h"
00027 #include "base/scoped_ptr.h"
00028
00029 namespace operations_research {
00030
00031
00032
00033
00034
00035
00036
00037 bool DijkstraShortestPath(int node_count,
00038 int start_node,
00039 int end_node,
00040 ResultCallback2<int64, int, int>* const graph,
00041 int64 disconnected_distance,
00042 std::vector<int>* nodes);
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052 bool BellmanFordShortestPath(int node_count,
00053 int start_node,
00054 int end_node,
00055 ResultCallback2<int64, int, int>* const graph,
00056 int64 disconnected_distance,
00057 std::vector<int>* nodes);
00058 }
00059
00060 #endif // OR_TOOLS_GRAPH_SHORTESTPATHS_H_