X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-hook.h;h=9131621c8119706a7c7512e5099e5f2009320798;hb=6f13ad1989875b5a0ce50b24211fd1fba093735f;hp=f315cc089b5020d04b8f4cfeaae559198362a254;hpb=4521c1e7ae5371ab9d639adc617d17fb4e8ded0c;p=src%2Fapp-framework-binder.git diff --git a/src/afb-hook.h b/src/afb-hook.h index f315cc08..9131621c 100644 --- a/src/afb-hook.h +++ b/src/afb-hook.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2016, 2017, 2018 "IoT.bzh" + * Copyright (C) 2016-2019 "IoT.bzh" * Author José Bollo * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -17,6 +17,8 @@ #pragma once +#if WITH_AFB_HOOK /***********************************************************/ + #include #include @@ -197,6 +199,7 @@ extern struct json_object *afb_hook_xreq_get_client_info(const struct afb_xreq * #define afb_hook_flag_api_on_event 0x04000000 #define afb_hook_flag_api_legacy_unstore_req 0x08000000 #define afb_hook_flag_api_on_event_handler 0x10000000 +#define afb_hook_flag_api_settings 0x20000000 /* common flags */ /* extra flags */ @@ -208,7 +211,8 @@ extern struct json_object *afb_hook_xreq_get_client_info(const struct afb_xreq * |afb_hook_flag_api_call\ |afb_hook_flag_api_callsync\ |afb_hook_flag_api_start\ - |afb_hook_flag_api_queue_job) + |afb_hook_flag_api_queue_job\ + |afb_hook_flag_api_settings) #define afb_hook_flags_api_extra (afb_hook_flag_api_get_event_loop\ @@ -311,6 +315,7 @@ struct afb_hook_api_itf { void (*hook_api_delete_api)(void *closure, const struct afb_hookid *hookid, const struct afb_export *export, int result); void (*hook_api_on_event_handler_before)(void *closure, const struct afb_hookid *hookid, const struct afb_export *export, const char *event, int event_x2, struct json_object *object, const char *pattern); void (*hook_api_on_event_handler_after)(void *closure, const struct afb_hookid *hookid, const struct afb_export *export, const char *event, int event_x2, struct json_object *object, const char *pattern); + void (*hook_api_settings)(void *closure, const struct afb_hookid *hookid, const struct afb_export *export, struct json_object *object); }; extern void afb_hook_api_event_broadcast_before(const struct afb_export *export, const char *name, struct json_object *object); @@ -351,6 +356,7 @@ extern int afb_hook_api_class_require(const struct afb_export *export, int resul extern int afb_hook_api_delete_api(const struct afb_export *export, int result); extern void afb_hook_api_on_event_handler_before(const struct afb_export *export, const char *event, int event_x2, struct json_object *object, const char *pattern); extern void afb_hook_api_on_event_handler_after(const struct afb_export *export, const char *event, int event_x2, struct json_object *object, const char *pattern); +extern struct json_object *afb_hook_api_settings(const struct afb_export *export, struct json_object *object); extern int afb_hook_flags_api(const char *api); extern struct afb_hook_api *afb_hook_create_api(const char *api, int flags, struct afb_hook_api_itf *itf, void *closure); @@ -455,3 +461,4 @@ extern struct afb_hook_global *afb_hook_addref_global(struct afb_hook_global *ho extern void afb_hook_unref_global(struct afb_hook_global *hook); +#endif /* WITH_AFB_HOOK *******************************************************/