handsfree-audio: Implement card create / remove

This commit is contained in:
Denis Kenzior 2013-02-26 11:03:00 -06:00
parent d202b18a9d
commit dfeb91fc08
1 changed files with 36 additions and 0 deletions

View File

@ -42,6 +42,11 @@ enum hfp_codec {
HFP_CODEC_MSBC = 0x02,
};
struct ofono_handsfree_card {
char *remote;
char *local;
};
struct agent {
char *owner;
char *path;
@ -52,6 +57,37 @@ struct agent {
static struct agent *agent = NULL;
static int ref_count = 0;
static GSList *card_list = 0;
struct ofono_handsfree_card *ofono_handsfree_card_create(const char *remote,
const char *local)
{
struct ofono_handsfree_card *card;
card = g_new0(struct ofono_handsfree_card, 1);
card->remote = g_strdup(remote);
card->local = g_strdup(local);
card_list = g_slist_prepend(card_list, card);
return card;
}
void ofono_handsfree_card_remove(struct ofono_handsfree_card *card)
{
DBG("%p", card);
if (card == NULL)
return;
card_list = g_slist_remove(card_list, card);
g_free(card->remote);
g_free(card->local);
g_free(card);
}
static void agent_free(struct agent *agent)
{