diff options
Diffstat (limited to 'route_8c.html')
-rw-r--r-- | route_8c.html | 1272 |
1 files changed, 1272 insertions, 0 deletions
diff --git a/route_8c.html b/route_8c.html new file mode 100644 index 000000000..089a37353 --- /dev/null +++ b/route_8c.html @@ -0,0 +1,1272 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.8.6"/> +<title>navit: route.c File Reference</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<script type="text/javascript"> + $(document).ready(initResizable); + $(window).load(resizeHeight); +</script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td style="padding-left: 0.5em;"> + <div id="projectname">navit +  <span id="projectnumber">0.5.1-trunk</span> + </div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.6 --> + <div id="navrow1" class="tabs"> + <ul class="tablist"> + <li><a href="index.html"><span>Main Page</span></a></li> + <li><a href="pages.html"><span>Related Pages</span></a></li> + <li><a href="modules.html"><span>Modules</span></a></li> + <li><a href="namespaces.html"><span>Namespaces</span></a></li> + <li><a href="annotated.html"><span>Data Structures</span></a></li> + <li class="current"><a href="files.html"><span>Files</span></a></li> + </ul> + </div> + <div id="navrow2" class="tabs2"> + <ul class="tablist"> + <li><a href="files.html"><span>File List</span></a></li> + <li><a href="globals.html"><span>Globals</span></a></li> + </ul> + </div> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +$(document).ready(function(){initNavTree('route_8c.html','');}); +</script> +<div id="doc-content"> +<div class="header"> + <div class="summary"> +<a href="#nested-classes">Data Structures</a> | +<a href="#define-members">Macros</a> | +<a href="#func-members">Functions</a> | +<a href="#var-members">Variables</a> </div> + <div class="headertitle"> +<div class="title">route.c File Reference</div> </div> +</div><!--header--> +<div class="contents"> + +<p>Contains code related to finding a route from a position to a destination. +<a href="#details">More...</a></p> +<div class="textblock"><code>#include <stdio.h></code><br/> +<code>#include <stdlib.h></code><br/> +<code>#include <string.h></code><br/> +<code>#include <math.h></code><br/> +<code>#include "navit_nls.h"</code><br/> +<code>#include "glib_slice.h"</code><br/> +<code>#include "config.h"</code><br/> +<code>#include "point.h"</code><br/> +<code>#include "<a class="el" href="graphics_8h_source.html">graphics.h</a>"</code><br/> +<code>#include "profile.h"</code><br/> +<code>#include "coord.h"</code><br/> +<code>#include "projection.h"</code><br/> +<code>#include "item.h"</code><br/> +<code>#include "xmlconfig.h"</code><br/> +<code>#include "<a class="el" href="map_8h_source.html">map.h</a>"</code><br/> +<code>#include "mapset.h"</code><br/> +<code>#include "<a class="el" href="route_8h_source.html">route.h</a>"</code><br/> +<code>#include "track.h"</code><br/> +<code>#include "transform.h"</code><br/> +<code>#include "plugin.h"</code><br/> +<code>#include "fib.h"</code><br/> +<code>#include "event.h"</code><br/> +<code>#include "callback.h"</code><br/> +<code>#include "vehicle.h"</code><br/> +<code>#include "vehicleprofile.h"</code><br/> +<code>#include "roadprofile.h"</code><br/> +<code>#include "debug.h"</code><br/> +</div><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> +Data Structures</h2></td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structmap__priv.html">map_priv</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Represents the map from a single binfile. <a href="structmap__priv.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__graph__point.html">route_graph_point</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A point in the route graph. <a href="structroute__graph__point.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__segment__data.html">route_segment_data</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A segment in the route graph or path. <a href="structroute__segment__data.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structsize__weight__limit.html">size_weight_limit</a></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__graph__segment__data.html">route_graph_segment_data</a></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__graph__segment.html">route_graph_segment</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A segment in the route graph. <a href="structroute__graph__segment.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__traffic__distortion.html">route_traffic_distortion</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A traffic distortion. <a href="structroute__traffic__distortion.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__path__segment.html">route_path_segment</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A segment in the route path. <a href="structroute__path__segment.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__info.html">route_info</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Usually represents a destination or position. <a href="structroute__info.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__path.html">route_path</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A complete route path. <a href="structroute__path.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute.html">route</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A complete route. <a href="structroute.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__graph.html">route_graph</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A complete route graph. <a href="structroute__graph.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structroute__graph__point__iterator.html">route_graph_point_iterator</a></td></tr> +<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Iterator to iterate through all route graph segments in a route graph point. <a href="structroute__graph__point__iterator.html#details">More...</a><br/></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structattr__iter.html">attr_iter</a></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structmap__rect__priv.html">map_rect_priv</a></td></tr> +<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> +Macros</h2></td></tr> +<tr class="memitem:a155f7919b34af0a15191d0fac83bd7ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a155f7919b34af0a15191d0fac83bd7ef"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RP_TRAFFIC_DISTORTION</b>   1</td></tr> +<tr class="separator:a155f7919b34af0a15191d0fac83bd7ef"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa438cdb1fc7b3387237d2b26bb8018f9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa438cdb1fc7b3387237d2b26bb8018f9"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RP_TURN_RESTRICTION</b>   2</td></tr> +<tr class="separator:aa438cdb1fc7b3387237d2b26bb8018f9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ad25243fa153d0c1b79a8c95808e158fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad25243fa153d0c1b79a8c95808e158fb"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RP_TURN_RESTRICTION_RESOLVED</b>   4</td></tr> +<tr class="separator:ad25243fa153d0c1b79a8c95808e158fb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a6e4294db3fbb31870103d69bffec7205"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e4294db3fbb31870103d69bffec7205"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RSD_OFFSET</b>(x)   *((int *)route_segment_data_field_pos((x), attr_offset))</td></tr> +<tr class="separator:a6e4294db3fbb31870103d69bffec7205"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ae3ec9a2172bb385ab6deda0260d01f0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3ec9a2172bb385ab6deda0260d01f0c"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RSD_MAXSPEED</b>(x)   *((int *)route_segment_data_field_pos((x), attr_maxspeed))</td></tr> +<tr class="separator:ae3ec9a2172bb385ab6deda0260d01f0c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a043664048192f29757f5995cbf1a202a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a043664048192f29757f5995cbf1a202a"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RSD_SIZE_WEIGHT</b>(x)   *((struct <a class="el" href="structsize__weight__limit.html">size_weight_limit</a> *)route_segment_data_field_pos((x), attr_vehicle_width))</td></tr> +<tr class="separator:a043664048192f29757f5995cbf1a202a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:abc4091925e9044d94a577da7eeaa30b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc4091925e9044d94a577da7eeaa30b6"></a> +#define </td><td class="memItemRight" valign="bottom"><b>RSD_DANGEROUS_GOODS</b>(x)   *((int *)route_segment_data_field_pos((x), attr_vehicle_dangerous_goods))</td></tr> +<tr class="separator:abc4091925e9044d94a577da7eeaa30b6"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> +Functions</h2></td></tr> +<tr class="memitem:a30b8690c16c2a115ab848cb00617f265"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30b8690c16c2a115ab848cb00617f265"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_get_distances</b> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structcoord.html">coord</a> *c, int count, int *<a class="el" href="navigation_8c.html#aa9541e5fa2bd1f5f4e6b605c9a87b16e">distances</a>)</td></tr> +<tr class="separator:a30b8690c16c2a115ab848cb00617f265"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a15fb35208d5234b2f334d31f930b3c4c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structroute.html">route</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a15fb35208d5234b2f334d31f930b3c4c">route_new</a> (struct <a class="el" href="structattr.html">attr</a> *<a class="el" href="structparent.html">parent</a>, struct <a class="el" href="structattr.html">attr</a> **attrs)</td></tr> +<tr class="memdesc:a15fb35208d5234b2f334d31f930b3c4c"><td class="mdescLeft"> </td><td class="mdescRight">Creates a completely new route structure. <a href="#a15fb35208d5234b2f334d31f930b3c4c">More...</a><br/></td></tr> +<tr class="separator:a15fb35208d5234b2f334d31f930b3c4c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acd539fe25796de904f57342b14dde071"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structroute.html">route</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#acd539fe25796de904f57342b14dde071">route_dup</a> (struct <a class="el" href="structroute.html">route</a> *orig)</td></tr> +<tr class="memdesc:acd539fe25796de904f57342b14dde071"><td class="mdescLeft"> </td><td class="mdescRight">Duplicates a route object. <a href="#acd539fe25796de904f57342b14dde071">More...</a><br/></td></tr> +<tr class="separator:acd539fe25796de904f57342b14dde071"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a67cf6c2cd7cb215f256a1ef396d773f3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a67cf6c2cd7cb215f256a1ef396d773f3">route_set_mapset</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structmapset.html">mapset</a> *ms)</td></tr> +<tr class="memdesc:a67cf6c2cd7cb215f256a1ef396d773f3"><td class="mdescLeft"> </td><td class="mdescRight">Sets the mapset of the route passwd. <a href="#a67cf6c2cd7cb215f256a1ef396d773f3">More...</a><br/></td></tr> +<tr class="separator:a67cf6c2cd7cb215f256a1ef396d773f3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a23e557c7cfd7e1b074e95b251a398c16"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a23e557c7cfd7e1b074e95b251a398c16">route_set_profile</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structvehicleprofile.html">vehicleprofile</a> *prof)</td></tr> +<tr class="memdesc:a23e557c7cfd7e1b074e95b251a398c16"><td class="mdescLeft"> </td><td class="mdescRight">Sets the vehicle profile of a route. <a href="#a23e557c7cfd7e1b074e95b251a398c16">More...</a><br/></td></tr> +<tr class="separator:a23e557c7cfd7e1b074e95b251a398c16"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a277947f9dd480a8206d068d45a71c25c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structmapset.html">mapset</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a277947f9dd480a8206d068d45a71c25c">route_get_mapset</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:a277947f9dd480a8206d068d45a71c25c"><td class="mdescLeft"> </td><td class="mdescRight">Returns the mapset of the route passed. <a href="#a277947f9dd480a8206d068d45a71c25c">More...</a><br/></td></tr> +<tr class="separator:a277947f9dd480a8206d068d45a71c25c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a213e3f87cabf82aff4f235c06a8e8ab1"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structroute__info.html">route_info</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a213e3f87cabf82aff4f235c06a8e8ab1">route_get_pos</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:a213e3f87cabf82aff4f235c06a8e8ab1"><td class="mdescLeft"> </td><td class="mdescRight">Returns the current position within the route passed. <a href="#a213e3f87cabf82aff4f235c06a8e8ab1">More...</a><br/></td></tr> +<tr class="separator:a213e3f87cabf82aff4f235c06a8e8ab1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a985681c05f56cd4355bacaf236f3dbc8"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structroute__info.html">route_info</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a985681c05f56cd4355bacaf236f3dbc8">route_get_dst</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:a985681c05f56cd4355bacaf236f3dbc8"><td class="mdescLeft"> </td><td class="mdescRight">Returns the destination of the route passed. <a href="#a985681c05f56cd4355bacaf236f3dbc8">More...</a><br/></td></tr> +<tr class="separator:a985681c05f56cd4355bacaf236f3dbc8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a549ab0769b7e477e18dd72f90cfdb232"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a549ab0769b7e477e18dd72f90cfdb232">route_get_path_set</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:a549ab0769b7e477e18dd72f90cfdb232"><td class="mdescLeft"> </td><td class="mdescRight">Checks if the path is calculated for the route passed. <a href="#a549ab0769b7e477e18dd72f90cfdb232">More...</a><br/></td></tr> +<tr class="separator:a549ab0769b7e477e18dd72f90cfdb232"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a81663bf28ea85cc76c4ffe71edb6ba6c"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a81663bf28ea85cc76c4ffe71edb6ba6c">route_contains</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structitem.html">item</a> *<a class="el" href="structitem.html">item</a>)</td></tr> +<tr class="memdesc:a81663bf28ea85cc76c4ffe71edb6ba6c"><td class="mdescLeft"> </td><td class="mdescRight">Checks if the route passed contains a certain item within the route path. <a href="#a81663bf28ea85cc76c4ffe71edb6ba6c">More...</a><br/></td></tr> +<tr class="separator:a81663bf28ea85cc76c4ffe71edb6ba6c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aee9c34f3d6046134e05c4ba794e42119"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#aee9c34f3d6046134e05c4ba794e42119">route_destination_reached</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:aee9c34f3d6046134e05c4ba794e42119"><td class="mdescLeft"> </td><td class="mdescRight">Checks if a route has reached its destination. <a href="#aee9c34f3d6046134e05c4ba794e42119">More...</a><br/></td></tr> +<tr class="separator:aee9c34f3d6046134e05c4ba794e42119"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:afde07e20f4a6f15a29ece77f420b4d79"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#afde07e20f4a6f15a29ece77f420b4d79">route_set_position</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structpcoord.html">pcoord</a> *pos)</td></tr> +<tr class="memdesc:afde07e20f4a6f15a29ece77f420b4d79"><td class="mdescLeft"> </td><td class="mdescRight">This sets the current position of the route passed. <a href="#afde07e20f4a6f15a29ece77f420b4d79">More...</a><br/></td></tr> +<tr class="separator:afde07e20f4a6f15a29ece77f420b4d79"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a89e25e74be07bce7e18d9f294873df8e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a89e25e74be07bce7e18d9f294873df8e">route_set_position_from_tracking</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structtracking.html">tracking</a> *<a class="el" href="structtracking.html">tracking</a>, enum projection pro)</td></tr> +<tr class="memdesc:a89e25e74be07bce7e18d9f294873df8e"><td class="mdescLeft"> </td><td class="mdescRight">Sets a route's current position based on coordinates from tracking. <a href="#a89e25e74be07bce7e18d9f294873df8e">More...</a><br/></td></tr> +<tr class="separator:a89e25e74be07bce7e18d9f294873df8e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9b134b5ca05c402e2a12ee014e2ff794"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b134b5ca05c402e2a12ee014e2ff794"></a> +struct <a class="el" href="structmap__selection.html">map_selection</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a9b134b5ca05c402e2a12ee014e2ff794">route_rect</a> (int order, struct <a class="el" href="structcoord.html">coord</a> *c1, struct <a class="el" href="structcoord.html">coord</a> *c2, int rel, int abs)</td></tr> +<tr class="memdesc:a9b134b5ca05c402e2a12ee014e2ff794"><td class="mdescLeft"> </td><td class="mdescRight">Returns a single map selection. <br/></td></tr> +<tr class="separator:a9b134b5ca05c402e2a12ee014e2ff794"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a76dbb039f1261c5e6d66b6acf4277a4c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a76dbb039f1261c5e6d66b6acf4277a4c">route_set_destinations</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structpcoord.html">pcoord</a> *dst, int count, int async)</td></tr> +<tr class="memdesc:a76dbb039f1261c5e6d66b6acf4277a4c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the destination of a route. <a href="#a76dbb039f1261c5e6d66b6acf4277a4c">More...</a><br/></td></tr> +<tr class="separator:a76dbb039f1261c5e6d66b6acf4277a4c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aaf448a2ecf38fcef1f40e9a37c080e8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf448a2ecf38fcef1f40e9a37c080e8e"></a> +int </td><td class="memItemRight" valign="bottom"><b>route_get_destinations</b> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structpcoord.html">pcoord</a> *pc, int count)</td></tr> +<tr class="separator:aaf448a2ecf38fcef1f40e9a37c080e8e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a36e3ba74f3e6a105e761d34aa6cb54ad"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a36e3ba74f3e6a105e761d34aa6cb54ad">route_get_destination_count</a> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="memdesc:a36e3ba74f3e6a105e761d34aa6cb54ad"><td class="mdescLeft"> </td><td class="mdescRight">Get the destinations count for the route. <a href="#a36e3ba74f3e6a105e761d34aa6cb54ad">More...</a><br/></td></tr> +<tr class="separator:a36e3ba74f3e6a105e761d34aa6cb54ad"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af4e30ffdd2ff74573cf9fa818b7e4d86"><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#af4e30ffdd2ff74573cf9fa818b7e4d86">route_get_destination_description</a> (struct <a class="el" href="structroute.html">route</a> *this, int n)</td></tr> +<tr class="memdesc:af4e30ffdd2ff74573cf9fa818b7e4d86"><td class="mdescLeft"> </td><td class="mdescRight">Returns a description for a waypoint as (type or street_name_systematic) + (label or WayID[osm_wayid]) <a href="#af4e30ffdd2ff74573cf9fa818b7e4d86">More...</a><br/></td></tr> +<tr class="separator:af4e30ffdd2ff74573cf9fa818b7e4d86"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9f81f751d71194e46a72072e6f42b248"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a9f81f751d71194e46a72072e6f42b248">route_set_destination</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structpcoord.html">pcoord</a> *dst, int async)</td></tr> +<tr class="memdesc:a9f81f751d71194e46a72072e6f42b248"><td class="mdescLeft"> </td><td class="mdescRight">Start a route given set of coordinates. <a href="#a9f81f751d71194e46a72072e6f42b248">More...</a><br/></td></tr> +<tr class="separator:a9f81f751d71194e46a72072e6f42b248"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a48ca63f73dc68ceefad68cc7da18630d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a48ca63f73dc68ceefad68cc7da18630d">route_append_destination</a> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structpcoord.html">pcoord</a> *dst, int async)</td></tr> +<tr class="memdesc:a48ca63f73dc68ceefad68cc7da18630d"><td class="mdescLeft"> </td><td class="mdescRight">Append a waypoint to the route. <a href="#a48ca63f73dc68ceefad68cc7da18630d">More...</a><br/></td></tr> +<tr class="separator:a48ca63f73dc68ceefad68cc7da18630d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a255107bfa06589b1147e041c18c6cb3b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a255107bfa06589b1147e041c18c6cb3b">route_remove_nth_waypoint</a> (struct <a class="el" href="structroute.html">route</a> *this, int n)</td></tr> +<tr class="memdesc:a255107bfa06589b1147e041c18c6cb3b"><td class="mdescLeft"> </td><td class="mdescRight">Remove the nth waypoint of the route. <a href="#a255107bfa06589b1147e041c18c6cb3b">More...</a><br/></td></tr> +<tr class="separator:a255107bfa06589b1147e041c18c6cb3b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ae433cd31b87ac5d23e60f0d73c339eb6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae433cd31b87ac5d23e60f0d73c339eb6"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_remove_waypoint</b> (struct <a class="el" href="structroute.html">route</a> *this)</td></tr> +<tr class="separator:ae433cd31b87ac5d23e60f0d73c339eb6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a03a2c87fe7268b8a6aef10b431813a27"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcoord.html">coord</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a03a2c87fe7268b8a6aef10b431813a27">route_get_coord_dist</a> (struct <a class="el" href="structroute.html">route</a> *this_, int dist)</td></tr> +<tr class="memdesc:a03a2c87fe7268b8a6aef10b431813a27"><td class="mdescLeft"> </td><td class="mdescRight">Returns a coordinate at a given distance. <a href="#a03a2c87fe7268b8a6aef10b431813a27">More...</a><br/></td></tr> +<tr class="separator:a03a2c87fe7268b8a6aef10b431813a27"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a6d58eeebe86073b86fccfec847ab8472"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structstreet__data.html">street_data</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a6d58eeebe86073b86fccfec847ab8472">street_get_data</a> (struct <a class="el" href="structitem.html">item</a> *<a class="el" href="structitem.html">item</a>)</td></tr> +<tr class="memdesc:a6d58eeebe86073b86fccfec847ab8472"><td class="mdescLeft"> </td><td class="mdescRight">Gets street data for an item. <a href="#a6d58eeebe86073b86fccfec847ab8472">More...</a><br/></td></tr> +<tr class="separator:a6d58eeebe86073b86fccfec847ab8472"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aa833f58f659d2a68125d100ff0a5adf2"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structstreet__data.html">street_data</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#aa833f58f659d2a68125d100ff0a5adf2">street_data_dup</a> (struct <a class="el" href="structstreet__data.html">street_data</a> *orig)</td></tr> +<tr class="memdesc:aa833f58f659d2a68125d100ff0a5adf2"><td class="mdescLeft"> </td><td class="mdescRight">Copies street data. <a href="#aa833f58f659d2a68125d100ff0a5adf2">More...</a><br/></td></tr> +<tr class="separator:aa833f58f659d2a68125d100ff0a5adf2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:abbb407c7b7f4e713736961d6b6c121f0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#abbb407c7b7f4e713736961d6b6c121f0">street_data_free</a> (struct <a class="el" href="structstreet__data.html">street_data</a> *sd)</td></tr> +<tr class="memdesc:abbb407c7b7f4e713736961d6b6c121f0"><td class="mdescLeft"> </td><td class="mdescRight">Frees street data. <a href="#abbb407c7b7f4e713736961d6b6c121f0">More...</a><br/></td></tr> +<tr class="separator:abbb407c7b7f4e713736961d6b6c121f0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a248081bb540de81b2fbbcbe2593dc29c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a248081bb540de81b2fbbcbe2593dc29c">route_info_free</a> (struct <a class="el" href="structroute__info.html">route_info</a> *inf)</td></tr> +<tr class="memdesc:a248081bb540de81b2fbbcbe2593dc29c"><td class="mdescLeft"> </td><td class="mdescRight">Destroys a <a class="el" href="structroute__info.html" title="Usually represents a destination or position. ">route_info</a>. <a href="#a248081bb540de81b2fbbcbe2593dc29c">More...</a><br/></td></tr> +<tr class="separator:a248081bb540de81b2fbbcbe2593dc29c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:af9fd5fc03a4e663ae683c73a7674b80c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structstreet__data.html">street_data</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#af9fd5fc03a4e663ae683c73a7674b80c">route_info_street</a> (struct <a class="el" href="structroute__info.html">route_info</a> *rinf)</td></tr> +<tr class="memdesc:af9fd5fc03a4e663ae683c73a7674b80c"><td class="mdescLeft"> </td><td class="mdescRight">Returns street data for a route info. <a href="#af9fd5fc03a4e663ae683c73a7674b80c">More...</a><br/></td></tr> +<tr class="separator:af9fd5fc03a4e663ae683c73a7674b80c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9904a53f743876344695c1ef3dab283b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9904a53f743876344695c1ef3dab283b"></a> +struct <a class="el" href="structroute__crossings.html">route_crossings</a> * </td><td class="memItemRight" valign="bottom"><b>route_crossings_get</b> (struct <a class="el" href="structroute.html">route</a> *this, struct <a class="el" href="structcoord.html">coord</a> *c)</td></tr> +<tr class="separator:a9904a53f743876344695c1ef3dab283b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:aeb206a7bcf64a858f2ab385697d102b1"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structmap.html">map</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#aeb206a7bcf64a858f2ab385697d102b1">route_get_map</a> (struct <a class="el" href="structroute.html">route</a> *this_)</td></tr> +<tr class="memdesc:aeb206a7bcf64a858f2ab385697d102b1"><td class="mdescLeft"> </td><td class="mdescRight">Returns a new map containing the route path. <a href="#aeb206a7bcf64a858f2ab385697d102b1">More...</a><br/></td></tr> +<tr class="separator:aeb206a7bcf64a858f2ab385697d102b1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a25508afaaf0b6f06ec5bf467593b81fc"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structmap.html">map</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a25508afaaf0b6f06ec5bf467593b81fc">route_get_graph_map</a> (struct <a class="el" href="structroute.html">route</a> *this_)</td></tr> +<tr class="memdesc:a25508afaaf0b6f06ec5bf467593b81fc"><td class="mdescLeft"> </td><td class="mdescRight">Returns a new map containing the route graph. <a href="#a25508afaaf0b6f06ec5bf467593b81fc">More...</a><br/></td></tr> +<tr class="separator:a25508afaaf0b6f06ec5bf467593b81fc"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acbc1b6d420056c3cff9e60e3227143f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbc1b6d420056c3cff9e60e3227143f2"></a> +enum route_path_flags </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#acbc1b6d420056c3cff9e60e3227143f2">route_get_flags</a> (struct <a class="el" href="structroute.html">route</a> *this_)</td></tr> +<tr class="memdesc:acbc1b6d420056c3cff9e60e3227143f2"><td class="mdescLeft"> </td><td class="mdescRight">Returns the flags for the route. <br/></td></tr> +<tr class="separator:acbc1b6d420056c3cff9e60e3227143f2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a1e07a0865bb864ab1ad0f505810e47e0"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a1e07a0865bb864ab1ad0f505810e47e0">route_has_graph</a> (struct <a class="el" href="structroute.html">route</a> *this_)</td></tr> +<tr class="memdesc:a1e07a0865bb864ab1ad0f505810e47e0"><td class="mdescLeft"> </td><td class="mdescRight">Whether the route has a valid graph. <a href="#a1e07a0865bb864ab1ad0f505810e47e0">More...</a><br/></td></tr> +<tr class="separator:a1e07a0865bb864ab1ad0f505810e47e0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a728f8ca3f7e02ffe4b48ae30c439c5e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a728f8ca3f7e02ffe4b48ae30c439c5e7"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_set_projection</b> (struct <a class="el" href="structroute.html">route</a> *this_, enum projection pro)</td></tr> +<tr class="separator:a728f8ca3f7e02ffe4b48ae30c439c5e7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acad5a08b925ad1fa0429997b0febde9b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acad5a08b925ad1fa0429997b0febde9b"></a> +int </td><td class="memItemRight" valign="bottom"><b>route_set_attr</b> (struct <a class="el" href="structroute.html">route</a> *this_, struct <a class="el" href="structattr.html">attr</a> *<a class="el" href="structattr.html">attr</a>)</td></tr> +<tr class="separator:acad5a08b925ad1fa0429997b0febde9b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acf5630829e3459305171d52db6e24fe6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf5630829e3459305171d52db6e24fe6"></a> +int </td><td class="memItemRight" valign="bottom"><b>route_add_attr</b> (struct <a class="el" href="structroute.html">route</a> *this_, struct <a class="el" href="structattr.html">attr</a> *<a class="el" href="structattr.html">attr</a>)</td></tr> +<tr class="separator:acf5630829e3459305171d52db6e24fe6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a6d8a75a45bed6f61c1783c4e6447c414"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d8a75a45bed6f61c1783c4e6447c414"></a> +int </td><td class="memItemRight" valign="bottom"><b>route_remove_attr</b> (struct <a class="el" href="structroute.html">route</a> *this_, struct <a class="el" href="structattr.html">attr</a> *<a class="el" href="structattr.html">attr</a>)</td></tr> +<tr class="separator:a6d8a75a45bed6f61c1783c4e6447c414"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acd57c04075f3eae04f5c3fb4fc4d7689"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd57c04075f3eae04f5c3fb4fc4d7689"></a> +int </td><td class="memItemRight" valign="bottom"><b>route_get_attr</b> (struct <a class="el" href="structroute.html">route</a> *this_, enum attr_type type, struct <a class="el" href="structattr.html">attr</a> *<a class="el" href="structattr.html">attr</a>, struct <a class="el" href="structattr__iter.html">attr_iter</a> *iter)</td></tr> +<tr class="separator:acd57c04075f3eae04f5c3fb4fc4d7689"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:acf8e0ef1e7a81568092a35d65b11beae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf8e0ef1e7a81568092a35d65b11beae"></a> +struct <a class="el" href="structattr__iter.html">attr_iter</a> * </td><td class="memItemRight" valign="bottom"><b>route_attr_iter_new</b> (void)</td></tr> +<tr class="separator:acf8e0ef1e7a81568092a35d65b11beae"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a3634a13adb89a341c91d322079d2ba1f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3634a13adb89a341c91d322079d2ba1f"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_attr_iter_destroy</b> (struct <a class="el" href="structattr__iter.html">attr_iter</a> *iter)</td></tr> +<tr class="separator:a3634a13adb89a341c91d322079d2ba1f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a54777eb5e273c249f1fa36a69b0d2520"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54777eb5e273c249f1fa36a69b0d2520"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_init</b> (void)</td></tr> +<tr class="separator:a54777eb5e273c249f1fa36a69b0d2520"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ae7d2ff1bc3006c9967b0a4ae3e54fe90"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7d2ff1bc3006c9967b0a4ae3e54fe90"></a> +void </td><td class="memItemRight" valign="bottom"><b>route_destroy</b> (struct <a class="el" href="structroute.html">route</a> *this_)</td></tr> +<tr class="separator:ae7d2ff1bc3006c9967b0a4ae3e54fe90"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a> +Variables</h2></td></tr> +<tr class="memitem:a2ce0d27052b039e875248c6359a968e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ce0d27052b039e875248c6359a968e5"></a> +int </td><td class="memItemRight" valign="bottom"><b>debug_route</b> =0</td></tr> +<tr class="separator:a2ce0d27052b039e875248c6359a968e5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a7a85a74de6740a4737c0ec1ab36737ed"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structmap__selection.html">map_selection</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="route_8c.html#a7a85a74de6740a4737c0ec1ab36737ed">route_selection</a></td></tr> +<tr class="separator:a7a85a74de6740a4737c0ec1ab36737ed"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a44e68e38b75a73288198f97c5971aa04"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structobject__func.html">object_func</a> </td><td class="memItemRight" valign="bottom"><b>route_func</b></td></tr> +<tr class="separator:a44e68e38b75a73288198f97c5971aa04"><td class="memSeparator" colspan="2"> </td></tr> +</table> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<div class="textblock"><p>Contains code related to finding a route from a position to a destination. </p> +<p>Navit, a modular navigation system. Copyright (C) 2005-2008 Navit Team</p> +<p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.</p> +<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p> +<p>You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Routing uses segments, points and items. Items are items from the map: Streets, highways, etc. Segments represent such items, or parts of it. Generally, a segment is a driveable path. An item can be represented by more than one segment - in that case it is "segmented". Each segment has an "offset" associated, that indicates at which position in a segmented item this segment is - a segment representing a not-segmented item always has the offset 1. A point is located at the end of segments, often connecting several segments.</p> +<p>The code in this file will make navit find a route between a position and a destination. It accomplishes this by first building a "route graph". This graph contains segments and points.</p> +<p>After building this graph in route_graph_build(), the function route_graph_flood() assigns every point and segment a "value" which represents the "costs" of traveling from this point to the destination. This is done by Dijkstra's algorithm.</p> +<p>When the graph is built a "route path" is created, which is a path in this graph from a given position to the destination determined at time of building the graph. </p> +</div><h2 class="groupheader">Function Documentation</h2> +<a class="anchor" id="a48ca63f73dc68ceefad68cc7da18630d"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_append_destination </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structpcoord.html">pcoord</a> * </td> + <td class="paramname"><em>dst</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>async</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Append a waypoint to the route. </p> +<p>This appends a waypoint to the current route, targetting the street nearest to the coordinates passed, and updates the route.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the destination for </td></tr> + <tr><td class="paramname">dst</td><td>Coordinates of the new waypoint </td></tr> + <tr><td class="paramname">async</td><td>If set, do routing asynchronously </td></tr> + </table> + </dd> +</dl> + +<p>References <a class="el" href="route_8c.html#a985681c05f56cd4355bacaf236f3dbc8">route_get_dst()</a>, and <a class="el" href="route_8c.html#a76dbb039f1261c5e6d66b6acf4277a4c">route_set_destinations()</a>.</p> + +<p>Referenced by <a class="el" href="group__navit.html#gab059a4aca70ca8da61aab4ee461f8392">navit_set_destination()</a>.</p> + +</div> +</div> +<a class="anchor" id="a81663bf28ea85cc76c4ffe71edb6ba6c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int route_contains </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structitem.html">item</a> * </td> + <td class="paramname"><em>item</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Checks if the route passed contains a certain item within the route path. </p> +<p>This function checks if a certain items exists in the path that navit will guide the user to his destination. It does <em>not</em> check if this item exists in the route graph!</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to check for this item </td></tr> + <tr><td class="paramname">item</td><td>The item to search for </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>True if the item was found, false if the item was not found or the route was not calculated </dd></dl> + +<p>References <a class="el" href="structroute__info.html#a2257f91a0e0fb5758edda3624d725159">route_info::pos</a>.</p> + +</div> +</div> +<a class="anchor" id="aee9c34f3d6046134e05c4ba794e42119"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int route_destination_reached </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Checks if a route has reached its destination. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to be checked </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>True if the destination is "reached", false otherwise. </dd></dl> + +<p>References <a class="el" href="structstreet__data.html#a224c9e84d6d6d05fe9d2213919d1d22a">street_data::item</a>, <a class="el" href="structroute__info.html#a853893715875ae1c20a04460221330fa">route_info::lenneg</a>, <a class="el" href="structroute__info.html#a3fa9599989a18a28c4c5035671c9c9c2">route_info::lenpos</a>, <a class="el" href="structroute__info.html#a02dbf41712f47bb700aea836d3b63d14">route_info::lp</a>, <a class="el" href="structroute__info.html#a2257f91a0e0fb5758edda3624d725159">route_info::pos</a>, and <a class="el" href="structroute__info.html#ad0de7737462fbefc4f9020233b8f82db">route_info::street</a>.</p> + +</div> +</div> +<a class="anchor" id="acd539fe25796de904f57342b14dde071"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structroute.html">route</a>* route_dup </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>orig</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Duplicates a route object. </p> +<dl class="section return"><dt>Returns</dt><dd>The duplicated route </dd></dl> + +<p>References <a class="el" href="structroute.html#a5f456183d2312e96607cfab6239e7818">route::cbl2</a>, <a class="el" href="structroute.html#aa1edf18cdace11ebf4cc1605181d0eac">route::destination_distance</a>, <a class="el" href="structroute.html#abb33b9282cba092fcc246c2401511f3d">route::ms</a>, and <a class="el" href="structroute.html#a0bdbb423178c93cc7d2930ae04804983">route::vehicleprofile</a>.</p> + +</div> +</div> +<a class="anchor" id="a03a2c87fe7268b8a6aef10b431813a27"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structcoord.html">coord</a> route_get_coord_dist </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this_</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>dist</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a coordinate at a given distance. </p> +<p>This function returns the coordinate, where the user will be if he follows the current route for a certain distance.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this_</td><td>The route we're driving upon </td></tr> + <tr><td class="paramname">dist</td><td>The distance in meters </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The coordinate where the user will be in that distance </dd></dl> + +<p>References <a class="el" href="structroute__path__segment.html#afa4ba8577e77e6f88f87dea5bcff3c8f">route_path_segment::c</a>, <a class="el" href="structroute__info.html#a08424350941a8de98ed325aa5ec6ee88">route_info::c</a>, <a class="el" href="structroute__path__segment.html#ab4a507112d5aa2d6fc1e49d11e363f33">route_path_segment::data</a>, <a class="el" href="structroute__segment__data.html#a5e01624990fe1ce9a33059e5465f1b00">route_segment_data::len</a>, <a class="el" href="structroute__path__segment.html#a0b431f8ff7b84bcb005fcbc46e08f270">route_path_segment::ncoords</a>, <a class="el" href="structroute__path__segment.html#a01084799d02765c27c0afd8aa08c53fd">route_path_segment::next</a>, <a class="el" href="route_8c.html#a985681c05f56cd4355bacaf236f3dbc8">route_get_dst()</a>, <a class="el" href="structcoord.html#ac3e93ff628aa19d2888c5f6fa26f430d">coord::x</a>, and <a class="el" href="structcoord.html#a2b099692d87f98e4844b615136ca37fb">coord::y</a>.</p> + +</div> +</div> +<a class="anchor" id="a36e3ba74f3e6a105e761d34aa6cb54ad"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int route_get_destination_count </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the destinations count for the route. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route instance </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>destination count for the route </dd></dl> + +<p>Referenced by <a class="el" href="group__navit.html#gab059a4aca70ca8da61aab4ee461f8392">navit_set_destination()</a>.</p> + +</div> +</div> +<a class="anchor" id="af4e30ffdd2ff74573cf9fa818b7e4d86"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">char* route_get_destination_description </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>n</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a description for a waypoint as (type or street_name_systematic) + (label or WayID[osm_wayid]) </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route instance </td></tr> + <tr><td class="paramname">n</td><td>The nth waypoint </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The description </dd></dl> + +<p>References <a class="el" href="structitem.html#a193c3e2ec0076325a4f3139f9d33e06e">item::id_hi</a>, <a class="el" href="structitem.html#a8be73452bc1e39e9054361ab579c9dc1">item::id_lo</a>, <a class="el" href="structstreet__data.html#a224c9e84d6d6d05fe9d2213919d1d22a">street_data::item</a>, <a class="el" href="structitem.html#a9d90a195a3654c3b1e872ad92ae74369">item::map</a>, <a class="el" href="map_8c.html#afe7311d63f1e8a4a697634cf79329f7d">map_rect_destroy()</a>, <a class="el" href="map_8c.html#a9e27d0888db14bf9b88727ead943eaf6">map_rect_get_item_byid()</a>, <a class="el" href="map_8c.html#a52e6ae5ec3beaec49ce12ce603d7d72a">map_rect_new()</a>, <a class="el" href="structroute__info.html#ad0de7737462fbefc4f9020233b8f82db">route_info::street</a>, and <a class="el" href="structitem.html#a3abafd36669ef817be82676acd8e5989">item::type</a>.</p> + +</div> +</div> +<a class="anchor" id="a985681c05f56cd4355bacaf236f3dbc8"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structroute__info.html">route_info</a>* route_get_dst </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the destination of the route passed. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to get the destination for </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The destination of the route passed </dd></dl> + +<p>Referenced by <a class="el" href="route_8h.html#a3ef42040ce440fb91532f292a44e4062">route_append_destination()</a>, <a class="el" href="route_8h.html#a03a2c87fe7268b8a6aef10b431813a27">route_get_coord_dist()</a>, <a class="el" href="route_8h.html#a9540945fd3d5176850d438904bfd903f">route_remove_nth_waypoint()</a>, and <a class="el" href="route_8h.html#a72a72ba653784a692bb599af0a3d71c8">route_set_destinations()</a>.</p> + +</div> +</div> +<a class="anchor" id="a25508afaaf0b6f06ec5bf467593b81fc"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structmap.html">map</a>* route_get_graph_map </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this_</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a new map containing the route graph. </p> +<p>This function returns a new map containing the route graph.</p> +<p>Do not <a class="el" href="map_8c.html#a06f624f20492c8e9e9f3c7eb43b70396" title="Destroys an opened map. ">map_destroy()</a> this!</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this_</td><td>The route to get the map of </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>A new map containing the route graph </dd></dl> + +</div> +</div> +<a class="anchor" id="aeb206a7bcf64a858f2ab385697d102b1"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structmap.html">map</a>* route_get_map </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this_</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a new map containing the route path. </p> +<p>This function returns a new map containing the route path.</p> +<p>Do not <a class="el" href="map_8c.html#a06f624f20492c8e9e9f3c7eb43b70396" title="Destroys an opened map. ">map_destroy()</a> this!</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this_</td><td>The route to get the map of </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>A new map containing the route path </dd></dl> + +</div> +</div> +<a class="anchor" id="a277947f9dd480a8206d068d45a71c25c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structmapset.html">mapset</a>* route_get_mapset </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the mapset of the route passed. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to get the mapset of </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The mapset of the route passed </dd></dl> + +</div> +</div> +<a class="anchor" id="a549ab0769b7e477e18dd72f90cfdb232"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int route_get_path_set </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Checks if the path is calculated for the route passed. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to check </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>True if the path is calculated, false if not </dd></dl> + +<p>Referenced by <a class="el" href="group__navit.html#ga7ce58517a9082005032863f07893ee4c">navit_check_route()</a>.</p> + +</div> +</div> +<a class="anchor" id="a213e3f87cabf82aff4f235c06a8e8ab1"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structroute__info.html">route_info</a>* route_get_pos </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the current position within the route passed. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to get the position for </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The position within the route passed </dd></dl> + +<p>References <a class="el" href="structroute__info.html#a2257f91a0e0fb5758edda3624d725159">route_info::pos</a>.</p> + +</div> +</div> +<a class="anchor" id="a1e07a0865bb864ab1ad0f505810e47e0"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int route_has_graph </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this_</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Whether the route has a valid graph. </p> +<dl class="section return"><dt>Returns</dt><dd>True if the route has a graph, false if not. </dd></dl> + +<p>References <a class="el" href="structroute.html#a87641aa05073f2c20434369aa6c42e4c">route::graph</a>.</p> + +</div> +</div> +<a class="anchor" id="a248081bb540de81b2fbbcbe2593dc29c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_info_free </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute__info.html">route_info</a> * </td> + <td class="paramname"><em>inf</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Destroys a <a class="el" href="structroute__info.html" title="Usually represents a destination or position. ">route_info</a>. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">info</td><td>The route info to be destroyed </td></tr> + </table> + </dd> +</dl> + +<p>References <a class="el" href="structroute__info.html#ad0de7737462fbefc4f9020233b8f82db">route_info::street</a>, and <a class="el" href="route_8c.html#abbb407c7b7f4e713736961d6b6c121f0">street_data_free()</a>.</p> + +<p>Referenced by <a class="el" href="route_8h.html#a9540945fd3d5176850d438904bfd903f">route_remove_nth_waypoint()</a>, and <a class="el" href="route_8h.html#ab6eb41cc5297c0031fd887ab23ff445e">route_set_position_from_tracking()</a>.</p> + +</div> +</div> +<a class="anchor" id="af9fd5fc03a4e663ae683c73a7674b80c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structstreet__data.html">street_data</a>* route_info_street </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute__info.html">route_info</a> * </td> + <td class="paramname"><em>rinf</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns street data for a route info. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">rinf</td><td>The route info to return the street data for </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Street data for the route info </dd></dl> + +<p>References <a class="el" href="structroute__info.html#ad0de7737462fbefc4f9020233b8f82db">route_info::street</a>.</p> + +</div> +</div> +<a class="anchor" id="a15fb35208d5234b2f334d31f930b3c4c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structroute.html">route</a>* route_new </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structattr.html">attr</a> * </td> + <td class="paramname"><em>parent</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structattr.html">attr</a> ** </td> + <td class="paramname"><em>attrs</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Creates a completely new route structure. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">attrs</td><td>Not used </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The newly created route </dd></dl> + +</div> +</div> +<a class="anchor" id="a255107bfa06589b1147e041c18c6cb3b"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_remove_nth_waypoint </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>n</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Remove the nth waypoint of the route. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route instance </td></tr> + <tr><td class="paramname">n</td><td>The waypoint to remove </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl> + +<p>References <a class="el" href="route_8c.html#a985681c05f56cd4355bacaf236f3dbc8">route_get_dst()</a>, and <a class="el" href="route_8c.html#a248081bb540de81b2fbbcbe2593dc29c">route_info_free()</a>.</p> + +</div> +</div> +<a class="anchor" id="a9f81f751d71194e46a72072e6f42b248"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_destination </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structpcoord.html">pcoord</a> * </td> + <td class="paramname"><em>dst</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>async</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Start a route given set of coordinates. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route instance </td></tr> + <tr><td class="paramname">dst</td><td>The coordinate to start routing to </td></tr> + <tr><td class="paramname">async</td><td>Set to 1 to do route calculation asynchronously </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>nothing </dd></dl> + +<p>References <a class="el" href="route_8c.html#a76dbb039f1261c5e6d66b6acf4277a4c">route_set_destinations()</a>.</p> + +<p>Referenced by <a class="el" href="group__navit.html#gab059a4aca70ca8da61aab4ee461f8392">navit_set_destination()</a>.</p> + +</div> +</div> +<a class="anchor" id="a76dbb039f1261c5e6d66b6acf4277a4c"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_destinations </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structpcoord.html">pcoord</a> * </td> + <td class="paramname"><em>dst</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>count</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>async</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the destination of a route. </p> +<p>This sets the destination of a route to the street nearest to the coordinates passed and updates the route.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the destination for </td></tr> + <tr><td class="paramname">dst</td><td>Coordinates to set as destination </td></tr> + <tr><td class="paramname">count</td><td>Number of destinations (last one is final) </td></tr> + <tr><td class="paramname">async</td><td>If set, do routing asynchronously </td></tr> + </table> + </dd> +</dl> + +<p>References <a class="el" href="route_8c.html#a985681c05f56cd4355bacaf236f3dbc8">route_get_dst()</a>.</p> + +<p>Referenced by <a class="el" href="group__navit.html#ga8c4ba89eaca2dc43b6f6263b4be97d97">navit_set_destinations()</a>, <a class="el" href="route_8h.html#a3ef42040ce440fb91532f292a44e4062">route_append_destination()</a>, <a class="el" href="route_8h.html#a9097ff0fd3025bd6b52babbb4634c741">route_set_destination()</a>, and <a class="el" href="route_8h.html#a92d2668037d5654c117046ff317c600b">route_set_profile()</a>.</p> + +</div> +</div> +<a class="anchor" id="a67cf6c2cd7cb215f256a1ef396d773f3"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_mapset </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structmapset.html">mapset</a> * </td> + <td class="paramname"><em>ms</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the mapset of the route passwd. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the mapset for </td></tr> + <tr><td class="paramname">ms</td><td>The mapset to set for this route </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a class="anchor" id="afde07e20f4a6f15a29ece77f420b4d79"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_position </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structpcoord.html">pcoord</a> * </td> + <td class="paramname"><em>pos</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>This sets the current position of the route passed. </p> +<p>This will set the current position of the route passed to the street that is nearest to the passed coordinates. It also automatically updates the route.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the position of </td></tr> + <tr><td class="paramname">pos</td><td>Coordinates to set as position </td></tr> + </table> + </dd> +</dl> + +<p>Referenced by <a class="el" href="group__navit.html#gaf0224062b4a1b7e4ec04c67343d79f15">navit_set_position()</a>.</p> + +</div> +</div> +<a class="anchor" id="a89e25e74be07bce7e18d9f294873df8e"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_position_from_tracking </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structtracking.html">tracking</a> * </td> + <td class="paramname"><em>tracking</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">enum projection </td> + <td class="paramname"><em>pro</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets a route's current position based on coordinates from tracking. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the current position of </td></tr> + <tr><td class="paramname">tracking</td><td>The tracking to get the coordinates from </td></tr> + </table> + </dd> +</dl> + +<p>References <a class="el" href="structstreet__data.html#aa1320249fcb1425f71d076eacb1bdb47">street_data::c</a>, <a class="el" href="structroute__info.html#a08424350941a8de98ed325aa5ec6ee88">route_info::c</a>, <a class="el" href="structstreet__data.html#aae566cd82e377cec86f6c98672e1cf19">street_data::count</a>, <a class="el" href="structitem.html#a193c3e2ec0076325a4f3139f9d33e06e">item::id_hi</a>, <a class="el" href="structitem.html#a8be73452bc1e39e9054361ab579c9dc1">item::id_lo</a>, <a class="el" href="structstreet__data.html#a224c9e84d6d6d05fe9d2213919d1d22a">street_data::item</a>, <a class="el" href="structroute__info.html#a853893715875ae1c20a04460221330fa">route_info::lenneg</a>, <a class="el" href="structroute__info.html#a3fa9599989a18a28c4c5035671c9c9c2">route_info::lenpos</a>, <a class="el" href="structroute__info.html#a02dbf41712f47bb700aea836d3b63d14">route_info::lp</a>, <a class="el" href="structroute__info.html#a2257f91a0e0fb5758edda3624d725159">route_info::pos</a>, <a class="el" href="route_8c.html#a248081bb540de81b2fbbcbe2593dc29c">route_info_free()</a>, <a class="el" href="structroute__info.html#ad0de7737462fbefc4f9020233b8f82db">route_info::street</a>, <a class="el" href="route_8c.html#aa833f58f659d2a68125d100ff0a5adf2">street_data_dup()</a>, <a class="el" href="structroute__info.html#a67693ed66d1a53fbe512dd619f82649c">route_info::street_direction</a>, <a class="el" href="structcoord.html#ac3e93ff628aa19d2888c5f6fa26f430d">coord::x</a>, and <a class="el" href="structcoord.html#a2b099692d87f98e4844b615136ca37fb">coord::y</a>.</p> + +</div> +</div> +<a class="anchor" id="a23e557c7cfd7e1b074e95b251a398c16"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void route_set_profile </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structroute.html">route</a> * </td> + <td class="paramname"><em>this</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">struct <a class="el" href="structvehicleprofile.html">vehicleprofile</a> * </td> + <td class="paramname"><em>prof</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the vehicle profile of a route. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">this</td><td>The route to set the profile for </td></tr> + <tr><td class="paramname">prof</td><td>The vehicle profile </td></tr> + </table> + </dd> +</dl> + +<p>References <a class="el" href="route_8c.html#a76dbb039f1261c5e6d66b6acf4277a4c">route_set_destinations()</a>.</p> + +</div> +</div> +<a class="anchor" id="aa833f58f659d2a68125d100ff0a5adf2"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structstreet__data.html">street_data</a>* street_data_dup </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structstreet__data.html">street_data</a> * </td> + <td class="paramname"><em>orig</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Copies street data. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">orig</td><td>The street data to copy </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>The copied street data </dd></dl> + +<p>Referenced by <a class="el" href="route_8h.html#ab6eb41cc5297c0031fd887ab23ff445e">route_set_position_from_tracking()</a>.</p> + +</div> +</div> +<a class="anchor" id="abbb407c7b7f4e713736961d6b6c121f0"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void street_data_free </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structstreet__data.html">street_data</a> * </td> + <td class="paramname"><em>sd</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Frees street data. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">sd</td><td>Street data to be freed </td></tr> + </table> + </dd> +</dl> + +<p>Referenced by <a class="el" href="route_8h.html#a248081bb540de81b2fbbcbe2593dc29c">route_info_free()</a>.</p> + +</div> +</div> +<a class="anchor" id="a6d58eeebe86073b86fccfec847ab8472"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structstreet__data.html">street_data</a>* street_get_data </td> + <td>(</td> + <td class="paramtype">struct <a class="el" href="structitem.html">item</a> * </td> + <td class="paramname"><em>item</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Gets street data for an item. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">item</td><td>The item to get the data for </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Street data for the item </dd></dl> + +<p>References <a class="el" href="structstreet__data.html#aa1320249fcb1425f71d076eacb1bdb47">street_data::c</a>, <a class="el" href="structstreet__data.html#aae566cd82e377cec86f6c98672e1cf19">street_data::count</a>, <a class="el" href="structstreet__data.html#a224c9e84d6d6d05fe9d2213919d1d22a">street_data::item</a>, <a class="el" href="structstreet__data.html#a7d1b7d4f57b823532c9b7f7805780fad">street_data::maxspeed</a>, and <a class="el" href="structitem.html#a3abafd36669ef817be82676acd8e5989">item::type</a>.</p> + +</div> +</div> +<h2 class="groupheader">Variable Documentation</h2> +<a class="anchor" id="a44e68e38b75a73288198f97c5971aa04"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structobject__func.html">object_func</a> route_func</td> + </tr> + </table> +</div><div class="memdoc"> +<b>Initial value:</b><div class="fragment"><div class="line">= {</div> +<div class="line"> attr_route,</div> +<div class="line"> (object_func_new)<a class="code" href="route_8c.html#a15fb35208d5234b2f334d31f930b3c4c">route_new</a>,</div> +<div class="line"> (object_func_get_attr)route_get_attr,</div> +<div class="line"> (object_func_iter_new)NULL,</div> +<div class="line"> (object_func_iter_destroy)NULL,</div> +<div class="line"> (object_func_set_attr)route_set_attr,</div> +<div class="line"> (object_func_add_attr)route_add_attr,</div> +<div class="line"> (object_func_remove_attr)route_remove_attr,</div> +<div class="line"> (object_func_init)NULL,</div> +<div class="line"> (object_func_destroy)route_destroy,</div> +<div class="line"> (object_func_dup)<a class="code" href="route_8c.html#acd539fe25796de904f57342b14dde071">route_dup</a>,</div> +<div class="line"> (object_func_ref)navit_object_ref,</div> +<div class="line"> (object_func_unref)navit_object_unref,</div> +<div class="line">}</div> +<div class="ttc" id="route_8c_html_a15fb35208d5234b2f334d31f930b3c4c"><div class="ttname"><a href="route_8c.html#a15fb35208d5234b2f334d31f930b3c4c">route_new</a></div><div class="ttdeci">struct route * route_new(struct attr *parent, struct attr **attrs)</div><div class="ttdoc">Creates a completely new route structure. </div><div class="ttdef"><b>Definition:</b> route.c:474</div></div> +<div class="ttc" id="route_8c_html_acd539fe25796de904f57342b14dde071"><div class="ttname"><a href="route_8c.html#acd539fe25796de904f57342b14dde071">route_dup</a></div><div class="ttdeci">struct route * route_dup(struct route *orig)</div><div class="ttdoc">Duplicates a route object. </div><div class="ttdef"><b>Definition:</b> route.c:499</div></div> +</div><!-- fragment --> +</div> +</div> +<a class="anchor" id="a7a85a74de6740a4737c0ec1ab36737ed"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">struct <a class="el" href="structmap__selection.html">map_selection</a>* route_selection</td> + </tr> + </table> +</div><div class="memdoc"> +<p>FIXME </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname"><></td><td></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd><> </dd></dl> +<dl class="section author"><dt>Author</dt><dd>Martin Schaller (04/2008) </dd></dl> + +</div> +</div> +</div><!-- contents --> +</div><!-- doc-content --> +<!-- start footer part --> +<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> + <ul> + <li class="navelem"><a class="el" href="route_8c.html">route.c</a></li> + <li class="footer">Generated by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li> + </ul> +</div> +</body> +</html> |