45 lines
1.8 KiB
C
45 lines
1.8 KiB
C
|
#ifndef FG_NAVCACHE_SCHEMA_HXX
|
||
|
#define FG_NAVCACHE_SCHEMA_HXX
|
||
|
|
||
|
const int SCHEMA_VERSION = 9;
|
||
|
|
||
|
#define SCHEMA_SQL \
|
||
|
"CREATE TABLE properties (key VARCHAR, value VARCHAR);" \
|
||
|
"CREATE TABLE stat_cache (path VARCHAR unique, stamp INT);"\
|
||
|
\
|
||
|
"CREATE TABLE positioned (type INT, ident VARCHAR collate nocase," \
|
||
|
"name VARCHAR collate nocase, airport INT64, lon FLOAT, lat FLOAT," \
|
||
|
"elev_m FLOAT, octree_node INT, cart_x FLOAT, cart_y FLOAT, cart_z FLOAT);" \
|
||
|
\
|
||
|
"CREATE INDEX pos_octree ON positioned(octree_node);" \
|
||
|
"CREATE INDEX pos_ident ON positioned(ident collate nocase);" \
|
||
|
"CREATE INDEX pos_name ON positioned(name collate nocase);" \
|
||
|
"CREATE INDEX pos_apt_type ON positioned(airport, type);"\
|
||
|
\
|
||
|
"CREATE TABLE airport (has_metar BOOL);" \
|
||
|
"CREATE TABLE comm (freq_khz INT,range_nm INT);" \
|
||
|
"CREATE INDEX comm_freq ON comm(freq_khz);" \
|
||
|
\
|
||
|
"CREATE TABLE runway (heading FLOAT, length_ft FLOAT, width_m FLOAT," \
|
||
|
"surface INT, displaced_threshold FLOAT,stopway FLOAT,reciprocal INT64,ils INT64);" \
|
||
|
"CREATE TABLE navaid (freq INT,range_nm INT,multiuse FLOAT, runway INT64,colocated INT64);" \
|
||
|
"CREATE INDEX navaid_freq ON navaid(freq);" \
|
||
|
\
|
||
|
"CREATE TABLE octree (children INT);" \
|
||
|
\
|
||
|
"CREATE TABLE airway (ident VARCHAR collate nocase, network INT);" \
|
||
|
"CREATE INDEX airway_ident ON airway(ident);" \
|
||
|
\
|
||
|
"CREATE TABLE airway_edge (network INT,airway INT64,a INT64,b INT64);" \
|
||
|
"CREATE INDEX airway_edge_from ON airway_edge(a);" \
|
||
|
\
|
||
|
"CREATE TABLE taxi_node (hold_type INT,on_runway BOOL,pushback BOOL);" \
|
||
|
"CREATE TABLE parking (heading FLOAT,radius INT,gate_type VARCHAR," \
|
||
|
"airlines VARCHAR,pushback INT64);" \
|
||
|
"CREATE TABLE groundnet_edge (airport INT64,a INT64,b INT64);" \
|
||
|
"CREATE INDEX groundnet_edge_airport ON groundnet_edge(airport);" \
|
||
|
"CREATE INDEX groundnet_edge_from ON groundnet_edge(a);"
|
||
|
|
||
|
#endif
|
||
|
|