Hello Doxygen users,

We use a filter to transform Perl classes documented with Doxygen into C++ code 
that Doxygen understands.  To group the member methods, the generated C++ code 
uses @nosubgrouping and @name ... @{  @}. You will find a small example at the 
end.  The two groups are "Public Class Methods" and "Public Object Methods".   
These two group names are used for all classes.  When we set the configuration 
variable INLINE_INHERITED_MEMB to YES, it is expected that the methods 
inherited from the base class will appear under the same group heading as the 
methods of the derived class.  In the example below, we'd expect that the 
indent() method from the WriterBase class appears together with the open() and 
out() methods defined in the derived Writer class.  Unfortunately, although 
they have the exact same title (Public Object Methods), they are grouped 
separately on the page.  This grouping behavior differs from the default 
behavior used for inherited methods in standard C++ code.

Is there some way to get the methods of a common group name to appear under the 
same banner?


>>> BaseWriter.hpp <<<


/** @class WriterBase
*
* Base class to facilitate dumping structured code to files.
*
* @nosubgrouping
*/
class WriterBase {
public:
/** @name Public Class Methods
*
*  @{
*/

/** @fn ref<WriterBase> new( hash opt_args )
*
* Return a WriterBase object configured as specified by the @em opt_args
*
*/
ref<WriterBase> new( hash opt_args );

/**  @} */

public:
/** @name Public Object Methods
*
*  @{
*/

/** @fn ref<Writer> indent( int nb_spaces )
*
* Indents following lines by @em nb_spaces.
*
*/
ref<Writer> indent( int nb_spaces );

/** @fn ref<Writer> out( string text )
*
* Dumps the text. Default implementation.
*
*/
ref<Writer> out( string text );

/**  @} */

};


>>> Writer.hpp <<<

#include "WriterBase.hpp"

/** @class Writer
*
* Class to facilitate dumping structured code to files.
*
* @nosubgrouping
*/
class Writer : public WriterBase {
public:
/** @name Public Class Methods
*
*  @{
*/

/** @fn list configure( hash opt_args )
*
* If called as a class method, it globally modifies default configuration 
parameters for all created Writer objects.
* If called as an object method, it modifies the configuration parameters for 
the object.
* @return Returns the previous values of the modified parameters.
*
*/
list configure( hash opt_args );

/** @fn ref<Writer> new()
*
* Return a WriterBase object with default configuration.  The default 
configuration may have previously been
* set with the @c configure() method.
*
*/
ref<Writer> new();


/**  @} */

public:
/** @name Public Object Methods
*
*  @{
*/

/** @fn ref<Writer> open( string filename )
*
* Opens the named file for writing.  Also writes the file header text.
*
*/
ref<Writer> open( string filename );

/** @fn ref<Writer> out( string text )
*
* Dumps the text.  Adds some decoration to the text.
*
*/
ref<Writer> out( string text );

/**  @} */

};



-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013 
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to