Doxygen (1.8.8) puts C ++ / public member constructors on a group page, not in a class page

I am trying to document part of my code with Doxygen. I have a library that I call the Doxygen group, and many classes in separate header files. A number of constructors are shown as public member functions on class pages, but their documentation is displayed on the group page, not in the && & & Destroyers on the class page. Some are not; I still do not quite understand the template.

Here is one of them:

/** * @addtogroup gr_espresso * @{ */ /** * @file ToyTagger.hh */ ... namespace Espresso { ... /** * @class ToyTagger * @brief Fake tagging algorithm * @details ... * */ class ToyTagger { public: /** * @brief Simple constructor. * @details ... */ ToyTagger(CalibrationMode _mode, const Distribution& _pdf, const Calibration* _smear_cal = nullptr); ... } } /** * @} */ 

The following documentation is created for the ToyTagger class:

enter image description here

The constructor shown in the pseudocode above is listed in the Public Member Functions section, but not in the documentation for constructors and destructors. Instead, the "More Information" link leads to the gr_espresso group page. The same is true for another constructor, as well as for one of the three member functions:

enter image description here

I did not show the code for the second constructor or the three member functions, but there is no obvious difference.

On the other hand, here is one that succeeds:

 /** * @addtogroup gr_espresso * @{ */ /** * @file StandardCalibration.hh */ ... namespace Espresso { ... class StandardCalibration : public Calibration { public: /** * @brief Default constructor * @details Simple constructor that creates a trivial calibration * where \f$\omega(\eta) = \eta\f$ */ StandardCalibration(); ... } } /** * @} */ 

This creates the documentation I expect:

enter image description here

Does anyone know what is going on here? Am I doing something wrong that leads to such (apparently) unpredictable behavior?

+7
c ++ doxygen
source share
1 answer

You should try to create an MCVE to track the problem.

Also, try to check which file you are adding to which group: sometimes this can lead to strange behavior ...

+1
source share

All Articles