]> err.no Git - mapper/commitdiff
Move table and index creation to db.c
authorKaj-Michael Lang <milang@onion.tal.org>
Mon, 4 Feb 2008 15:03:10 +0000 (17:03 +0200)
committerKaj-Michael Lang <milang@onion.tal.org>
Mon, 4 Feb 2008 15:03:10 +0000 (17:03 +0200)
src/db.c
src/db.h
src/osm.c

index 308129522d2639568e50f4ee32f79ac784a07df3..1a6725fedd407640af35a9188257ba540b6247f9 100644 (file)
--- a/src/db.c
+++ b/src/db.c
 #include <sqlite3.h>
 
 #include "db.h"
+#include "osm-sql-tables.h"
 
 sqlite3 *_db=NULL;
 gchar *_mapper_db=NULL;
 
+void
+db_create_tables(sqlite3 *db)
+{
+sqlite3_exec(db, OSM_TABLE_NODES,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_NODE_TAGS,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_TAGS,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_UPDATES,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_N2N,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_NAMES,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_PC,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_NAMES_NLS,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_WAY_REF,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_PLACES,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_POI,NULL, NULL, NULL);
+sqlite3_exec(db, OSM_TABLE_POI_CATEGORY,NULL, NULL, NULL);
+}
+
+void
+db_create_indexes(sqlite3 *db)
+{
+sqlite3_exec(db, OSM_INDEX_1, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_2, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_3, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_4, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_5, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_6, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_7, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_8, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_9, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_10, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_11, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_12, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_13, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_14, NULL, NULL, NULL);
+sqlite3_exec(db, OSM_INDEX_15, NULL, NULL, NULL);
+}
+
 /**
  * A simple check to test if a table exists
  *
@@ -110,3 +149,6 @@ sqlite3_exec(*db, "PRAGMA cache_size = 8000;", NULL, NULL, NULL);
 
 return TRUE;
 }
+
+
+
index b84a2daf75d9488aff4cf9980d15823436cfa164..227703955883ed8736d024dab895121a911883ff 100644 (file)
--- a/src/db.h
+++ b/src/db.h
@@ -32,4 +32,7 @@ gboolean db_check(sqlite3 *db, const gchar *table);
 gboolean db_close(sqlite3 **db);
 gboolean db_exec(sqlite3_stmt *sql);
 
+void db_create_tables(sqlite3 *db);
+void db_create_indexes(sqlite3 *db);
+
 #endif
index ee9aa822b5e0cd76bf434885d0df3a453bdf5da5..53f9bccfe9a7e7b16a40129a2b8207526c59557b 100644 (file)
--- a/src/osm.c
+++ b/src/osm.c
@@ -50,7 +50,7 @@
 #include "osm.h"
 #include "latlon.h"
 #include "db.h"
-#include "osm-sql-tables.h"
+
 
 #if 0
 #define VERBOSE
@@ -437,43 +437,7 @@ sqlite3_finalize(sql.delete_way_names_nls);
 sqlite3_finalize(sql.insert_way_names_nls);
 }
 
-void
-db_create_tables(sqlite3 *db)
-{
-sqlite3_exec(db, OSM_TABLE_NODES,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_NODE_TAGS,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_TAGS,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_UPDATES,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_N2N,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_NAMES,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_PC,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_NAMES_NLS,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_WAY_REF,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_PLACES,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_POI,NULL, NULL, NULL);
-sqlite3_exec(db, OSM_TABLE_POI_CATEGORY,NULL, NULL, NULL);
-}
 
-void
-db_create_indexes(sqlite3 *db)
-{
-sqlite3_exec(db, OSM_INDEX_1, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_2, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_3, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_4, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_5, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_6, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_7, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_8, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_9, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_10, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_11, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_12, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_13, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_14, NULL, NULL, NULL);
-sqlite3_exec(db, OSM_INDEX_15, NULL, NULL, NULL);
-}
 
 void
 db_prepare(sqlite3 *db)
@@ -947,7 +911,7 @@ g_print("\n");
 }
 #endif
 
-static gboolean
+static inline gboolean
 osm_node_check_box(gdouble nlat, gdouble nlon)
 {
 if (use_bbox==FALSE)
@@ -1014,6 +978,8 @@ static node *
 osm_find_node(guint32 nid)
 {
 node *n;
+
+g_assert(osm_nodes);
 n=g_hash_table_lookup(osm_nodes, GINT_TO_POINTER(nid));
 #if 0
 if (!n)