[RFC PATCH 2/5] history: expand history API

2010-11-22 Thread Andras Domokos
---
 src/history.c |   24 
 src/ofono.h   |4 
 2 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/src/history.c b/src/history.c
index 0229cf5..31efadb 100644
--- a/src/history.c
+++ b/src/history.c
@@ -114,6 +114,30 @@ void __ofono_history_probe_drivers(struct ofono_modem 
*modem)
}
 }
 
+static void history_call_started(struct ofono_atom *atom, void *data)
+{
+   struct ofono_history_context *context = __ofono_atom_get_data(atom);
+   struct history_call_foreach_data *hfd = data;
+
+   if (context->driver->call_started == NULL)
+   return;
+
+   context->driver->call_started(context, hfd->call, hfd->start);
+}
+
+void __ofono_history_call_started(struct ofono_modem *modem,
+   const struct ofono_call *call,
+   time_t start)
+{
+   struct history_call_foreach_data hfd;
+
+   hfd.call = call;
+   hfd.start = start;
+
+   __ofono_modem_foreach_atom(modem, OFONO_ATOM_TYPE_HISTORY,
+   history_call_started, &hfd);
+}
+
 static void history_call_ended(struct ofono_atom *atom, void *data)
 {
struct ofono_history_context *context = __ofono_atom_get_data(atom);
diff --git a/src/ofono.h b/src/ofono.h
index 4d76d20..61a0637 100644
--- a/src/ofono.h
+++ b/src/ofono.h
@@ -368,6 +368,10 @@ void __ofono_netreg_set_base_station_name(struct 
ofono_netreg *netreg,
 
 void __ofono_history_probe_drivers(struct ofono_modem *modem);
 
+void __ofono_history_call_started(struct ofono_modem *modem,
+   const struct ofono_call *call,
+   time_t start);
+
 void __ofono_history_call_ended(struct ofono_modem *modem,
const struct ofono_call *call,
time_t start, time_t end);
-- 
1.7.0.4

___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono


[RFC PATCH 2/5] history: expand history API

2010-11-15 Thread Andras Domokos
---
 src/history.c |   24 
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/src/history.c b/src/history.c
index 0229cf5..31efadb 100644
--- a/src/history.c
+++ b/src/history.c
@@ -114,6 +114,30 @@ void __ofono_history_probe_drivers(struct ofono_modem 
*modem)
}
 }
 
+static void history_call_started(struct ofono_atom *atom, void *data)
+{
+   struct ofono_history_context *context = __ofono_atom_get_data(atom);
+   struct history_call_foreach_data *hfd = data;
+
+   if (context->driver->call_started == NULL)
+   return;
+
+   context->driver->call_started(context, hfd->call, hfd->start);
+}
+
+void __ofono_history_call_started(struct ofono_modem *modem,
+   const struct ofono_call *call,
+   time_t start)
+{
+   struct history_call_foreach_data hfd;
+
+   hfd.call = call;
+   hfd.start = start;
+
+   __ofono_modem_foreach_atom(modem, OFONO_ATOM_TYPE_HISTORY,
+   history_call_started, &hfd);
+}
+
 static void history_call_ended(struct ofono_atom *atom, void *data)
 {
struct ofono_history_context *context = __ofono_atom_get_data(atom);
-- 
1.7.0.4

___
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono