aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2012-08-21 12:18:21 +0200
committerAleksander Morgado <aleksander@lanedo.com>2012-08-23 19:10:59 +0200
commit028a4cc6344240d79f416e791a66c0a8ef89094f (patch)
treeb63e75a3a419e55bde6e4013175a374e3fd0b4ef
parent8c3fa9f1794ce5fd216c0b6ca6d376531d796268 (diff)
base-modem: allow getting/peeking all data ports
-rw-r--r--src/mm-base-modem.c20
-rw-r--r--src/mm-base-modem.h2
2 files changed, 22 insertions, 0 deletions
diff --git a/src/mm-base-modem.c b/src/mm-base-modem.c
index c71973e3..3218e87e 100644
--- a/src/mm-base-modem.c
+++ b/src/mm-base-modem.c
@@ -554,6 +554,26 @@ mm_base_modem_peek_best_data_port (MMBaseModem *self)
return NULL;
}
+GList *
+mm_base_modem_get_data_ports (MMBaseModem *self)
+{
+ GList *copy;
+
+ g_return_val_if_fail (MM_IS_BASE_MODEM (self), NULL);
+
+ copy = g_list_copy (self->priv->data);
+ g_list_foreach (copy, (GFunc)g_object_ref, NULL);
+ return copy;
+}
+
+GList *
+mm_base_modem_peek_data_ports (MMBaseModem *self)
+{
+ g_return_val_if_fail (MM_IS_BASE_MODEM (self), NULL);
+
+ return self->priv->data;
+}
+
MMAtSerialPort *
mm_base_modem_get_best_at_port (MMBaseModem *self,
GError **error)
diff --git a/src/mm-base-modem.h b/src/mm-base-modem.h
index 87623f39..04570f40 100644
--- a/src/mm-base-modem.h
+++ b/src/mm-base-modem.h
@@ -120,6 +120,7 @@ MMGpsSerialPort *mm_base_modem_peek_port_gps (MMBaseModem *self);
MMQmiPort *mm_base_modem_peek_port_qmi (MMBaseModem *self);
MMAtSerialPort *mm_base_modem_peek_best_at_port (MMBaseModem *self, GError **error);
MMPort *mm_base_modem_peek_best_data_port (MMBaseModem *self);
+GList *mm_base_modem_peek_data_ports (MMBaseModem *self);
MMAtSerialPort *mm_base_modem_get_port_primary (MMBaseModem *self);
MMAtSerialPort *mm_base_modem_get_port_secondary (MMBaseModem *self);
@@ -129,6 +130,7 @@ MMGpsSerialPort *mm_base_modem_get_port_gps (MMBaseModem *self);
MMQmiPort *mm_base_modem_get_port_qmi (MMBaseModem *self);
MMAtSerialPort *mm_base_modem_get_best_at_port (MMBaseModem *self, GError **error);
MMPort *mm_base_modem_get_best_data_port (MMBaseModem *self);
+GList *mm_base_modem_get_data_ports (MMBaseModem *self);
void mm_base_modem_set_valid (MMBaseModem *self,
gboolean valid);