How to add a new shared_data in perception_module
简介
在perception模块下定义了CameraSharedData,LaneSharedData等多种共享数据类型,但有时候需要添加一种自定义的共享数据类型,下面以最简单的camera_subnode和visualization_subnode两个节点之间添加一种共享数据为例,讲述怎样添加一种新的共享数据类型。
Steps
- 添加文件
- 定义类型和实现代码
- 注册shared_data和添加头文件
- 修改build
- 修改config
- 调用和测试
1 添加文件
如下图,在modules/perception/obstacle/onboard下添加一个fdq_test_shared_data.h和fdq_test_shared_data.cc(可不加)文件
2 定义类型和实现代码
fdq_test_shared_data.h文件
#ifndef MODULES_PERCEPTION_OBSTACLE_ONBOARD_FDQ_TEST_SHARED_DATA_H_
#define MODULES_PERCEPTION_OBSTACLE_ONBOARD_FDQ_TEST_SHARED_DATA_H_
#include <string>
#include "modules/perception/onboard/common_shared_data.h"
namespace apollo {
namespace perception {
//定义共享数据结构
struct FdqTestSt {
int num;
std::string name;
double time = 0.0;
};
class FdqSharedData : public CommonSharedData&l