diff --git a/libuavcan/include/uavcan/node/abstract_node.hpp b/libuavcan/include/uavcan/node/abstract_node.hpp index 5602b98513..1357bf7e73 100644 --- a/libuavcan/include/uavcan/node/abstract_node.hpp +++ b/libuavcan/include/uavcan/node/abstract_node.hpp @@ -18,6 +18,7 @@ public: virtual Scheduler& getScheduler() = 0; virtual const Scheduler& getScheduler() const = 0; virtual IMarshalBufferProvider& getMarshalBufferProvider() = 0; + virtual void registerInternalFailure(const char* msg) = 0; Dispatcher& getDispatcher() { return getScheduler().getDispatcher(); } const Dispatcher& getDispatcher() const { return getScheduler().getDispatcher(); } diff --git a/libuavcan/test/node/test_node.hpp b/libuavcan/test/node/test_node.hpp index 2ebbc9bcc0..e978ca4d1b 100644 --- a/libuavcan/test/node/test_node.hpp +++ b/libuavcan/test/node/test_node.hpp @@ -23,6 +23,11 @@ struct TestNode : public uavcan::INode setNodeID(self_node_id); } + void registerInternalFailure(const char* msg) + { + std::cout << "TestNode internal failure: " << msg << std::endl; + } + uavcan::PoolManager<1>& getAllocator() { return poolmgr; } uavcan::Scheduler& getScheduler() { return scheduler; } const uavcan::Scheduler& getScheduler() const { return scheduler; }