diff --git a/examples/LinkWirelessMultiboot_demo/src/scenes/MultibootScene.cpp b/examples/LinkWirelessMultiboot_demo/src/scenes/MultibootScene.cpp index 6330764..6c832aa 100644 --- a/examples/LinkWirelessMultiboot_demo/src/scenes/MultibootScene.cpp +++ b/examples/LinkWirelessMultiboot_demo/src/scenes/MultibootScene.cpp @@ -186,10 +186,7 @@ void MultibootScene::load() { #endif #ifdef LINK_RAW_WIRELESS_ENABLE_LOGGING - // TODO: FIX! - linkWirelessMultiboot->linkRawWireless.logger = [](std::string string) { - log(string); - }; + linkWirelessMultiboot->_setLogger([](std::string string) { log(string); }); #endif log("---"); diff --git a/lib/LinkWireless.hpp b/lib/LinkWireless.hpp index d5b1061..aca4285 100644 --- a/lib/LinkWireless.hpp +++ b/lib/LinkWireless.hpp @@ -754,6 +754,15 @@ class LinkWireless { ? 0 : sessionState.outgoingMessages.peek().packetId; } +#ifdef LINK_RAW_WIRELESS_ENABLE_LOGGING + /** + * @brief Sets a logger function. + * \warning This is internal API! + */ + void _setLogger(LinkRawWireless::Logger logger) { + linkRawWireless.logger = logger; + } +#endif /** * @brief This method is called by the VBLANK interrupt handler. diff --git a/lib/LinkWirelessMultiboot.hpp b/lib/LinkWirelessMultiboot.hpp index a5cb30c..739bbe1 100644 --- a/lib/LinkWirelessMultiboot.hpp +++ b/lib/LinkWirelessMultiboot.hpp @@ -210,6 +210,16 @@ class LinkWirelessMultiboot { return success; } +#ifdef LINK_RAW_WIRELESS_ENABLE_LOGGING + /** + * @brief Sets a logger function. + * \warning This is internal API! + */ + void _setLogger(LinkRawWireless::Logger logger) { + linkRawWireless.logger = logger; + } +#endif + private: LinkRawWireless linkRawWireless; LinkWirelessOpenSDK linkWirelessOpenSDK;