Refactor of API interfaces
[src/app-framework-binder.git] / src / afb-apis.h
index ce33de1..0254466 100644 (file)
@@ -21,12 +21,19 @@ struct afb_req;
 struct afb_context;
 struct afb_xreq;
 
-struct afb_api
+struct afb_api_itf
 {
-       void *closure;
        void (*call)(void *closure, struct afb_xreq *xreq);
        int (*service_start)(void *closure, int share_session, int onneed);
        void (*update_hooks)(void *closure);
+       int (*get_verbosity)(void *closure);
+       void (*set_verbosity)(void *closure, int level);
+};
+
+struct afb_api
+{
+       void *closure;
+       struct afb_api_itf *itf;
 };
 
 extern void afb_apis_set_timeout(int to);
@@ -41,4 +48,9 @@ extern int afb_apis_start_service(const char *name, int share_session, int onnee
 extern void afb_apis_call(struct afb_xreq *xreq);
 extern void afb_apis_call_direct(struct afb_xreq *xreq);
 
-extern void afb_apis_update_hooks();
+extern void afb_apis_update_hooks(const char *api);
+
+extern void afb_apis_set_verbosity(const char *api, int level);
+extern int afb_apis_get_verbosity(const char *api);
+extern const char **afb_apis_get_names();
+