summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2018-08-08 14:05:32 +0200
committerDan Williams <dcbw@redhat.com>2018-08-21 17:02:39 +0000
commit2e0471fe6a51a686f870547cdb5d7c4608a1a18a (patch)
tree1f09b3a1e79b5bd9e27fb51b65eea5be117efea6
parent6262e844f5a8cde8554f12292611118ff85cc145 (diff)
downloadModemManager-2e0471fe6a51a686f870547cdb5d7c4608a1a18a.tar.gz
libmm-glib: new common helpers to check band types
-rw-r--r--libmm-glib/mm-common-helpers.c26
-rw-r--r--libmm-glib/mm-common-helpers.h5
2 files changed, 31 insertions, 0 deletions
diff --git a/libmm-glib/mm-common-helpers.c b/libmm-glib/mm-common-helpers.c
index 3a009ad3d..3470f64f5 100644
--- a/libmm-glib/mm-common-helpers.c
+++ b/libmm-glib/mm-common-helpers.c
@@ -668,6 +668,32 @@ mm_common_bands_garray_sort (GArray *array)
g_array_sort (array, (GCompareFunc) cmp_band);
}
+gboolean
+mm_common_band_is_gsm (MMModemBand band)
+{
+ return ((band >= MM_MODEM_BAND_EGSM && band <= MM_MODEM_BAND_G850) ||
+ (band >= MM_MODEM_BAND_G450 && band <= MM_MODEM_BAND_G810));
+}
+
+gboolean
+mm_common_band_is_utran (MMModemBand band)
+{
+ return ((band >= MM_MODEM_BAND_UTRAN_1 && band <= MM_MODEM_BAND_UTRAN_7) ||
+ (band >= MM_MODEM_BAND_UTRAN_10 && band <= MM_MODEM_BAND_UTRAN_32));
+}
+
+gboolean
+mm_common_band_is_eutran (MMModemBand band)
+{
+ return (band >= MM_MODEM_BAND_EUTRAN_1 && band <= MM_MODEM_BAND_EUTRAN_71);
+}
+
+gboolean
+mm_common_band_is_cdma (MMModemBand band)
+{
+ return (band >= MM_MODEM_BAND_CDMA_BC0 && band <= MM_MODEM_BAND_CDMA_BC19);
+}
+
GArray *
mm_common_mode_combinations_variant_to_garray (GVariant *variant)
{
diff --git a/libmm-glib/mm-common-helpers.h b/libmm-glib/mm-common-helpers.h
index 229186ce6..6f8b68acc 100644
--- a/libmm-glib/mm-common-helpers.h
+++ b/libmm-glib/mm-common-helpers.h
@@ -106,6 +106,11 @@ GVariant *mm_common_build_bands_unknown (void);
gboolean mm_common_bands_garray_cmp (GArray *a, GArray *b);
void mm_common_bands_garray_sort (GArray *array);
+gboolean mm_common_band_is_gsm (MMModemBand band);
+gboolean mm_common_band_is_utran (MMModemBand band);
+gboolean mm_common_band_is_eutran (MMModemBand band);
+gboolean mm_common_band_is_cdma (MMModemBand band);
+
GArray *mm_common_mode_combinations_variant_to_garray (GVariant *variant);
MMModemModeCombination *mm_common_mode_combinations_variant_to_array (GVariant *variant,
guint *n_modes);