diff options
-rw-r--r-- | src/mm-call-list.c | 14 | ||||
-rw-r--r-- | src/mm-call-list.h | 6 |
2 files changed, 20 insertions, 0 deletions
diff --git a/src/mm-call-list.c b/src/mm-call-list.c index a3b914bb..e4798d47 100644 --- a/src/mm-call-list.c +++ b/src/mm-call-list.c @@ -54,6 +54,20 @@ struct _MMCallListPrivate { /*****************************************************************************/ +void +mm_call_list_foreach (MMCallList *self, + MMCallListForeachFunc callback, + gpointer user_data) +{ + GList *l; + + g_assert (callback); + for (l = self->priv->list; l; l = g_list_next (l)) + callback (MM_BASE_CALL (l->data), user_data); +} + +/*****************************************************************************/ + guint mm_call_list_get_count (MMCallList *self) { diff --git a/src/mm-call-list.h b/src/mm-call-list.h index 4167cd08..0555f48b 100644 --- a/src/mm-call-list.h +++ b/src/mm-call-list.h @@ -71,4 +71,10 @@ gboolean mm_call_list_delete_call (MMCallList *self, MMBaseCall *mm_call_list_get_first_incoming_call (MMCallList *self, MMCallState incoming_state); +typedef void (* MMCallListForeachFunc) (MMBaseCall *call, + gpointer user_data); +void mm_call_list_foreach (MMCallList *self, + MMCallListForeachFunc callback, + gpointer user_data); + #endif /* MM_CALL_LIST_H */ |