ROS fuerte中的动态节点创建

时间:2013-06-06 01:50:49

标签: nodes ros

我正在尝试在运行时使用代码生成和销毁节点。我知道ROS groovy有rosspawn,但我正在研究的项目是feurte。这是我对节点类

的代码
class node {
    private:
        ros::NodeHandle *n;
    public:
        void init(int argc, char **argv, std::string s) {
            ros::init(argc, argv, s);
            n = new NodeHandle();
        }
        void shutdown() {
            n->~NodeHandle();
        }
};

我使用rosnode list对其进行了测试,但它似乎有效。我的问题是,这是错误的编程还是会发生无法预料的错误?我发现问题的帖子说,为了在执行过程中产生一个节点,需要进行系统调用。

1 个答案:

答案 0 :(得分:0)

如果您只是尝试动态创建单个节点,可以这样做。如果要创建多个节点,则需要创建单独的进程,从而需要进行系统调用。