Far planner 代码系列(24)
关于decoder_node.cpp和graph_msger.cpp
最近又看了会儿关于decoder_node.cpp和graph_msger.cpp的代码,突然看懂了一些些,现在大概讲述一下,希望大家可以不用花太多精力在decode_node.cpp上。
graph_msger主要把graph信息做一个打包,发送到/robot_vgraph。 decoder_node中订阅/robot_vgraph节点,并用调用decoder_node的GraphCallBack回调函数去进行解码,从而通过解析出connect_nodes、poly_connects、contour_connects、traj_connects 并在rviz中绘制这些node的连线。
当我们读取vgh的时候,decoder_node.cpp会把graph信息通过/decoded_vgraph发布,然后graph_msger.cpp中订阅/decoded_vgraph,并用调用graph_msger.cpp的GraphCallBack回调函数去进行相应的还原工作。
所以总结一下:
decoder_node的作用:
1. 是接收/robot_vgraph 然后处理一些数据,还有显示grah图形
2. 当要保存vgh的时候,把数据通过处理保存下来,读取数据的时候,会把数据发布到/decoded_vgraph
3. 读取数据的时候,graph_msger会订阅/decoded_vgraph去调用graph_msger中的GraphCallBack去还原数据。
大家可以不用太过于关注decoder_node