From 404d36e7ce15941d07bded3c70ad91070a4d4a35 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Bollo?= Date: Wed, 28 Jun 2017 14:44:11 +0200 Subject: [PATCH] Add new macro for handling verbosity MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit It might be interesting to test the verbosity level before making resource consuming stuff. Se example below: if (afb_verbose_notice()) { char *s = compute(); NOTICE("I got %s", s); free(s); } Change-Id: I7be4248a86fc2a2a23820ec822b36d9fccafb203 Signed-off-by: José Bollo --- include/afb/afb-binding.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/include/afb/afb-binding.h b/include/afb/afb-binding.h index 3215c594..69be174a 100644 --- a/include/afb/afb-binding.h +++ b/include/afb/afb-binding.h @@ -179,6 +179,10 @@ typedef struct afb_service_itf afb_service_itf; #if AFB_BINDING_VERSION == 2 # define afb_binding afb_binding_v2 +# define afb_get_verbosity afb_get_verbosity_v2 +# define afb_get_daemon afb_get_daemon_v2 +# define afb_get_service afb_get_service_v2 + # define AFB_SESSION_NONE AFB_SESSION_NONE_V2 # define AFB_SESSION_CLOSE AFB_SESSION_CLOSE_V2 @@ -229,6 +233,20 @@ typedef struct afb_service_itf afb_service_itf; #endif +/***************************************************************************************************/ + +#if AFB_BINDING_VERSION >= 2 + +# define afb_verbose_error() (afb_get_verbosity() >= 0) +# define afb_verbose_warning() (afb_get_verbosity() >= 1) +# define afb_verbose_notice() (afb_get_verbosity() >= 1) +# define afb_verbose_info() (afb_get_verbosity() >= 2) +# define afb_verbose_debug() (afb_get_verbosity() >= 3) + +#endif + +/***************************************************************************************************/ + #if !defined(AFB_BINDING_PRAGMA_NO_VERBOSE_UNPREFIX) # if !defined(AFB_BINDING_PRAGMA_NO_VERBOSE_MACRO) # define ERROR AFB_ERROR -- 2.16.6