summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/include/gnuradio/logger.h
diff options
context:
space:
mode:
authorDavid Winter <david.winter@analog.com>2021-06-28 09:46:48 +0200
committermormj <34754695+mormj@users.noreply.github.com>2021-07-02 14:05:04 -0400
commit4071620361e32264c2581a77d104c12bfef62133 (patch)
treee12472cc8582dde463d12c0cf2db9df44d2eb839 /gnuradio-runtime/include/gnuradio/logger.h
parent078d40ddeab957fcc91060131a4b3a1dfe9df676 (diff)
gr: logger: Add logger_get_configured_logger()
A helper method is added to gr/lib/logger.cc to facilitate the allocation of loggers which are automatically configured according to the local GNURadio configuration. Signed-off-by: David Winter <david.winter@analog.com>
Diffstat (limited to 'gnuradio-runtime/include/gnuradio/logger.h')
-rw-r--r--gnuradio-runtime/include/gnuradio/logger.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/gnuradio-runtime/include/gnuradio/logger.h b/gnuradio-runtime/include/gnuradio/logger.h
index 1ce26a16d6..6891706fb0 100644
--- a/gnuradio-runtime/include/gnuradio/logger.h
+++ b/gnuradio-runtime/include/gnuradio/logger.h
@@ -61,6 +61,9 @@ typedef log4cpp::Category* logger_ptr;
#define GR_LOG_ASSIGN_LOGPTR(logger, name) logger = gr::logger_get_logger(name)
+#define GR_LOG_ASSIGN_CONFIGURED_LOGPTR(logger, name) \
+ logger = gr::logger_get_configured_logger(name)
+
#define GR_CONFIG_LOGGER(config) gr::logger_config::load_config(config)
#define GR_CONFIG_AND_WATCH_LOGGER(config, period) \
@@ -68,6 +71,9 @@ typedef log4cpp::Category* logger_ptr;
#define GR_LOG_GETLOGGER(logger, name) gr::logger_ptr logger = gr::logger_get_logger(name)
+#define GR_LOG_GET_CONFIGURED_LOGGER(logger, name) \
+ gr::logger_ptr logger = gr::logger_get_configured_logger(name)
+
#define GR_SET_LEVEL(name, level) \
{ \
gr::logger_ptr logger = gr::logger_get_logger(name); \
@@ -379,6 +385,19 @@ public:
GR_RUNTIME_API logger_ptr logger_get_logger(std::string name);
/*!
+ * \brief Retrieve a pointer to a fully configured logger by name
+ *
+ * Retrieves a logger pointer.
+ * This method differs from logger_get_logger in that it configures the logger to
+ * reflect the current gnuradio configuration, including log level and log output file.
+ *
+ * \p name.
+ *
+ * \param name Name of the logger for which a pointer is requested
+ */
+GR_RUNTIME_API logger_ptr logger_get_configured_logger(const std::string& name);
+
+/*!
* \brief Load logger's configuration file.
*
* Initialize the GNU Radio logger by loading the configuration file