We have a C++ library, and we use Doxygen for API documentation. The documentation is built with Doxygen 1.8.10.
I was talking with one of our users, and they want the API docs to only show the non-inherited methods of a class (and not the inherited methods that were not overridden). Here was the request:
One of the issues is just doxygen. I'm obviously a Qt user, and the Qt docs have always been good. The thing over doxygen is that Qt docs only show implemented and virtual functions for a class. This allows me to see what a class provides above its inherited classes. So if i want to know the difference between FileSink and StringSink, it'll be more obvious. Look at doc.qt.io/qt-5/qiodevice.html (rough equivalent to a filter) and then compare descendant classes QFile and QNetworkReply. Whereas the doxygen just lists everything, the Qt docs tell me just what is special about that class. This might be just one setting that would go a long way.
How do I tell Doxygen to offer the user of a choice in the way it displays a class' documentation? That is, it should allow a user to view all of the class' methods (inherited and non-inherited) or just the methods added by the class (i.e., overridden and non-inherited).
Is it even possible to change views with Doxygen?
Thanks in advance.
The only thing I can find in Doxygen
is the following, but its a build-time setting. Its not a view-time choice a user can make:
# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
# documentation from any documented member that it re-implements.
# The default value is: YES.
INHERIT_DOCS = YES
The question looks similar to Mark overridden functions and friends. But we are looking for a "toggle" view-time option. That is, we want to give the user a choice at view-time, and not force something on them at build-time.