summaryrefslogtreecommitdiff
path: root/maptool_8h_source.html
diff options
context:
space:
mode:
authorCircle CI <circleci@navit-project.org>2017-10-30 00:23:00 +0000
committerCircle CI <circleci@navit-project.org>2017-10-30 00:23:00 +0000
commit82b0529430d6bbfa9d1ebe3c8706c2a37a033b12 (patch)
treea7d8c6e13a25a4add493f7ab74bbd45530d5bfb5 /maptool_8h_source.html
parent3d234b7049c094314ae60de2779cd6672a04d90c (diff)
downloadnavit-82b0529430d6bbfa9d1ebe3c8706c2a37a033b12.tar.gz
Update doc for commit c4e55b27cca91d761c9f4385cddb65b2eb5f8e3c
Diffstat (limited to 'maptool_8h_source.html')
-rw-r--r--maptool_8h_source.html496
1 files changed, 496 insertions, 0 deletions
diff --git a/maptool_8h_source.html b/maptool_8h_source.html
new file mode 100644
index 000000000..cdf84c6fd
--- /dev/null
+++ b/maptool_8h_source.html
@@ -0,0 +1,496 @@
+<!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: maptool/maptool.h Source File</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
+ &#160;<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&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;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&#160;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&#160;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('maptool_8h_source.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">maptool.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;</div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;coord.h&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;item.h&quot;</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &quot;attr.h&quot;</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;geom.h&quot;</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;types.h&quot;</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBCRYPTO</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;openssl/md5.h&gt;</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#define sq(x) ((double)(x)*(x))</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#define BUFFER_SIZE 1280</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#define debug_tile(x) 0</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define debug_itembin(x) 0</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#define RELATION_MEMBER_PRINT_FORMAT &quot;%d:&quot;LONGLONG_FMT&quot;:%s&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define RELATION_MEMBER_PARSE_FORMAT &quot;%d:&quot;LONGLONG_FMT&quot;:%n&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structtile__data.html"> 40</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtile__data.html">tile_data</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordtype">char</span> <a class="code" href="structbuffer.html">buffer</a>[1024];</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">int</span> tile_depth;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">struct </span><a class="code" href="structrect.html">rect</a> item_bbox;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">struct </span><a class="code" href="structrect.html">rect</a> tile_bbox;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;};</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structtile__parameter.html"> 47</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtile__parameter.html">tile_parameter</a> {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">int</span> min;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">int</span> max;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">int</span> overlap;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">enum</span> attr_type attr_to_copy;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;};</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structtile__info.html"> 54</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtile__info.html">tile_info</a> {</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">int</span> write;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">int</span> maxlen;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="struct__GList.html">GList</a> **tiles_list;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; FILE *tilesdir_out;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;};</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structtile__head.html"> 62</a></span>&#160;<span class="keyword">extern</span> <span class="keyword">struct </span><a class="code" href="structtile__head.html">tile_head</a> {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordtype">int</span> num_subtiles;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">int</span> total_size;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">char</span> *name;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">char</span> *zip_data;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">int</span> total_size_used;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">int</span> zipnum;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">int</span> process;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">struct </span><a class="code" href="structtile__head.html">tile_head</a> *next;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// char subtiles[0];</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;} *tile_head_root;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structitem__bin.html"> 85</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structitem__bin.html#af3af4e011f1de5681669f934c4437f2e"> 87</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structitem__bin.html#af3af4e011f1de5681669f934c4437f2e">len</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structitem__bin.html#a62ca855cd6422eb9a0af32552a7192c4"> 89</a></span>&#160; <span class="keyword">enum</span> item_type <a class="code" href="structitem__bin.html#a62ca855cd6422eb9a0af32552a7192c4">type</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structitem__bin.html#a3a82ee0325b7fd5862193ac5479c428d"> 91</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structitem__bin.html#a3a82ee0325b7fd5862193ac5479c428d">clen</a>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;};</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structattr__bin.html"> 101</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structattr__bin.html">attr_bin</a> {</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structattr__bin.html#a225f7e97e79cb7b5f9f3a447fb1c9a92"> 103</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structattr__bin.html#a225f7e97e79cb7b5f9f3a447fb1c9a92">len</a>;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507"> 105</a></span>&#160; <span class="keyword">enum</span> attr_type <a class="code" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">type</a>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;};</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structitem__bin__sink__func.html"> 109</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> {</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; int (*func)(<span class="keyword">struct </span><a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *func, <span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct </span><a class="code" href="structtile__data.html">tile_data</a> *<a class="code" href="structtile__data.html">tile_data</a>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">void</span> *priv_data[8];</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;};</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structitem__bin__sink.html"> 114</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink.html">item_bin_sink</a> {</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">void</span> *priv_data[8];</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="struct__GList.html">GList</a> *sink_funcs;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;};</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#define NODE_ID_BITS 56</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structnode__item.html"> 119</a></span>&#160;<span class="preprocessor"></span><span class="keyword">struct </span><a class="code" href="structnode__item.html">node_item</a> {</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">struct </span><a class="code" href="structcoord.html">coord</a> c;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> nd_id:NODE_ID_BITS;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">char</span> ref_way;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;};</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">struct </span><a class="code" href="structzip__info.html">zip_info</a>;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keyword">struct </span><a class="code" href="structcountry__table.html">country_table</a>;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> osmid;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#define OSMID_FMT ULONGLONG_FMT</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structfiles__relation__processing.html"> 137</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structfiles__relation__processing.html">files_relation_processing</a> {</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; FILE *ways_in;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; FILE *ways_out;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; FILE *nodes_in;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; FILE *nodes_out;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; FILE *nodes2_in;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; FILE *nodes2_out;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;};</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment">/* boundaries.c */</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="structboundary.html"> 148</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structboundary.html">boundary</a> {</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *ib;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">struct </span><a class="code" href="structcountry__table.html">country_table</a> *<a class="code" href="structcountry.html">country</a>;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordtype">char</span> *iso2;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="struct__GList.html">GList</a> *segments,*sorted_segments;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="struct__GList.html">GList</a> *children;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">struct </span><a class="code" href="structrect.html">rect</a> r;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; osmid admin_centre;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;};</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">char</span> *osm_tag_value(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keywordtype">char</span> *key);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;osmid boundary_relid(<span class="keyword">struct</span> <a class="code" href="structboundary.html">boundary</a> *b);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<a class="code" href="struct__GList.html">GList</a> *process_boundaries(FILE *boundaries, FILE *ways);</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<a class="code" href="struct__GList.html">GList</a> *boundary_find_matches(<a class="code" href="struct__GList.html">GList</a> *bl, <span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c);</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="keywordtype">void</span> free_boundaries(<a class="code" href="struct__GList.html">GList</a> *l);</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment">/* buffer.c */</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="structbuffer.html"> 171</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structbuffer.html">buffer</a> {</div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="structbuffer.html#afd143fb91159f1b37173bcc469308600"> 173</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structbuffer.html#afd143fb91159f1b37173bcc469308600">malloced_step</a>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="structbuffer.html#ae6f15b2064e33de08e16e316ed1ce67f"> 175</a></span>&#160; <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="structbuffer.html#ae6f15b2064e33de08e16e316ed1ce67f">malloced</a>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="structbuffer.html#a0d86c461fecdc90bf044e7715b8e1876"> 177</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *<a class="code" href="structbuffer.html#a0d86c461fecdc90bf044e7715b8e1876">base</a>;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="structbuffer.html#ab0dad21387a06c0cc06756776575940e"> 179</a></span>&#160; <span class="keywordtype">long</span> <span class="keywordtype">long</span> <a class="code" href="structbuffer.html#ab0dad21387a06c0cc06756776575940e">size</a>;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;};</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="keywordtype">void</span> save_buffer(<span class="keywordtype">char</span> *filename, <span class="keyword">struct</span> <a class="code" href="structbuffer.html">buffer</a> *b, <span class="keywordtype">long</span> <span class="keywordtype">long</span> offset);</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="keywordtype">void</span> load_buffer(<span class="keywordtype">char</span> *filename, <span class="keyword">struct</span> <a class="code" href="structbuffer.html">buffer</a> *b, <span class="keywordtype">long</span> <span class="keywordtype">long</span> offset, <span class="keywordtype">long</span> <span class="keywordtype">long</span> size);</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="keywordtype">long</span> <span class="keywordtype">long</span> sizeof_buffer(<span class="keywordtype">char</span> *filename);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment">/* ch.c */</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keywordtype">void</span> ch_generate_tiles(<span class="keywordtype">char</span> *map_suffix, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, FILE *tilesdir_out, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>);</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keywordtype">void</span> ch_assemble_map(<span class="keywordtype">char</span> *map_suffix, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>);</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment">/* coastline.c */</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="keywordtype">void</span> process_coastlines(FILE *in, FILE *out);</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment">/* itembin.c */</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="keywordtype">int</span> item_bin_read(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, FILE *in);</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keywordtype">void</span> item_bin_set_type(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> item_type type);</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keywordtype">void</span> item_bin_init(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> item_type type);</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="keywordtype">void</span> item_bin_add_coord(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c, <span class="keywordtype">int</span> count);</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="keywordtype">void</span> item_bin_add_coord_reverse(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c, <span class="keywordtype">int</span> count);</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="keywordtype">void</span> item_bin_bbox(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r);</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="keywordtype">void</span> item_bin_copy_coord(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *from, <span class="keywordtype">int</span> dir);</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="keywordtype">void</span> item_bin_copy_attr(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *from, <span class="keyword">enum</span> attr_type <a class="code" href="structattr.html">attr</a>);</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="keywordtype">void</span> item_bin_add_coord_rect(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="keywordtype">int</span> attr_bin_write_data(<span class="keyword">struct</span> <a class="code" href="structattr__bin.html">attr_bin</a> *ab, <span class="keyword">enum</span> attr_type type, <span class="keywordtype">void</span> *data, <span class="keywordtype">int</span> size);</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="keywordtype">int</span> attr_bin_write_attr(<span class="keyword">struct</span> <a class="code" href="structattr__bin.html">attr_bin</a> *ab, <span class="keyword">struct</span> <a class="code" href="structattr.html">attr</a> *<a class="code" href="structattr.html">attr</a>);</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr_data(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type type, <span class="keywordtype">void</span> *data, <span class="keywordtype">int</span> size);</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structattr.html">attr</a> *<a class="code" href="structattr.html">attr</a>);</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr_int(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type type, <span class="keywordtype">int</span> val);</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="keywordtype">void</span> *item_bin_get_attr(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type type, <span class="keywordtype">void</span> *last);</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="keyword">struct </span><a class="code" href="structattr__bin.html">attr_bin</a> * item_bin_get_attr_bin(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type <a class="code" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">type</a>, <span class="keywordtype">void</span> *last);</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="keyword">struct </span><a class="code" href="structattr__bin.html">attr_bin</a> * item_bin_get_attr_bin_last(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr_longlong(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type <a class="code" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">type</a>, <span class="keywordtype">long</span> <span class="keywordtype">long</span> val);</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr_string(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type <a class="code" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">type</a>, <span class="keywordtype">char</span> *str);</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="keywordtype">void</span> item_bin_add_attr_range(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type <a class="code" href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">type</a>, <span class="keywordtype">short</span> min, <span class="keywordtype">short</span> max);</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="keywordtype">void</span> item_bin_remove_attr(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keywordtype">void</span> *ptr);</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="keywordtype">void</span> item_bin_write(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, FILE *out);</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *item_bin_dup(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keywordtype">void</span> item_bin_write_clipped(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structtile__parameter.html">tile_parameter</a> *param, <span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *out);</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keywordtype">void</span> item_bin_dump(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, FILE *out);</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="keywordtype">void</span> dump_itembin(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keywordtype">void</span> item_bin_set_type_by_population(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keywordtype">int</span> population);</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="keywordtype">void</span> item_bin_write_match(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">enum</span> attr_type <a class="code" href="structitem__bin.html#a62ca855cd6422eb9a0af32552a7192c4">type</a>, <span class="keyword">enum</span> attr_type match, <span class="keywordtype">int</span> maxdepth, FILE *out);</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="keywordtype">int</span> item_bin_sort_file(<span class="keywordtype">char</span> *in_file, <span class="keywordtype">char</span> *out_file, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keywordtype">int</span> *size);</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="keywordtype">void</span> clip_line(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keyword">struct</span> <a class="code" href="structtile__parameter.html">tile_parameter</a> *param, <span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *out);</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="keywordtype">void</span> clip_polygon(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keyword">struct</span> <a class="code" href="structtile__parameter.html">tile_parameter</a> *param, <span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *out);</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="keyword">struct </span><a class="code" href="structgeom__poly__segment.html">geom_poly_segment</a> *item_bin_to_poly_segment(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keywordtype">int</span> type);</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment">/* itembin_buffer.c */</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="keyword">struct </span><a class="code" href="structnode__item.html">node_item</a> *read_node_item(FILE *in);</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *read_item(FILE *in);</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *read_item_range(FILE *in, <span class="keywordtype">int</span> *min, <span class="keywordtype">int</span> *max);</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *init_item(<span class="keyword">enum</span> item_type <a class="code" href="structitem__bin.html#a62ca855cd6422eb9a0af32552a7192c4">type</a>);</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="keyword">extern</span> <span class="keyword">struct </span><a class="code" href="structitem__bin.html">item_bin</a> *tmp_item_bin;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="comment">/* maptool.c */</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> slice_size;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> attr_debug_level;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>;</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> ignore_unknown;</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="keyword">extern</span> GHashTable *dedupe_ways_hash;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> slices;</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="keyword">extern</span> <span class="keyword">struct </span><a class="code" href="structbuffer.html">buffer</a> node_buffer;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> processed_nodes, processed_nodes_out, processed_ways, processed_relations, processed_tiles;</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> bytes_read;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> overlap;</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> unknown_country;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> experimental;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="keywordtype">void</span> sig_alrm(<span class="keywordtype">int</span> sig);</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="keywordtype">void</span> sig_alrm_end(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment">/* misc.c */</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="keyword">extern</span> <span class="keyword">struct </span><a class="code" href="structrect.html">rect</a> world_bbox;</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="keywordtype">void</span> bbox_extend(<span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r);</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="keywordtype">void</span> bbox(<span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c, <span class="keywordtype">int</span> count, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r);</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="keywordtype">int</span> contains_bbox(<span class="keywordtype">int</span> xl, <span class="keywordtype">int</span> yl, <span class="keywordtype">int</span> xh, <span class="keywordtype">int</span> yh, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r);</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="keywordtype">int</span> bbox_contains_coord(<span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keyword">struct</span> <a class="code" href="structcoord.html">coord</a> *c);</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="keywordtype">int</span> bbox_contains_bbox(<span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *out, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *in);</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="keywordtype">long</span> <span class="keywordtype">long</span> bbox_area(<span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> <span class="keyword">const</span> *r);</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="keywordtype">void</span> phase1_map(<a class="code" href="struct__GList.html">GList</a> *maps, FILE *out_ways, FILE *out_nodes);</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="keywordtype">void</span> dump(FILE *in);</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="keywordtype">int</span> phase4(FILE **in, <span class="keywordtype">int</span> in_count, <span class="keywordtype">int</span> with_range, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, FILE *tilesdir_out, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>);</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="keywordtype">int</span> phase5(FILE **in, FILE **references, <span class="keywordtype">int</span> in_count, <span class="keywordtype">int</span> with_range, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>);</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="keywordtype">void</span> process_binfile(FILE *in, FILE *out);</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="keywordtype">void</span> add_aux_tiles(<span class="keywordtype">char</span> *name, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="keywordtype">void</span> cat(FILE *in, FILE *out);</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="keywordtype">int</span> item_order_by_type(<span class="keyword">enum</span> item_type type);</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment">/* osm.c */</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structmaptool__osm.html"> 275</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structmaptool__osm.html">maptool_osm</a> {</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; FILE *boundaries;</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; FILE *turn_restrictions;</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; FILE *associated_streets;</div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; FILE *house_number_interpolations;</div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; FILE *nodes;</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; FILE *ways;</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; FILE *line2poi;</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; FILE *poly2poi;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; FILE *towns;</div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;};</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="keyword">enum</span> relation_member_type {</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; UNUSED,</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; rel_member_node,</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; rel_member_way,</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; rel_member_relation,</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;};</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="keywordtype">void</span> osm_warning(<span class="keywordtype">char</span> *type, osmid <span class="keywordtype">id</span>, <span class="keywordtype">int</span> cont, <span class="keywordtype">char</span> *fmt, ...);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="keywordtype">void</span> osm_info(<span class="keywordtype">char</span> *type, osmid <span class="keywordtype">id</span>, <span class="keywordtype">int</span> cont, <span class="keywordtype">char</span> *fmt, ...);</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="keywordtype">void</span> osm_add_tag(<span class="keywordtype">char</span> *k, <span class="keywordtype">char</span> *v);</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="keywordtype">void</span> osm_add_node(osmid <span class="keywordtype">id</span>, <span class="keywordtype">double</span> lat, <span class="keywordtype">double</span> lon);</div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="keywordtype">void</span> osm_add_way(osmid <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="keywordtype">void</span> osm_add_relation(osmid <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="keywordtype">void</span> osm_end_relation(<span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="keywordtype">void</span> osm_add_member(<span class="keyword">enum</span> relation_member_type type, osmid ref, <span class="keywordtype">char</span> *role);</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="keywordtype">void</span> osm_end_way(<span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="keywordtype">void</span> osm_end_node(<span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="keywordtype">void</span> osm_add_nd(osmid ref);</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;osmid item_bin_get_id(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="keywordtype">void</span> flush_nodes(<span class="keywordtype">int</span> <span class="keyword">final</span>);</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="keywordtype">void</span> sort_countries(<span class="keywordtype">int</span> keep_tmpfiles);</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="keywordtype">void</span> process_associated_streets(FILE *in, <span class="keyword">struct</span> <a class="code" href="structfiles__relation__processing.html">files_relation_processing</a> *files_relproc);</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="keywordtype">void</span> process_house_number_interpolations(FILE *in, <span class="keyword">struct</span> <a class="code" href="structfiles__relation__processing.html">files_relation_processing</a> *files_relproc);</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="keywordtype">void</span> process_turn_restrictions(FILE *in, FILE *coords, FILE *ways, FILE *ways_index, FILE *out);</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="keywordtype">void</span> process_turn_restrictions_old(FILE *in, FILE *coords, FILE *ways, FILE *ways_index, FILE *out);</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="keywordtype">void</span> clear_node_item_buffer(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="keywordtype">void</span> ref_ways(FILE *in);</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="keywordtype">void</span> resolve_ways(FILE *in, FILE *out);</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> item_bin_get_nodeid(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> item_bin_get_wayid(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> item_bin_get_relationid(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib);</div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="keywordtype">void</span> process_way2poi(FILE *in, FILE *out, <span class="keywordtype">int</span> type);</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="keywordtype">int</span> map_resolve_coords_and_split_at_intersections(FILE *in, FILE *out, FILE *out_index, FILE *out_graph, FILE *out_coastline, <span class="keywordtype">int</span> <span class="keyword">final</span>);</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="keywordtype">void</span> write_countrydir(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>, <span class="keywordtype">int</span> max_index_size);</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="keywordtype">void</span> osm_process_towns(FILE *in, FILE *boundaries, FILE *ways, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>);</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keywordtype">void</span> load_countries(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="keywordtype">void</span> remove_countryfiles(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="keyword">struct </span><a class="code" href="structcountry__table.html">country_table</a> * country_from_iso2(<span class="keywordtype">char</span> *iso);</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="keywordtype">void</span> osm_init(FILE*);</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="comment">/* osm_o5m.c */</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="keywordtype">int</span> map_collect_data_osm_o5m(FILE *in, <span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment">/* osm_psql.c */</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="keywordtype">int</span> map_collect_data_osm_db(<span class="keywordtype">char</span> *dbstr, <span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment">/* osm_protobuf.c */</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="keywordtype">int</span> map_collect_data_osm_protobuf(FILE *in, <span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="keywordtype">int</span> osm_protobufdb_load(FILE *in, <span class="keywordtype">char</span> *dir);</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="comment">/* osm_relations.c */</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;<span class="keyword">struct </span><a class="code" href="structrelations.html">relations</a> * relations_new(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="keyword">struct </span><a class="code" href="structrelations__func.html">relations_func</a> *relations_func_new(<span class="keywordtype">void</span> (*func)(<span class="keywordtype">void</span> *func_priv, <span class="keywordtype">void</span> *relation_priv, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *member, <span class="keywordtype">void</span> *member_priv), <span class="keywordtype">void</span> *func_priv);</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="keywordtype">void</span> relations_add_relation_member_entry(<span class="keyword">struct</span> <a class="code" href="structrelations.html">relations</a> *rel, <span class="keyword">struct</span> <a class="code" href="structrelations__func.html">relations_func</a> *func, <span class="keywordtype">void</span> *relation_priv, <span class="keywordtype">void</span> *member_priv, <span class="keyword">enum</span> relation_member_type type, osmid <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="keywordtype">void</span> relations_add_relation_default_entry(<span class="keyword">struct</span> <a class="code" href="structrelations.html">relations</a> *rel, <span class="keyword">struct</span> <a class="code" href="structrelations__func.html">relations_func</a> *func);</div>
+<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="keywordtype">void</span> relations_process(<span class="keyword">struct</span> <a class="code" href="structrelations.html">relations</a> *rel, FILE *nodes, FILE *ways);</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="keywordtype">void</span> relations_destroy(<span class="keyword">struct</span> <a class="code" href="structrelations.html">relations</a> *rel);</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="comment">/* osm_xml.c */</span></div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="keywordtype">int</span> osm_xml_get_attribute(<span class="keywordtype">char</span> *xml, <span class="keywordtype">char</span> *attribute, <span class="keywordtype">char</span> *<a class="code" href="structbuffer.html">buffer</a>, <span class="keywordtype">int</span> buffer_size);</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="keywordtype">void</span> osm_xml_decode_entities(<span class="keywordtype">char</span> *<a class="code" href="structbuffer.html">buffer</a>);</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="keywordtype">int</span> map_collect_data_osm(FILE *in, <span class="keyword">struct</span> <a class="code" href="structmaptool__osm.html">maptool_osm</a> *osm);</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<span class="comment">/* sourcesink.c */</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *item_bin_sink_new(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *item_bin_sink_func_new(<span class="keywordtype">int</span> (*func)(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *func, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structtile__data.html">tile_data</a> *<a class="code" href="structtile__data.html">tile_data</a>));</div>
+<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<span class="keywordtype">void</span> item_bin_sink_func_destroy(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *func);</div>
+<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="keywordtype">void</span> item_bin_sink_add_func(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *sink, <span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *func);</div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="keywordtype">void</span> item_bin_sink_destroy(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *sink);</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="keywordtype">int</span> item_bin_write_to_sink(<span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *sink, <span class="keyword">struct</span> <a class="code" href="structtile__data.html">tile_data</a> *<a class="code" href="structtile__data.html">tile_data</a>);</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *file_reader_new(FILE *in, <span class="keywordtype">int</span> limit, <span class="keywordtype">int</span> offset);</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="keywordtype">int</span> file_reader_finish(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *sink);</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="keywordtype">int</span> file_writer_process(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *func, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structtile__data.html">tile_data</a> *<a class="code" href="structtile__data.html">tile_data</a>);</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *file_writer_new(FILE *out);</div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="keywordtype">int</span> file_writer_finish(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *file_writer);</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;<span class="keywordtype">int</span> tile_collector_process(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *tile_collector, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, <span class="keyword">struct</span> <a class="code" href="structtile__data.html">tile_data</a> *<a class="code" href="structtile__data.html">tile_data</a>);</div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;<span class="keyword">struct </span><a class="code" href="structitem__bin__sink__func.html">item_bin_sink_func</a> *tile_collector_new(<span class="keyword">struct</span> <a class="code" href="structitem__bin__sink.html">item_bin_sink</a> *out);</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;<span class="comment">/* tempfile.c */</span></div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="keywordtype">char</span> *tempfile_name(<span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;FILE *tempfile(<span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> mode);</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="keywordtype">void</span> tempfile_unlink(<span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<span class="keywordtype">void</span> tempfile_rename(<span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keywordtype">char</span> *from, <span class="keywordtype">char</span> *to);</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;<span class="comment">/* tile.c */</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="keyword">extern</span> GHashTable *tile_hash,*tile_hash2;</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;</div>
+<div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="structaux__tile.html"> 379</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structaux__tile.html">aux_tile</a> {</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordtype">char</span> *name;</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordtype">char</span> *filename;</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordtype">int</span> size;</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;};</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct__GList.html">GList</a> *aux_tile_list;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="keywordtype">int</span> <a class="code" href="structtile.html">tile</a>(<span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keywordtype">char</span> *<a class="code" href="structsuffix.html">suffix</a>, <span class="keywordtype">char</span> *ret, <span class="keywordtype">int</span> max, <span class="keywordtype">int</span> overlap, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *tr);</div>
+<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="keywordtype">void</span> tile_bbox(<span class="keywordtype">char</span> *<a class="code" href="structtile.html">tile</a>, <span class="keyword">struct</span> <a class="code" href="structrect.html">rect</a> *r, <span class="keywordtype">int</span> overlap);</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;<span class="keywordtype">int</span> tile_len(<span class="keywordtype">char</span> *<a class="code" href="structtile.html">tile</a>);</div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<span class="keywordtype">void</span> load_tilesdir(FILE *in);</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;<span class="keywordtype">void</span> tile_write_item_to_tile(<span class="keyword">struct</span> <a class="code" href="structtile__info.html">tile_info</a> *info, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, FILE *reference, <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;<span class="keywordtype">void</span> tile_write_item_minmax(<span class="keyword">struct</span> <a class="code" href="structtile__info.html">tile_info</a> *info, <span class="keyword">struct</span> <a class="code" href="structitem__bin.html">item_bin</a> *ib, FILE *reference, <span class="keywordtype">int</span> min, <span class="keywordtype">int</span> max);</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;<span class="keywordtype">int</span> add_aux_tile(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>, <span class="keywordtype">char</span> *name, <span class="keywordtype">char</span> *filename, <span class="keywordtype">int</span> size);</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="keywordtype">int</span> write_aux_tiles(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>);</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="keywordtype">int</span> create_tile_hash(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;<span class="keywordtype">void</span> write_tilesdir(<span class="keyword">struct</span> <a class="code" href="structtile__info.html">tile_info</a> *info, <span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>, FILE *out);</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;<span class="keywordtype">void</span> merge_tiles(<span class="keyword">struct</span> <a class="code" href="structtile__info.html">tile_info</a> *info);</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;<span class="keyword">struct </span><a class="code" href="structattr.html">attr</a> map_information_attrs[32];</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="keywordtype">void</span> index_init(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> version);</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;<span class="keywordtype">void</span> index_submap_add(<span class="keyword">struct</span> <a class="code" href="structtile__info.html">tile_info</a> *info, <span class="keyword">struct</span> <a class="code" href="structtile__head.html">tile_head</a> *th);</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="comment">/* zip.c */</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="keywordtype">void</span> write_zipmember(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *<a class="code" href="structzip__info.html">zip_info</a>, <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> filelen, <span class="keywordtype">char</span> *data, <span class="keywordtype">int</span> data_size);</div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="keywordtype">void</span> zip_write_index(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="keywordtype">int</span> zip_write_directory(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;<span class="keyword">struct </span><a class="code" href="structzip__info.html">zip_info</a> *zip_new(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="keywordtype">void</span> zip_set_md5(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> on);</div>
+<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="keywordtype">int</span> zip_get_md5(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *out);</div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;<span class="keywordtype">void</span> zip_set_zip64(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> on);</div>
+<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;<span class="keywordtype">void</span> zip_set_compression_level(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> <a class="code" href="structlevel.html">level</a>);</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="keywordtype">void</span> zip_set_maxnamelen(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> max);</div>
+<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="keywordtype">int</span> zip_get_maxnamelen(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;<span class="keywordtype">int</span> zip_add_member(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;<span class="keywordtype">int</span> zip_set_timestamp(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">char</span> *<a class="code" href="structtimestamp.html">timestamp</a>);</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;<span class="keywordtype">int</span> zip_open(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">char</span> *out, <span class="keywordtype">char</span> *dir, <span class="keywordtype">char</span> *index);</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;FILE *zip_get_index(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="keywordtype">int</span> zip_get_zipnum(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="keywordtype">void</span> zip_set_zipnum(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info, <span class="keywordtype">int</span> num);</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;<span class="keywordtype">void</span> zip_close(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="keywordtype">void</span> zip_destroy(<span class="keyword">struct</span> <a class="code" href="structzip__info.html">zip_info</a> *info);</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment">/* Break compilation on 32 bit architectures, as we&#39;re going to cast osmid&#39;s to gpointer to use them as keys to GHashTable&#39;s */</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno"><a class="line" href="structmaptool__force__64.html"> 423</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structmaptool__force__64.html">maptool_force_64</a> {<span class="keywordtype">char</span> s[<span class="keyword">sizeof</span>(gpointer)&lt;<span class="keyword">sizeof</span>(osmid)?-1:1];};</div>
+<div class="ttc" id="structzip__info_html"><div class="ttname"><a href="structzip__info.html">zip_info</a></div><div class="ttdef"><b>Definition:</b> zip.c:37</div></div>
+<div class="ttc" id="structattr__bin_html"><div class="ttname"><a href="structattr__bin.html">attr_bin</a></div><div class="ttdef"><b>Definition:</b> maptool.h:101</div></div>
+<div class="ttc" id="structtile__head_html"><div class="ttname"><a href="structtile__head.html">tile_head</a></div><div class="ttdef"><b>Definition:</b> maptool.h:62</div></div>
+<div class="ttc" id="structrelations_html"><div class="ttname"><a href="structrelations.html">relations</a></div><div class="ttdef"><b>Definition:</b> osm_relations.c:25</div></div>
+<div class="ttc" id="structboundary_html"><div class="ttname"><a href="structboundary.html">boundary</a></div><div class="ttdef"><b>Definition:</b> maptool.h:148</div></div>
+<div class="ttc" id="structbuffer_html_ab0dad21387a06c0cc06756776575940e"><div class="ttname"><a href="structbuffer.html#ab0dad21387a06c0cc06756776575940e">buffer::size</a></div><div class="ttdeci">long long size</div><div class="ttdef"><b>Definition:</b> maptool.h:179</div></div>
+<div class="ttc" id="structlevel_html"><div class="ttname"><a href="structlevel.html">level</a></div><div class="ttdef"><b>Definition:</b> garmin_img.c:513</div></div>
+<div class="ttc" id="structbuffer_html_ae6f15b2064e33de08e16e316ed1ce67f"><div class="ttname"><a href="structbuffer.html#ae6f15b2064e33de08e16e316ed1ce67f">buffer::malloced</a></div><div class="ttdeci">long long malloced</div><div class="ttdef"><b>Definition:</b> maptool.h:175</div></div>
+<div class="ttc" id="structcountry_html"><div class="ttname"><a href="structcountry.html">country</a></div><div class="ttdef"><b>Definition:</b> country.c:31</div></div>
+<div class="ttc" id="structbuffer_html_afd143fb91159f1b37173bcc469308600"><div class="ttname"><a href="structbuffer.html#afd143fb91159f1b37173bcc469308600">buffer::malloced_step</a></div><div class="ttdeci">int malloced_step</div><div class="ttdef"><b>Definition:</b> maptool.h:173</div></div>
+<div class="ttc" id="structaux__tile_html"><div class="ttname"><a href="structaux__tile.html">aux_tile</a></div><div class="ttdef"><b>Definition:</b> maptool.h:379</div></div>
+<div class="ttc" id="structitem__bin_html_af3af4e011f1de5681669f934c4437f2e"><div class="ttname"><a href="structitem__bin.html#af3af4e011f1de5681669f934c4437f2e">item_bin::len</a></div><div class="ttdeci">int len</div><div class="ttdef"><b>Definition:</b> maptool.h:87</div></div>
+<div class="ttc" id="structitem__bin_html"><div class="ttname"><a href="structitem__bin.html">item_bin</a></div><div class="ttdef"><b>Definition:</b> maptool.h:85</div></div>
+<div class="ttc" id="struct__GList_html"><div class="ttname"><a href="struct__GList.html">_GList</a></div><div class="ttdef"><b>Definition:</b> glist.h:40</div></div>
+<div class="ttc" id="structitem__bin__sink__func_html"><div class="ttname"><a href="structitem__bin__sink__func.html">item_bin_sink_func</a></div><div class="ttdef"><b>Definition:</b> maptool.h:109</div></div>
+<div class="ttc" id="structitem__bin__sink_html"><div class="ttname"><a href="structitem__bin__sink.html">item_bin_sink</a></div><div class="ttdef"><b>Definition:</b> maptool.h:114</div></div>
+<div class="ttc" id="structfiles__relation__processing_html"><div class="ttname"><a href="structfiles__relation__processing.html">files_relation_processing</a></div><div class="ttdef"><b>Definition:</b> maptool.h:137</div></div>
+<div class="ttc" id="structtile_html"><div class="ttname"><a href="structtile.html">tile</a></div><div class="ttdoc">A map tile, a rectangular region of the world. </div><div class="ttdef"><b>Definition:</b> binfile.c:64</div></div>
+<div class="ttc" id="structsuffix_html"><div class="ttname"><a href="structsuffix.html">suffix</a></div><div class="ttdef"><b>Definition:</b> navigation.c:111</div></div>
+<div class="ttc" id="structitem__bin_html_a3a82ee0325b7fd5862193ac5479c428d"><div class="ttname"><a href="structitem__bin.html#a3a82ee0325b7fd5862193ac5479c428d">item_bin::clen</a></div><div class="ttdeci">int clen</div><div class="ttdef"><b>Definition:</b> maptool.h:91</div></div>
+<div class="ttc" id="structtile__data_html"><div class="ttname"><a href="structtile__data.html">tile_data</a></div><div class="ttdef"><b>Definition:</b> maptool.h:40</div></div>
+<div class="ttc" id="structbuffer_html_a0d86c461fecdc90bf044e7715b8e1876"><div class="ttname"><a href="structbuffer.html#a0d86c461fecdc90bf044e7715b8e1876">buffer::base</a></div><div class="ttdeci">unsigned char * base</div><div class="ttdef"><b>Definition:</b> maptool.h:177</div></div>
+<div class="ttc" id="structitem__bin_html_a62ca855cd6422eb9a0af32552a7192c4"><div class="ttname"><a href="structitem__bin.html#a62ca855cd6422eb9a0af32552a7192c4">item_bin::type</a></div><div class="ttdeci">enum item_type type</div><div class="ttdef"><b>Definition:</b> maptool.h:89</div></div>
+<div class="ttc" id="structrelations__func_html"><div class="ttname"><a href="structrelations__func.html">relations_func</a></div><div class="ttdef"><b>Definition:</b> osm_relations.c:32</div></div>
+<div class="ttc" id="structcountry__table_html"><div class="ttname"><a href="structcountry__table.html">country_table</a></div><div class="ttdef"><b>Definition:</b> osm.c:138</div></div>
+<div class="ttc" id="structattr_html"><div class="ttname"><a href="structattr.html">attr</a></div><div class="ttdef"><b>Definition:</b> attr.h:156</div></div>
+<div class="ttc" id="structnode__item_html"><div class="ttname"><a href="structnode__item.html">node_item</a></div><div class="ttdef"><b>Definition:</b> maptool.h:119</div></div>
+<div class="ttc" id="structgeom__poly__segment_html"><div class="ttname"><a href="structgeom__poly__segment.html">geom_poly_segment</a></div><div class="ttdef"><b>Definition:</b> geom.h:47</div></div>
+<div class="ttc" id="structtimestamp_html"><div class="ttname"><a href="structtimestamp.html">timestamp</a></div><div class="ttdef"><b>Definition:</b> garmin_img.c:84</div></div>
+<div class="ttc" id="structrect_html"><div class="ttname"><a href="structrect.html">rect</a></div><div class="ttdef"><b>Definition:</b> geom.h:35</div></div>
+<div class="ttc" id="structtile__info_html"><div class="ttname"><a href="structtile__info.html">tile_info</a></div><div class="ttdef"><b>Definition:</b> maptool.h:54</div></div>
+<div class="ttc" id="structtile__parameter_html"><div class="ttname"><a href="structtile__parameter.html">tile_parameter</a></div><div class="ttdef"><b>Definition:</b> maptool.h:47</div></div>
+<div class="ttc" id="structbuffer_html"><div class="ttname"><a href="structbuffer.html">buffer</a></div><div class="ttdef"><b>Definition:</b> maptool.h:171</div></div>
+<div class="ttc" id="structcoord_html"><div class="ttname"><a href="structcoord.html">coord</a></div><div class="ttdef"><b>Definition:</b> coord.h:34</div></div>
+<div class="ttc" id="structattr__bin_html_a225f7e97e79cb7b5f9f3a447fb1c9a92"><div class="ttname"><a href="structattr__bin.html#a225f7e97e79cb7b5f9f3a447fb1c9a92">attr_bin::len</a></div><div class="ttdeci">int len</div><div class="ttdef"><b>Definition:</b> maptool.h:103</div></div>
+<div class="ttc" id="structattr__bin_html_aebb2e5921fa6786feb393ff7b28c2507"><div class="ttname"><a href="structattr__bin.html#aebb2e5921fa6786feb393ff7b28c2507">attr_bin::type</a></div><div class="ttdeci">enum attr_type type</div><div class="ttdef"><b>Definition:</b> maptool.h:105</div></div>
+<div class="ttc" id="structmaptool__osm_html"><div class="ttname"><a href="structmaptool__osm.html">maptool_osm</a></div><div class="ttdef"><b>Definition:</b> maptool.h:275</div></div>
+<div class="ttc" id="structmaptool__force__64_html"><div class="ttname"><a href="structmaptool__force__64.html">maptool_force_64</a></div><div class="ttdef"><b>Definition:</b> maptool.h:423</div></div>
+</div><!-- fragment --></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="dir_062cf704faf8860ba50e0ddefeb8b4e5.html">maptool</a></li><li class="navelem"><b>maptool.h</b></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>