/**
 * @file    app_msg_queue.h
 * @brief   应用消息队列注册表 — X-Macro 定义所有跨模块 MQ
 *
 * @details 此处故意不设 include guard, 因为需被多次包含
 *          （每次在不同的 APP_MQ 宏下展开）
 *
 * 格式: APP_MQ(枚举后缀, 配置名, msg_size, msg_num)
 *   - 枚举后缀: ENUM_MQ_<后缀>
 *   - 配置名:   字符串标识 "mq_<配置名>"
 *   - msg_size: 消息大小 (应与 MSG_SIZE 匹配)
 *   - msg_num:  队列深度
 */

#ifndef APP_MQ
#error "APP_MQ macro must be defined before including app_msg_queue.h"
#endif

/* com_router → self_ptl: FTU 串口收到的 ICP67 dev=1 帧 */
APP_MQ(COM_TO_SELF_PTL, com_to_self_ptl, 2048, 8)

/* self_ptl → com_router: ICP67 协议引擎发出的帧 */
APP_MQ(SELF_PTL_TO_COM, self_ptl_to_com, 2048, 8)

/* com_router → iec: TCP :2404 主站直投的 IEC-104 帧 */
APP_MQ(COM_TO_IEC, com_to_iec, 2048, 8)

/* iec → com_router: IEC-104 协议栈发出的回复帧 */
APP_MQ(IEC_TO_COM, iec_to_com, 2048, 8)
