diff options
-rw-r--r-- | openbsc/include/openbsc/gsm_data_shared.h | 18 | ||||
-rw-r--r-- | openbsc/src/libcommon/gsm_data.c | 2 |
2 files changed, 20 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gsm_data_shared.h b/openbsc/include/openbsc/gsm_data_shared.h index 011e0aa96..d76862877 100644 --- a/openbsc/include/openbsc/gsm_data_shared.h +++ b/openbsc/include/openbsc/gsm_data_shared.h @@ -400,11 +400,29 @@ enum neigh_list_manual_mode { NL_MODE_MANUAL_SI5SEP = 2, /* SI2 and SI5 have separate neighbor lists */ }; +enum bts_loc_fix { + BTS_LOC_FIX_INVALID = 0, + BTS_LOC_FIX_2D = 1, + BTS_LOC_FIX_3D = 2, +}; + +struct bts_location { + struct llist_head list; + time_t tstamp; + enum bts_loc_fix valid; + double lat; + double lon; + double height; +}; + /* One BTS */ struct gsm_bts { /* list header in net->bts_list */ struct llist_head list; + /* Geographical location of the BTS */ + struct llist_head loc_list; + /* number of ths BTS in network */ uint8_t nr; /* human readable name / description */ diff --git a/openbsc/src/libcommon/gsm_data.c b/openbsc/src/libcommon/gsm_data.c index 6b15bd06c..3df69d69c 100644 --- a/openbsc/src/libcommon/gsm_data.c +++ b/openbsc/src/libcommon/gsm_data.c @@ -399,6 +399,8 @@ struct gsm_bts *gsm_bts_alloc_register(struct gsm_network *net, enum gsm_bts_typ INIT_LLIST_HEAD(&bts->abis_queue); + INIT_LLIST_HEAD(&bts->loc_list); + return bts; } |