Reputation: 41
I intend to include some documented C++ classes (let say AClass
) within a Doxygen group (let say GROUP_C
), while that group is into another one (let say GROUP_B
), and that second group into another, base one (let say GROUP_A
). Like this:
/** \addtogroup GROUP_A */
/** @{ */
/** \defgroup GROUP_B */
/** @{ */
/** \defgroup GROUP_C */
/** @{ */
/// Comment
class AClass
{
};
/** @} */
/** @} */
/** @} */
I'm trying to get a clean and logical documentation for that situation, but, as simple as I see it, I have not been able to found anything more specific than the Doxygen official documentation, where nothing is said about any cyclical grouping problems. However, just doxygen-ing the simple code above, such problems occur:
warning: Refusing to add group GROUP_C to group GROUP_B, since the latter is already a subgroup of the former
I also get strange breadcrumbs indications of the generated module under the AClass
documentation:
Does anybody know what am I understanding wrong in the nesting-group system of Doxygen?
Thanks in advance!
Upvotes: 3
Views: 6438
Reputation: 725
This solution has been working for me for many years since old versions of Doxygen:
/** \defgroup GROUP_A My top-level group description
*
* Put here a longer description.
*
**/
/** @addtogroup GROUP_B My group B description
* \ingroup GROUP_A
* @{ */
// classes, etc.
/** @} */
/** @addtogroup GROUP_C My group C description
* \ingroup GROUP_B
* @{ */
// classes, etc.
/** @} */
Upvotes: 6
Reputation: 11
Unfortunately your given example works as expected on doxygen-1.8.8 and on latest master git branch. The warning does not appear. Is it possible you are including other source files (than the presented example code) into your test run and that other files contain conflicting \defgroup or \addgroup statements that cause the circles in the group structure?
Regarding that "GROUP_A" doubling line below "AClass Class Reference" - I guess that is simply a doxygen bug.
Upvotes: 0