2021SC@SDUSC
一、写在前面
上一篇分析中我们学习了Node的命名空间相关源码,本节将简单介绍Node相关代码.
二、Node
在ROS中,Master是位于中心负责调度与维护全局参数的实体,而Node则是位于边缘提供各种服务的实体.ROS之所以功能强大,原因之一就是其良好的可扩展性.除了Master的功能外,其他功能大多都是以Node的形式出现的.因此Node可以看作一个编程模型,规定了如何向外界提供自己的调用接口,
三、Node源码分析
public interface Node {
GraphName getName();
GraphName resolveName(GraphName name);
GraphName resolveName(String name);
NodeNameResolver getResolver();
URI getUri();
URI getMasterUri();
Log getLog();
MessageSerializationFactory getMessageSerializationFactory();
MessageFactory getTopicMessageFactory();
MessageFactory getServiceResponseMessageFactory();
MessageFactory getServiceRequestMessageFactory();
void addListener(NodeListener listener);
ScheduledExecutorService getScheduledExecutorService();
void executeCancellableL

本文主要介绍了ROS中的Node编程模型,详细分析了Node的源码,包括getName、resolveName等关键方法,并探讨了NodeFactory在创建Node过程中的作用。通过理解和实现这些接口,开发者可以更好地构建自己的ROS节点。
最低0.47元/天 解锁文章
1790

被折叠的 条评论
为什么被折叠?



