ROS - 在代码中获取当前可用主题(不是命令)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS - 在代码中获取当前可用主题(不是命令)相关的知识,希望对你有一定的参考价值。
我想在我的代码中获取当前可用的主题,以便我可以相应地设置发布者和订阅者。我知道命令'rostopic list'会显示这个,但我希望在我的程序运行时获取信息。
有没有API可以做到这一点?
答案
在Gabor Meszaros的回答后编辑。
您可以在here子节中找到ROS C ++ API参考(roscpp)getTopics
和 - 在Python中 - 您将找到ros::master方法。
以下是如何使用它的示例代码:
ros::master::V_TopicInfo master_topics;
ros::master::getTopics(master_topics);
for (ros::master::V_TopicInfo::iterator it = master_topics.begin() ; it != master_topics.end(); it++)
const ros::master::TopicInfo& info = *it;
std::cout << "topic_" << it - master_topics.begin() << ": " << info.name << std::endl;
另一答案
我不熟悉ROS API,你正在寻找getTopics吗?
或者你可以检查rostopic list
的实现(它是python,但可能与C ++ API重叠)。你可以找到它here。
以上是关于ROS - 在代码中获取当前可用主题(不是命令)的主要内容,如果未能解决你的问题,请参考以下文章
如何在 android 设备中获取当前可用的免费 RAM [重复]
c_cpp 这允许在ROS Rviz中使用OpenGL代码。在水电测试,可能在groovy工作。不会在fuerte下工作(我也有fuerte代码可用