Hi Denis,
On 27/04/2011 05:25, Denis Kenzior wrote:
Hi Guillaume,
On 04/22/2011 07:06 AM, Guillaume Zajac wrote:
---
include/emulator.h | 10 +++++++
src/emulator.c | 75 +++++++++++++++++++++++++++++++++++++++++++++++-----
2 files changed, 78 insertions(+), 7 deletions(-)
diff --git a/include/emulator.h b/include/emulator.h
index 5cd894b..29abf55 100644
--- a/include/emulator.h
+++ b/include/emulator.h
@@ -105,6 +105,16 @@ enum ofono_emulator_request_type
ofono_emulator_request_get_type(
void ofono_emulator_set_indicator(struct ofono_emulator *em,
const char *name, int value);
+typedef void (*network_request)(struct ofono_error *, int *,
+ const char **, const char **,
+ const char **, const char **);
+typedef void (*network_release)(void);
+
+void ofono_emulator_add_network_request_cb(struct ofono_emulator *em,
+ network_request cb);
+void ofono_emulator_add_network_release_cb(struct ofono_emulator *em,
+ network_release cb);
+
I really don't like this, you're re-inventing the wheel here. We
already solved this pattern a while ago ;) I suggest you look at
include/gprs-provision.h and examples/provision.c
In looking the example, I should create some emulator network drivers to
get settings and release the network like:
struct emulator_network{
...
}
struct emulator_network_provision_driver{
char *name;
(void)(*get_settings)(struct emulator_network **out_en);
(void)(*release)(void);
}
and un/register drivers into emulator.c
#ifdef __cplusplus
}
#endif
Regards,
-Denis
Kind regards,
Guillaume
_______________________________________________
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono