2012-12-18 14 views
10

Tôi muốn lấy giá trị thực của thành viên enum trong đầu ra doxygen. Ví dụ tôi có:Có cách nào để có được doxygen để hiển thị các giá trị số enum mà không thay đổi css?

///MyEnum 
typedef enum My_Enum 
{ 
MY_ENUM_0,///<MY_ENUM_0 
MY_ENUM_1,///<MY_ENUM_1 
MY_ENUM_2 ///<MY_ENUM_2 
} My_Enum; 

Đầu ra là:

MyEnum. 
Enumerator: 
MY_ENUM_0 
     MY_ENUM_0. 
MY_ENUM_1 
     MY_ENUM_1. 
MY_ENUM_2 
     MY_ENUM_2. 

Những gì tôi muốn là:

Enumerator: 
MY_ENUM_0 
      0 MY_ENUM_0. 
MY_ENUM_1 
      1 MY_ENUM_1. 
MY_ENUM_2 
      2 MY_ENUM_2. 

Hoặc một cái gì đó tương tự.

Trả lời

0

Sử dụng doxygen, chúng tôi có thể tài liệu:

  • Các enum
  • giá trị
  • Một mô tả của mỗi giá trị

Đoạn mã sau đây mô tả một ví dụ cho tất cả 3 ở trên.

/*! \enum My_Enum 
* Documentation of the enum type. 
*/ 

typedef enum My_Enum { 
    MY_ENUM_0, /*!< Document the value 0 */ 
    MY_ENUM_1, /*!< Document the value 1 */ 
} My_Enum; 

/*! \var My_Enum MY_ENUM_0 
* The description of the MY_ENUM_0. Can contain its enumerated name */ 

/*! \var My_Enum MY_ENUM_1 
* The description of the MY_ENUM_1. Can contain its enumerated name*/ 

Cũng lưu ý rằng kể từ khi mở rộng vĩ mô/enum KHÔNG xảy ra trong bình luận doxygen. Nếu bất kỳ được sử dụng trong một bình luận doxygen thì chúng cần được mở rộng bằng cách sử dụng INPUT_FILTER. Ví dụ:

INPUT_FILTER = sed /MY_ENUM_0/0 

là cần thiết cho đoạn mã sau

typedef enum My_Enum { 
    MY_ENUM_0, /*!< MY_ENUM_0 */ 
    ... 

Ngoài Thanh toán này answer biết chi tiết về các doxygen nhiều bình luận phong cách:

  • ///< <comment>
  • /*!< <comment> */
+3

Điều này không trả lời được câu hỏi. Giá trị của MY_ENUM_0 bằng 0, nhưng giá trị này sẽ không hiển thị trong tài liệu doxygen được tạo bởi mã trong câu trả lời của bạn. –

+0

Doxygen comnent '/ *! TheCodeArtist

+4

Vì bạn đã tự viết "0", OP hỏi làm thế nào để Doxygen tạo ra "0". –