专栏算法工具链Node应用编程接口

Node应用编程接口

TROS.Assist2024-02-27
31
0

1. Node

DataFlow将一个功能模块抽象为Node,理论上每个Node实现一个功能,每个Node具体的功能由用户自定义扩展。用户可以根据需要扩展Node,在其内部创建Publisher、Subscriber等对象,用于Node间的通信。
Description
  • topic:是 Node 之间交换消息的总线,不同的 topic 有对应的 publisher 和 subscriber 对象,分别用于发送消息到该 topic,以及从该 topic 接收消息对象

  • publisher:用于发送抽象消息,具有如下属性:

    • id:publisher 的 id

    • topic:发送消息的 topic

    • node_id:publishe 所在的 node id

  • subscriber:用于接收消息,具有如下属性:

    • id:subscriber 的 id

    • topic:发送消息的 topic

    • node_id:subscriber 所在的 node id

  • callback:用户注册的回调函数

2. 编程范式

2.1 Node开发

Node 中提供了一系列的对外接口供用户使用,包括以下几类主要接口,用户可以选择在此基础上进行扩展开发。
Description
  1. 定义 node 根据用户需要的功能定义不同的 node,在node内部通过接口创建 Publisher,Subscriber,Filter等,不同 node 之间通过 topic 进行消息的传递。

Description
2. 实现node
实现具有不同功能的subscriber回调以及filter回调。
具体使用 node 应用编程接口进行开发的示例可以参考Node迁移Module接口教程

2.2 Node运行

通过编写main函数的方式,在 main 函数中实例化各个功能对应的node并进行启动即可。

算法工具链
杂谈
评论0
0/1000