diff options
author | Guido Günther <agx@sigxcpu.org> | 2025-03-28 16:49:58 +0100 |
---|---|---|
committer | Dan Williams <dan@ioncontrol.co> | 2025-03-29 22:19:17 +0000 |
commit | d6367c76c0e188e9d3e9dee6bb9415c11bd9093c (patch) | |
tree | b20893358f10da5c6a044a827c6f91fd568a5ee4 | |
parent | 4414344d828bb59e6ef1389a08a4e8699628e7ef (diff) |
libmm-glib,cell-broadcast: Support channels property
Support reading channels in the API too
Signed-off-by: Guido Günther <agx@sigxcpu.org>
-rw-r--r-- | libmm-glib/mm-modem-cell-broadcast.c | 11 | ||||
-rw-r--r-- | libmm-glib/mm-modem-cell-broadcast.h | 7 |
2 files changed, 18 insertions, 0 deletions
diff --git a/libmm-glib/mm-modem-cell-broadcast.c b/libmm-glib/mm-modem-cell-broadcast.c index fe7fd829..5792a5c7 100644 --- a/libmm-glib/mm-modem-cell-broadcast.c +++ b/libmm-glib/mm-modem-cell-broadcast.c @@ -43,6 +43,8 @@ G_DEFINE_TYPE (MMModemCellBroadcast, mm_modem_cell_broadcast, MM_GDBUS_TYPE_MODE struct _MMModemCellBroadcastPrivate { /* Common mutex to sync access */ GMutex mutex; + + PROPERTY_ARRAY_DECLARE (channels) }; /*****************************************************************************/ @@ -91,6 +93,11 @@ mm_modem_cell_broadcast_dup_path (MMModemCellBroadcast *self) RETURN_NON_EMPTY_STRING (value); } +PROPERTY_ARRAY_DEFINE (channels, + ModemCellBroadcast, modem_cell_broadcast, MODEM_CELL_BROADCAST, + MMCellBroadcastChannels, + mm_common_cell_broadcast_channels_variant_to_garray) + /*****************************************************************************/ typedef struct { @@ -411,6 +418,8 @@ mm_modem_cell_broadcast_init (MMModemCellBroadcast *self) { self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MM_TYPE_MODEM_CELL_BROADCAST, MMModemCellBroadcastPrivate); g_mutex_init (&self->priv->mutex); + + PROPERTY_INITIALIZE (channels, "channels") } static void @@ -420,6 +429,8 @@ finalize (GObject *object) g_mutex_clear (&self->priv->mutex); + PROPERTY_ARRAY_FINALIZE (channels) + G_OBJECT_CLASS (mm_modem_cell_broadcast_parent_class)->finalize (object); } diff --git a/libmm-glib/mm-modem-cell-broadcast.h b/libmm-glib/mm-modem-cell-broadcast.h index a1049caf..b080ee5a 100644 --- a/libmm-glib/mm-modem-cell-broadcast.h +++ b/libmm-glib/mm-modem-cell-broadcast.h @@ -68,6 +68,13 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC (MMModemCellBroadcast, g_object_unref) const gchar *mm_modem_cell_broadcast_get_path (MMModemCellBroadcast *self); gchar *mm_modem_cell_broadcast_dup_path (MMModemCellBroadcast *self); +gboolean mm_modem_cell_broadcast_get_channels (MMModemCellBroadcast *self, + MMCellBroadcastChannels **channels, + guint *n_storages); +gboolean mm_modem_cell_broadcast_peek_channels (MMModemCellBroadcast *self, + const MMCellBroadcastChannels **channels, + guint *n_storages); + void mm_modem_cell_broadcast_list (MMModemCellBroadcast *self, GCancellable *cancellable, GAsyncReadyCallback callback, |