feat: 拆分发送和接收功能声明,优化config配置方式
This commit is contained in:
+27
-21
@@ -1,34 +1,40 @@
|
||||
/**
|
||||
* @file datarouter_config.h
|
||||
* @brief 数据报文类型配置
|
||||
* @brief 数据路由默认配置
|
||||
*
|
||||
* 用户在此文件中定义所有报文类型(通道)。
|
||||
* 每个报文类型通过 DATAROUTER_CHANNEL(id, desc) 宏声明,
|
||||
* 库在编译期据此自动生成:
|
||||
* - 通道枚举值 DATAROUTER_CHANNEL_<id>
|
||||
* - 发送触发函数 datarouter_send_<id>(port, data, len)
|
||||
* - 接收回调声明 datarouter_on_recv_<id>(port, data, len)
|
||||
* 这是库内置的默认配置,提供示例能力声明。
|
||||
* 用户可自定义此文件以实现自己的报文类型:
|
||||
*
|
||||
* 1. 复制当前文件到你的项目目录
|
||||
* 2. 按需修改 DATAROUTER_SEND_CAPABILITIES / DATAROUTER_RECV_CAPABILITIES
|
||||
* 3. 编译时添加 -I /path/to/your/config 覆盖库的默认配置
|
||||
*
|
||||
* 覆盖后库将使用你的版本,无需修改库源代码。
|
||||
*/
|
||||
|
||||
#ifndef DATAROUTER_CONFIG_H
|
||||
#define DATAROUTER_CONFIG_H
|
||||
|
||||
/**
|
||||
* @def DATAROUTER_CHANNELS
|
||||
* @brief 报文类型列表宏
|
||||
* @def DATAROUTER_SEND_CAPABILITIES
|
||||
* @brief 发送能力列表
|
||||
*
|
||||
* 每行格式:DATAROUTER_CHANNEL(标识符, "描述文字")
|
||||
* 用户按需增删改。每个标识符对应一种报文类型。
|
||||
*
|
||||
* @code
|
||||
* #define DATAROUTER_CHANNELS \
|
||||
* DATAROUTER_CHANNEL(sensor, "Sensor data") \
|
||||
* DATAROUTER_CHANNEL(control, "Control command")
|
||||
* @endcode
|
||||
* 每行格式:DATAROUTER_SEND(标识符, "描述")
|
||||
* 每项生成:发送触发函数 datarouter_send_<id>(port, data, len)
|
||||
*/
|
||||
#define DATAROUTER_CHANNELS \
|
||||
DATAROUTER_CHANNEL(sensor, "Sensor data") \
|
||||
DATAROUTER_CHANNEL(status, "Status report") \
|
||||
DATAROUTER_CHANNEL(control, "Control command")
|
||||
#define DATAROUTER_SEND_CAPABILITIES \
|
||||
DATAROUTER_SEND(sensor, "Sensor data report") \
|
||||
DATAROUTER_SEND(status, "Device status report")
|
||||
|
||||
/**
|
||||
* @def DATAROUTER_RECV_CAPABILITIES
|
||||
* @brief 接收能力列表
|
||||
*
|
||||
* 每行格式:DATAROUTER_RECV(标识符, "描述")
|
||||
* 每项生成:接收回调声明 datarouter_on_recv_<id>(port, data, len)
|
||||
*/
|
||||
#define DATAROUTER_RECV_CAPABILITIES \
|
||||
DATAROUTER_RECV(rtcm, "RTCM correction data") \
|
||||
DATAROUTER_RECV(command, "Remote control command")
|
||||
|
||||
#endif /* DATAROUTER_CONFIG_H */
|
||||
Reference in New Issue
Block a user