From 983a2ffa9290bee30cbdf7afe230ec4f4efe8714 Mon Sep 17 00:00:00 2001 From: Ing-Dom Date: Fri, 29 Dec 2023 16:09:31 +0100 Subject: [PATCH] wip --- src/knx/logger.cpp | 10 ++++++++++ src/knx/logger.h | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/src/knx/logger.cpp b/src/knx/logger.cpp index 3265e16..5e0e008 100644 --- a/src/knx/logger.cpp +++ b/src/knx/logger.cpp @@ -3,7 +3,17 @@ void KnxLogger::log(const char* message, va_list& values) { + if(_callback) + { + _callback(message, values); + return; + } printf(message, values); } +void KnxLogger::setCallback(KnxLoggerCallback callback) +{ + _callback = callback; +} + KnxLogger knxLogger; \ No newline at end of file diff --git a/src/knx/logger.h b/src/knx/logger.h index ffcaa16..d2eafc8 100644 --- a/src/knx/logger.h +++ b/src/knx/logger.h @@ -20,11 +20,15 @@ Usage: #include "platform.h" +typedef void (*KnxLoggerCallback)(const char* message, va_list& values); class KnxLogger { + protected: + KnxLoggerCallback _callback = nullptr; public: void log(const char* message, va_list& values); + void setCallback(KnxLoggerCallback callback); }; extern KnxLogger knxLogger;