Add netreg getter functions
authorDenis Kenzior <denkenz@gmail.com>
Thu, 10 Sep 2009 23:19:48 +0000 (18:19 -0500)
committerDenis Kenzior <denkenz@gmail.com>
Thu, 10 Sep 2009 23:19:48 +0000 (18:19 -0500)
- Get Location, CellID
- Current Operator
- Registration Status
- Technology

include/netreg.h
src/network.c

index edb1187..a19409e 100644 (file)
@@ -108,6 +108,13 @@ void ofono_netreg_remove(struct ofono_netreg *netreg);
 void ofono_netreg_set_data(struct ofono_netreg *netreg, void *data);
 void *ofono_netreg_get_data(struct ofono_netreg *netreg);
 
+int ofono_netreg_get_location(struct ofono_netreg *netreg);
+int ofono_netreg_get_cellid(struct ofono_netreg *netreg);
+int ofono_netreg_get_status(struct ofono_netreg *netreg);
+int ofono_netreg_get_technology(struct ofono_netreg *netreg);
+const struct ofono_network_operator *
+       ofono_netreg_get_operator(struct ofono_netreg *netreg);
+
 #ifdef __cplusplus
 }
 #endif
index 7139e60..23d4dc3 100644 (file)
@@ -1319,6 +1319,50 @@ static void sim_spn_read_cb(int ok,
        }
 }
 
+int ofono_netreg_get_location(struct ofono_netreg *netreg)
+{
+       if (netreg == NULL)
+               return -1;
+
+       return netreg->location;
+}
+
+int ofono_netreg_get_cellid(struct ofono_netreg *netreg)
+{
+       if (netreg == NULL)
+               return -1;
+
+       return netreg->cellid;
+}
+
+int ofono_netreg_get_status(struct ofono_netreg *netreg)
+{
+       if (netreg == NULL)
+               return -1;
+
+       return netreg->status;
+}
+
+int ofono_netreg_get_technology(struct ofono_netreg *netreg)
+{
+       if (netreg == NULL)
+               return -1;
+
+       return netreg->technology;
+}
+
+const struct ofono_network_operator *
+       ofono_netreg_get_operator(struct ofono_netreg *netreg)
+{
+       if (netreg == NULL)
+               return NULL;
+
+       if (netreg->current_operator == NULL)
+               return NULL;
+
+       return netreg->current_operator->info;
+}
+
 int ofono_netreg_driver_register(const struct ofono_netreg_driver *d)
 {
        DBG("driver: %p, name: %s", d, d->name);