Как мне заставить Doxygen «связать» определения enum? - PullRequest
4 голосов
/ 25 февраля 2010

У меня есть следующий код:

/// \file Doxygen_tests.h

/**
 *
 * \enum    Tick_Column_Type
 *
 * \brief   Values that represent Tick_Column_Type. 
**/

enum Tick_Column_Type {
    TC_OPEN,         ///< Opening price
    TC_HIGH,         ///< High price

    TC_MAX,          ///< Required as last enum marker.  
};

/**
 *
 * \struct  Tick_Data_Row
 *
 * \brief   Holder for one row or snapshot of tick data.
 *
**/

struct __declspec (dllexport) Tick_Data_Row {
    Tick_Data_Row ();                       ///< Constructor.  Sets all columns to NaN
    void        init ();                    ///< Helper function to reset everything to NaN
    double  m_cols[TC_MAX];                 ///< The data.  Indexed by Tick_Column_Type.
};

Кажется, все работает нормально (enum заканчивается в области видимости файла, но у меня есть \ file, поэтому он отображается вместе с описаниями в правильном формате.

Что я хочу (и не происходит), так это то, что я хотел бы, чтобы ссылка на Tick_Column_Type в документации для Tick_Data_Row :: m_cols ссылалась на страницу этого документа. Doxygen обычно кажется достаточно умным ввыяснить: «Ага, это имя, которое я знаю, я сделаю горячую ссылку», но в этом случае это не удастся.

Не имеет значения, перемещу ли я enum внутри структуры.

Есть какие-нибудь подсказки?

1 Ответ

6 голосов
/ 26 февраля 2010

С Документы (автоматическая генерация ссылок) : нужно перейти с

///< The data.  Indexed by Tick_Column_Type.

до

///< The data.  Indexed by ::Tick_Column_Type.
...