在Doxygen中添加指向typedef的链接

问题描述

在下面的示例中,生成的doxygen文件将仅将#mystruct和mystruct转换为指向mystruct定义的链接。无论如何,mytype,myenum和FirsT_ELEMENT是否具有相同的行为,或者说是doxygen的固有限制?

typedef enum myenum {
  FirsT_ELEMENT,/**< Some example. */
  SECOND_ELEMENT,/**< Some other example. */
} myenum;

typedef int16_t mytype;  /**< some example */

typedef struct mystruct {
    mytype x;   /**< my member */
} mystruct;


/**
 * @brief       My test function.
 *
 * This function uses #mytype,#mystruct and #myenum.
 *
 * @param[in]   x   input 1.
 * @param[in]   y   input 2.
 * @param[in]   z   input 3 expected to be #FirsT_ELEMENT.
 */
void foo(mytype x,mystruct y,myenum z);

解决方法

我所描述的一切实际上都按预期运行。

记录下我在这里犯的错误,以防其他人也犯同样的错误。

我的错误是,在我拥有的代码库中(不是在此显示的示例),我的函数与defgroup分组在一起,而不是我的类型声明分组在一起。显然,在类型周围没有defgroup允许struct定义仍然可见并链接到html中,但其他类型则不允许。