#ifndef ROUTING_H_INCLUDED
#define ROUTING_H_INCLUDED

#include "map.h"

/* Relaxes an edge both ways */
/* Returns nonzero if any changes were made; otherwise, returns 0 */
int Relax_Edge(Map_t * Map_Ptr, Edge_t * Edge_Ptr);

/* Does a rather idiotic, but easy to implement, version of Dijkstra's 
   algorithm and prints out the best path.

   Map_Ptr - the map over which to operate
   Path_Edge - the from,to request, defined using the "edge" type
*/
void Dumb_Dijkstra(Map_t * Map_Ptr, Edge_t Path_Edge);

#endif
