summaryrefslogtreecommitdiff
path: root/navit/maptool/maptool.h
diff options
context:
space:
mode:
authorPierre Grandin <grandinp@altern.org>2016-12-01 19:23:13 +0000
committerPierre Grandin <grandinp@altern.org>2016-12-01 19:23:13 +0000
commit5030d911084584f9b37aeaa916ab43130044edbf (patch)
tree0f0e400aa2c575c3fcdfcceaa6012d2f760e525e /navit/maptool/maptool.h
parent449e5530c4ee68f77691c811f0670cf90e9e58a4 (diff)
parent59bbe485ba74a6df5ec944275ae28fc1bd98981e (diff)
downloadnavit-5030d911084584f9b37aeaa916ab43130044edbf.tar.gz
Merge branch 'trunk' into trac/1341trac/1341
Conflicts: navit/Makefile.am navit/xpm/Makefile.am po/Makefile.am
Diffstat (limited to 'navit/maptool/maptool.h')
-rw-r--r--navit/maptool/maptool.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/navit/maptool/maptool.h b/navit/maptool/maptool.h
index 7fde891dd..eca708591 100644
--- a/navit/maptool/maptool.h
+++ b/navit/maptool/maptool.h
@@ -115,11 +115,11 @@ struct item_bin_sink {
void *priv_data[8];
GList *sink_funcs;
};
-
+#define NODE_ID_BITS 56
struct node_item {
- unsigned int id;
- char ref_way;
struct coord c;
+ unsigned long long int nd_id:NODE_ID_BITS;
+ char ref_way;
};
struct zip_info;
@@ -131,7 +131,7 @@ struct country_table;
* Must be at least 64 bit wide because IDs will soon exceed 32 bit.
*/
typedef unsigned long long int osmid;
-#define OSMID_FMT LONGLONG_FMT
+#define OSMID_FMT ULONGLONG_FMT
/** Files needed for processing a relation. */
struct files_relation_processing {
@@ -418,3 +418,6 @@ int zip_get_zipnum(struct zip_info *info);
void zip_set_zipnum(struct zip_info *info, int num);
void zip_close(struct zip_info *info);
void zip_destroy(struct zip_info *info);
+
+/* Break compilation on 32 bit architectures, as we're going to cast osmid's to gpointer to use them as keys to GHashTable's */
+struct maptool_force_64 {char s[sizeof(gpointer)<sizeof(osmid)?-1:1];};