From e75a275abac53d723426b225b38e03880176f0a6 Mon Sep 17 00:00:00 2001 From: Timothy Wiley Date: Fri, 10 Mar 2017 11:06:57 +1100 Subject: [PATCH] Command lister may choose to ignore global namespace --- crosbot/include/crosbot/controls/command.hpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/crosbot/include/crosbot/controls/command.hpp b/crosbot/include/crosbot/controls/command.hpp index d0664c3..d5aa972 100644 --- a/crosbot/include/crosbot/controls/command.hpp +++ b/crosbot/include/crosbot/controls/command.hpp @@ -43,9 +43,10 @@ private: bool send; bool receive; + bool listenGlobal; // Listen to commands on global namespace void _callback_receivedCommand(const crosbot_msgs::ControlCommandPtr command) { - if (command->cmd_namespace == "" || + if ((listenGlobal && command->cmd_namespace == "") || command->cmd_namespace == nspace) { callback->callback_receivedCommand(command); } @@ -82,11 +83,13 @@ public: */ CrosbotCommand(crosbot_msgs::ControlCommand::_cmd_namespace_type nspace = "", bool send = false, - CrosbotCommandCallbackPtr callback = NULL) : + CrosbotCommandCallbackPtr callback = NULL, + bool listenGlobal = true) : send(send), receive(false), nspace(nspace), - callback(callback) + callback(callback), + listenGlobal(listenGlobal) { // Node handle with "root" namespace ros::NodeHandle nh(""); -- GitLab