From 9d20d983b50b1f01e0c46d8364799cf23b33da9f Mon Sep 17 00:00:00 2001 From: Pavel Kirienko Date: Sat, 9 May 2015 12:38:12 +0300 Subject: [PATCH] Restart request server moved to header --- .../protocol/restart_request_server.hpp | 25 +++++++++++-- .../protocol/uc_restart_request_server.cpp | 36 ------------------- 2 files changed, 23 insertions(+), 38 deletions(-) delete mode 100644 libuavcan/src/protocol/uc_restart_request_server.cpp diff --git a/libuavcan/include/uavcan/protocol/restart_request_server.hpp b/libuavcan/include/uavcan/protocol/restart_request_server.hpp index 4f9a414e13..d3cd23b5dc 100644 --- a/libuavcan/include/uavcan/protocol/restart_request_server.hpp +++ b/libuavcan/include/uavcan/protocol/restart_request_server.hpp @@ -5,6 +5,7 @@ #ifndef UAVCAN_PROTOCOL_RESTART_REQUEST_SERVER_HPP_INCLUDED #define UAVCAN_PROTOCOL_RESTART_REQUEST_SERVER_HPP_INCLUDED +#include #include #include #include @@ -44,7 +45,24 @@ class UAVCAN_EXPORT RestartRequestServer : Noncopyable IRestartRequestHandler* handler_; void handleRestartNode(const ReceivedDataStructure& request, - protocol::RestartNode::Response& response) const; + protocol::RestartNode::Response& response) const + { + UAVCAN_TRACE("RestartRequestServer", "Request from snid=%i", int(request.getSrcNodeID().get())); + response.ok = false; + if (request.magic_number == protocol::RestartNode::Request::MAGIC_NUMBER) + { + if (handler_) + { + response.ok = handler_->handleRestartRequest(request.getSrcNodeID()); + } + UAVCAN_TRACE("RestartRequestServer", "%s", (response.ok ? "Accepted" : "Rejected")); + } + else + { + UAVCAN_TRACE("RestartRequestServer", "Invalid magic number 0x%llx", + static_cast(request.magic_number)); + } + } public: explicit RestartRequestServer(INode& node) @@ -63,7 +81,10 @@ public: * Starts the server. * Returns negative error code. */ - int start(); + int start() + { + return srv_.start(RestartNodeCallback(this, &RestartRequestServer::handleRestartNode)); + } }; } diff --git a/libuavcan/src/protocol/uc_restart_request_server.cpp b/libuavcan/src/protocol/uc_restart_request_server.cpp deleted file mode 100644 index beb2daa495..0000000000 --- a/libuavcan/src/protocol/uc_restart_request_server.cpp +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (C) 2014 Pavel Kirienko - */ - -#include -#include - -namespace uavcan -{ - -void RestartRequestServer::handleRestartNode(const ReceivedDataStructure& request, - protocol::RestartNode::Response& response) const -{ - UAVCAN_TRACE("RestartRequestServer", "Request from snid=%i", int(request.getSrcNodeID().get())); - response.ok = false; - if (request.magic_number == protocol::RestartNode::Request::MAGIC_NUMBER) - { - if (handler_) - { - response.ok = handler_->handleRestartRequest(request.getSrcNodeID()); - } - UAVCAN_TRACE("RestartRequestServer", "%s", (response.ok ? "Accepted" : "Rejected")); - } - else - { - UAVCAN_TRACE("RestartRequestServer", "Invalid magic number 0x%llx", - static_cast(request.magic_number)); - } -} - -int RestartRequestServer::start() -{ - return srv_.start(RestartNodeCallback(this, &RestartRequestServer::handleRestartNode)); -} - -}