我有一个GUI作为rqt插件,我想订阅一个主题,但我无法在rqt_graph上看到我的rqt_plugin节点。 我想订阅的主题是在同一台机器上,我想启动我的rqt_plugin。我有多台机器,我在另一台机器上启动rqt_graph。在另一台机器上,我看到了所有其他主题,我还看到了我想用rqt_plugin订阅的主题。
以下是在机器A上创建发布者:
pubCmd = n.advertise<std_msgs::String>("/sci/cmd", 10);
以下是我在机器A的rqt_plugin上订阅主题/ sci / cmd:
ros::Subscriber sub = getNodeHandle().subscribe("/sci/cmd", 10, &ccgui::receiveSC, this);
如果现在我发布了一些东西,我的rqt插件什么都没收到。我知道发布者工作正常,因为我用正常节点订阅了主题,我收到了消息。
我希望有人可以帮助我:)。
答案 0 :(得分:1)
好的,我遇到了问题。
我创建了一个本地订阅者,如果程序离开了该方法,该订阅者总是被删除。 如此简单却如此致命。
现在我创建一个对象变量,它可以工作。