summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/include/gnuradio/logger.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-runtime/include/gnuradio/logger.h.in')
-rw-r--r--gnuradio-runtime/include/gnuradio/logger.h.in86
1 files changed, 86 insertions, 0 deletions
diff --git a/gnuradio-runtime/include/gnuradio/logger.h.in b/gnuradio-runtime/include/gnuradio/logger.h.in
index 073a6162fb..8e8cd2fb1e 100644
--- a/gnuradio-runtime/include/gnuradio/logger.h.in
+++ b/gnuradio-runtime/include/gnuradio/logger.h.in
@@ -76,10 +76,16 @@ namespace gr {
#define GR_LOG_GET_LEVEL(logger, level)
#define GR_ADD_APPENDER(name,appender)
#define GR_LOG_ADD_APPENDER(logger,appender)
+#define GR_SET_APPENDER(name,appender)
+#define GR_LOG_SET_APPENDER(logger,appender)
#define GR_ADD_CONSOLE_APPENDER(logger,target,pattern)
#define GR_LOG_ADD_CONSOLE_APPENDER(logger,target,pattern)
+#define GR_SET_CONSOLE_APPENDER(logger,target,pattern)
+#define GR_LOG_SET_CONSOLE_APPENDER(logger,target,pattern)
#define GR_ADD_FILE_APPENDER(name,filename,append,pattern)
#define GR_LOG_ADD_FILE_APPENDER(logger,filename,append,pattern)
+#define GR_SET_FILE_APPENDER(name,filename,append,pattern)
+#define GR_LOG_SET_FILE_APPENDER(logger,filename,append,pattern)
#define GR_ADD_ROLLINGFILE_APPENDER(name,filename,filesize,bkup_index,append,mode,pattern)
#define GR_LOG_ADD_ROLLINGFILE_APPENDER(logger,filename,filesize,bkup_index,append,mode,pattern)
#define GR_GET_LOGGER_NAMES(names)
@@ -180,6 +186,13 @@ namespace gr {
#define GR_LOG_ADD_APPENDER(logger, appender) { \
gr::logger_add_appender(logger, appender);}
+#define GR_SET_APPENDER(name, appender) { \
+ gr::logger_ptr logger = gr::logger_get_logger(name); \
+ gr::logger_set_appender(logger,appender);}
+
+#define GR_LOG_SET_APPENDER(logger, appender) { \
+ gr::logger_set_appender(logger, appender);}
+
#define GR_ADD_CONSOLE_APPENDER(name, target, pattern) { \
gr::logger_ptr logger = gr::logger_get_logger(name); \
gr::logger_add_console_appender(logger,target,pattern);}
@@ -187,6 +200,13 @@ namespace gr {
#define GR_LOG_ADD_CONSOLE_APPENDER(logger, target, pattern) { \
gr::logger_add_console_appender(logger,target,pattern);}
+#define GR_SET_CONSOLE_APPENDER(name, target, pattern) { \
+ gr::logger_ptr logger = gr::logger_get_logger(name); \
+ gr::logger_set_console_appender(logger,target,pattern);}
+
+#define GR_LOG_SET_CONSOLE_APPENDER(logger, target, pattern) { \
+ gr::logger_set_console_appender(logger,target,pattern);}
+
#define GR_ADD_FILE_APPENDER(name, filename, append, pattern) { \
gr::logger_ptr logger = gr::logger_get_logger(name); \
gr::logger_add_file_appender(logger,filename,append,pattern);}
@@ -194,6 +214,13 @@ namespace gr {
#define GR_LOG_ADD_FILE_APPENDER(logger, filename, append, pattern) { \
gr::logger_add_file_appender(logger,filename,append,pattern);}
+#define GR_SET_FILE_APPENDER(name, filename, append, pattern) { \
+ gr::logger_ptr logger = gr::logger_get_logger(name); \
+ gr::logger_set_file_appender(logger,filename,append,pattern);}
+
+#define GR_LOG_SET_FILE_APPENDER(logger, filename, append, pattern) { \
+ gr::logger_set_file_appender(logger,filename,append,pattern);}
+
#define GR_ADD_ROLLINGFILE_APPENDER(name, filename, filesize, bkup_index, append, mode, pattern) { \
gr::logger_ptr logger = gr::logger_get_logger(name); \
gr::logger_add_rollingfile_appender(logger,filename,filesize,bkup_index,append,mode,pattern);}
@@ -520,6 +547,17 @@ namespace gr {
std::string appender);
/*!
+ * \brief Sets a console appender to a given logger. Deletes any
+ * existing appenders and adds a new one. To add an additional
+ * appender, use logger_add_appender.
+ *
+ * \param logger Logger to which appender will be added
+ * \param appender Name of appender to add to logger
+ */
+ GR_RUNTIME_API void logger_set_appender(logger_ptr logger,
+ std::string appender);
+
+ /*!
* \brief Add console appender to a given logger
*
* Add console appender to a given logger
@@ -533,6 +571,19 @@ namespace gr {
std::string pattern);
/*!
+ * \brief Sets a new console appender to a given logger after
+ * removing all others. Use logger_add_console_appender to add
+ * another.
+ *
+ * \param logger Logger to which appender will be added
+ * \param target Std target to write 'cout' or 'cerr' (default is cout)
+ * \param pattern Formating pattern for log messages
+ */
+ GR_RUNTIME_API void logger_set_console_appender(logger_ptr logger,
+ std::string target,
+ std::string pattern);
+
+ /*!
* \brief Add file appender to a given logger
*
* Add file appender to a given logger
@@ -547,6 +598,19 @@ namespace gr {
bool append, std::string pattern);
/*!
+ * \brief Set a file appender to a given logger. To add another file
+ * appender, use logger_add_file_appender.
+ *
+ * \param logger Logger to which appender will be added
+ * \param filename File to which log will be written
+ * \param append Overwrite or append to log file
+ * \param pattern Formating pattern for log messages
+ */
+ GR_RUNTIME_API void logger_set_file_appender(logger_ptr logger,
+ std::string filename,
+ bool append, std::string pattern);
+
+ /*!
* \brief Add rolling file appender to a given logger
*
* Add rolling file appender to a given logger
@@ -594,10 +658,16 @@ namespace gr {
#define GR_LOG_GET_LEVEL(logger, level)
#define GR_ADD_APPENDER(name,appender)
#define GR_LOG_ADD_APPENDER(logger,appender)
+#define GR_SET_APPENDER(name,appender)
+#define GR_LOG_SET_APPENDER(logger,appender)
#define GR_ADD_CONSOLE_APPENDER(logger,target,pattern)
#define GR_LOG_ADD_CONSOLE_APPENDER(logger,target,pattern)
+#define GR_SET_CONSOLE_APPENDER(logger,target,pattern)
+#define GR_LOG_SET_CONSOLE_APPENDER(logger,target,pattern)
#define GR_ADD_FILE_APPENDER(name,filename,append,pattern)
#define GR_LOG_ADD_FILE_APPENDER(logger,filename,append,pattern)
+#define GR_SET_FILE_APPENDER(name,filename,append,pattern)
+#define GR_LOG_SET_FILE_APPENDER(logger,filename,append,pattern)
#define GR_ADD_ROLLINGFILE_APPENDER(name,filename,filesize,bkup_index,append,mode,pattern)
#define GR_LOG_ADD_ROLLINGFILE_APPENDER(logger,filename,filesize,bkup_index,append,mode,pattern)
#define GR_GET_LOGGER_NAMES(names)
@@ -703,16 +773,32 @@ namespace gr {
GR_LOG_ADD_APPENDER(d_logger, appender);
}
+ /*! \brief inline function, Method to set an appender to logger by
+ name (define appender in conf file) */
+ void set_appender(std::string appender) {
+ GR_LOG_SET_APPENDER(d_logger, appender);
+ }
+
/*! \brief inline function, Method to add console appender to logger */
void add_console_appender(std::string target,std::string pattern) {
GR_LOG_ADD_CONSOLE_APPENDER(d_logger, target, pattern);
}
+ /*! \brief inline function, Method to set a console appender to logger */
+ void set_console_appender(std::string target,std::string pattern) {
+ GR_LOG_SET_CONSOLE_APPENDER(d_logger, target, pattern);
+ }
+
/*! \brief inline function, Method to add file appender to logger */
void add_file_appender(std::string filename, bool append, std::string pattern) {
GR_LOG_ADD_FILE_APPENDER(d_logger, filename, append, pattern);
}
+ /*! \brief inline function, Method to set a file appender to logger */
+ void set_file_appender(std::string filename, bool append, std::string pattern) {
+ GR_LOG_SET_FILE_APPENDER(d_logger, filename, append, pattern);
+ }
+
/*! \brief inline function, Method to add rolling file appender to logger */
void add_rollingfile_appender(std::string filename, size_t filesize,
int bkup_index, bool append, mode_t mode,