views:

182

answers:

1

How can I force Doxygen to show full include path?

What do I mean:

I have a class foo::bar::bee defined in bee.hpp in following directory structure:

foo
foo/bar
foo/bar/bee.hpp

Doxygen, when it documents foo::bar::bee class tells that you need to include <bee.hpp>, but for my software I need <foo/bar/bee.hpp>

How can I cause Doxygen to do this? Is there any option to provide "Include flags" like "-I" so doxygen would know where the base is?

Notes:

  • FULL_PATH_NAMES is already set to default YES
  • I do not want to provide include header explicitly for each class, because there too many of them. I want Doxygen to do this automatically.

Thanks.

Answer

Set:

STRIP_FROM_INC_PATH    = relative/path/to/include/directory
+1  A: 

Taken directly from the hints in DoxyWizard:

STRIP_FROM_INC_PATH

The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the path mentioned in the documentation of a class, which tells the reader which header file to include in order to use a class. If left blank only the name of the header file containing the class definition is used. Otherwise one should specify the include paths that are normally passed to the compiler using the -I flag.

Space_C0wb0y
Thanks... I feel stupid. I read this part of documentation and didn't understood one.
Artyom
Well the name of the option suggests different behavior, so don't beat yourself up :)
Space_C0wb0y