2016-09-08 3 views
11

При использовании doxygen для генерации диаграмм наследования C++ я заметил, что диаграммы могут быть неполными.Как заставить doxygen создавать полные диаграммы наследования для нескольких проектов?

Если несколько проектов документированы с помощью tag files, чтобы перекрестные ссылки, Doxygen будет успешно показать все базовые классы, которые существуют в других файлах тегов, но это будет не показывать производные классы, если они находятся в других файлах тегов. Показанные производные классы всегда являются только классами, которые существуют в текущем проекте.

Пример проекта 1 Код:

class A {}; 

class B : public A {}; 

class C : public A {}; 

Пример проекта 2 Код:

#include <proj1.h> 

class D : public A {}; 

class E : public A {}; 

class F : public E {}; 

Наследство схема A от проекта 1, с использованием файла тега из проекта 2 - где D, E & F?

enter image description here

Наследство схема E из проекта 2, используя файл тегов из проекта 1 - родительский класс A показан.

enter image description here

Есть ли установка сказать Doxygen генерировать полное наследование графиков между проектами, когда используются файлы теги?

+1

Это может быть Doxygen ошибкой. –

+0

Не уверен, что это поможет вам через несколько объектов, но вы пробовали Graphviz? – DPD

+0

@DPD Да, doxygen использует Graphviz (в частности, инструмент 'dot') для генерации этих графиков, если я правильно вас понимаю. –

ответ

-2

С помощью этих параметров Doxyfile сгенерированных с модулем eclox в затмении не имеет никаких проблем, сравните с вашими:

 

    # Doxyfile 1.6.3 

    # This file describes the settings to be used by the documentation system 
    # doxygen (www.doxygen.org) for a project 
    # 
    # All text after a hash (#) is considered a comment and will be ignored 
    # The format is: 
    #  TAG = value [value, ...] 
    # For lists items can also be appended using: 
    #  TAG += value [value, ...] 
    # Values that contain spaces should be placed between quotes (" ") 

    #--------------------------------------------------------------------------- 
    # Project related configuration options 
    DOXYFILE_ENCODING  = UTF-8 

    PROJECT_NAME   = 

    PROJECT_NUMBER   = 


    OUTPUT_DIRECTORY  = 


    CREATE_SUBDIRS   = NO 

    OUTPUT_LANGUAGE  = English 

    BRIEF_MEMBER_DESC  = YES 
    REPEAT_BRIEF   = YES 


    ALWAYS_DETAILED_SEC = NO 
    INLINE_INHERITED_MEMB = NO 

    FULL_PATH_NAMES  = YES 
    STRIP_FROM_PATH  = 

    STRIP_FROM_INC_PATH = 

    SHORT_NAMES   = NO 
    JAVADOC_AUTOBRIEF  = NO 

    QT_AUTOBRIEF   = NO 

    MULTILINE_CPP_IS_BRIEF = NO 


    INHERIT_DOCS   = YES 


    SEPARATE_MEMBER_PAGES = NO 

    TAB_SIZE    = 8 
    ALIASES    = 


    OPTIMIZE_OUTPUT_FOR_C = NO 

    OPTIMIZE_OUTPUT_JAVA = NO 

    OPTIMIZE_FOR_FORTRAN = NO 


    OPTIMIZE_OUTPUT_VHDL = NO 
    EXTENSION_MAPPING  = 


    BUILTIN_STL_SUPPORT = NO 


    CPP_CLI_SUPPORT  = NO 

    SIP_SUPPORT   = NO 


    IDL_PROPERTY_SUPPORT = YES 

    DISTRIBUTE_GROUP_DOC = NO 


    SUBGROUPING   = YES 

    TYPEDEF_HIDES_STRUCT = NO 

    SYMBOL_CACHE_SIZE  = 0 

    #--------------------------------------------------------------------------- 
    # Build related configuration options 
    #--------------------------------------------------------------------------- 


    EXTRACT_ALL   = NO 


    EXTRACT_PRIVATE  = NO 


    EXTRACT_STATIC   = NO 


    EXTRACT_LOCAL_CLASSES = YES 

    EXTRACT_LOCAL_METHODS = NO 


    EXTRACT_ANON_NSPACES = NO 

    HIDE_UNDOC_MEMBERS  = NO 

    HIDE_UNDOC_CLASSES  = NO 


    HIDE_FRIEND_COMPOUNDS = NO 

    HIDE_IN_BODY_DOCS  = NO 



    INTERNAL_DOCS   = NO 

    CASE_SENSE_NAMES  = YES 
    HIDE_SCOPE_NAMES  = NO 
    SHOW_INCLUDE_FILES  = YES 


    FORCE_LOCAL_INCLUDES = NO 

    INLINE_INFO   = YES 


    SORT_MEMBER_DOCS  = YES 


    SORT_BRIEF_DOCS  = NO 


    SORT_MEMBERS_CTORS_1ST = NO 


    SORT_GROUP_NAMES  = NO 


    SORT_BY_SCOPE_NAME  = NO 


    GENERATE_TODOLIST  = YES 


    GENERATE_TESTLIST  = YES 


    GENERATE_BUGLIST  = YES 


    GENERATE_DEPRECATEDLIST= YES 



    ENABLED_SECTIONS  = 

    # The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
    # the initial value of a variable or define consists of for it to appear in 
    # the documentation. If the initializer consists of more lines than specified 
    # here it will be hidden. Use a value of 0 to hide initializers completely. 
    # The appearance of the initializer of individual variables and defines in the 
    # documentation can be controlled using \showinitializer or \hideinitializer 
    # command in the documentation regardless of this setting. 

    MAX_INITIALIZER_LINES = 30 

    # Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
    # at the bottom of the documentation of classes and structs. If set to YES the 
    # list will mention the files that were used to generate the documentation. 

    SHOW_USED_FILES  = YES 

    # If the sources in your project are distributed over multiple directories 
    # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
    # in the documentation. The default is NO. 

    SHOW_DIRECTORIES  = NO 

    # Set the SHOW_FILES tag to NO to disable the generation of the Files page. 
    # This will remove the Files entry from the Quick Index and from the 
    # Folder Tree View (if specified). The default is YES. 

    SHOW_FILES    = YES 

    # Set the SHOW_NAMESPACES tag to NO to disable the generation of the 
    # Namespaces page. 
    # This will remove the Namespaces entry from the Quick Index 
    # and from the Folder Tree View (if specified). The default is YES. 

    SHOW_NAMESPACES  = YES 

    # The FILE_VERSION_FILTER tag can be used to specify a program or script that 
    # doxygen should invoke to get the current version for each file (typically from 
    # the version control system). Doxygen will invoke the program by executing (via 
    # popen()) the command , where is the value of 
    # the FILE_VERSION_FILTER tag, and is the name of an input file 
    # provided by doxygen. Whatever the program writes to standard output 
    # is used as the file version. See the manual for examples. 

    FILE_VERSION_FILTER = 

    # The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by 
    # doxygen. The layout file controls the global structure of the generated output files 
    # in an output format independent way. The create the layout file that represents 
    # doxygen's defaults, run doxygen with the -l option. You can optionally specify a 
    # file name after the option, if omitted DoxygenLayout.xml will be used as the name 
    # of the layout file. 

    LAYOUT_FILE   = 

    #--------------------------------------------------------------------------- 
    # configuration options related to warning and progress messages 
    #--------------------------------------------------------------------------- 

    # The QUIET tag can be used to turn on/off the messages that are generated 
    # by doxygen. Possible values are YES and NO. If left blank NO is used. 

    QUIET     = NO 

    # The WARNINGS tag can be used to turn on/off the warning messages that are 
    # generated by doxygen. Possible values are YES and NO. If left blank 
    # NO is used. 

    WARNINGS    = YES 

    # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
    # for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
    # automatically be disabled. 

    WARN_IF_UNDOCUMENTED = YES 

    # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
    # potential errors in the documentation, such as not documenting some 
    # parameters in a documented function, or documenting parameters that 
    # don't exist or using markup commands wrongly. 

    WARN_IF_DOC_ERROR  = YES 

    # This WARN_NO_PARAMDOC option can be abled to get warnings for 
    # functions that are documented, but have no documentation for their parameters 
    # or return value. If set to NO (the default) doxygen will only warn about 
    # wrong or incomplete parameter documentation, but not about the absence of 
    # documentation. 

    WARN_NO_PARAMDOC  = NO 

    # The WARN_FORMAT tag determines the format of the warning messages that 
    # doxygen can produce. The string should contain the $file, $line, and $text 
    # tags, which will be replaced by the file and line number from which the 
    # warning originated and the warning text. Optionally the format may contain 
    # $version, which will be replaced by the version of the file (if it could 
    # be obtained via FILE_VERSION_FILTER) 

    WARN_FORMAT   = "$file:$line: $text" 

    # The WARN_LOGFILE tag can be used to specify a file to which warning 
    # and error messages should be written. If left blank the output is written 
    # to stderr. 

    WARN_LOGFILE   = 

    #--------------------------------------------------------------------------- 
    # configuration options related to the input files 
    #--------------------------------------------------------------------------- 

    # The INPUT tag can be used to specify the files and/or directories that contain 
    # documented source files. You may enter file names like "myfile.cpp" or 
    # directories like "/usr/src/myproject". Separate the files or directories 
    # with spaces. 

    INPUT     = 

    # This tag can be used to specify the character encoding of the source files 
    # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is 
    # also the default input encoding. Doxygen uses libiconv (or the iconv built 
    # into libc) for the transcoding. See http://www.gnu.org/software/libiconv for 
    # the list of possible encodings. 

    INPUT_ENCODING   = UTF-8 

    # If the value of the INPUT tag contains directories, you can use the 
    # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
    # and *.h) to filter out the source-files in the directories. If left 
    # blank the following patterns are tested: 
    # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
    # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 

    FILE_PATTERNS   = 

    # The RECURSIVE tag can be used to turn specify whether or not subdirectories 
    # should be searched for input files as well. Possible values are YES and NO. 
    # If left blank NO is used. 

    RECURSIVE    = NO 

    # The EXCLUDE tag can be used to specify files and/or directories that should 
    # excluded from the INPUT source files. This way you can easily exclude a 
    # subdirectory from a directory tree whose root is specified with the INPUT tag. 

    EXCLUDE    = 

    # The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
    # directories that are symbolic links (a Unix filesystem feature) are excluded 
    # from the input. 

    EXCLUDE_SYMLINKS  = NO 

    # If the value of the INPUT tag contains directories, you can use the 
    # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
    # certain files from those directories. Note that the wildcards are matched 
    # against the file with absolute path, so to exclude all test directories 
    # for example use the pattern */test/* 

    EXCLUDE_PATTERNS  = 

    # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 
    # (namespaces, classes, functions, etc.) that should be excluded from the 
    # output. The symbol name can be a fully qualified name, a word, or if the 
    # wildcard * is used, a substring. Examples: ANamespace, AClass, 
    # AClass::ANamespace, ANamespace::*Test 

    EXCLUDE_SYMBOLS  = 

    # The EXAMPLE_PATH tag can be used to specify one or more files or 
    # directories that contain example code fragments that are included (see 
    # the \include command). 

    EXAMPLE_PATH   = 

    # If the value of the EXAMPLE_PATH tag contains directories, you can use the 
    # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
    # and *.h) to filter out the source-files in the directories. If left 
    # blank all files are included. 

    EXAMPLE_PATTERNS  = 

    # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
    # searched for input files to be used with the \include or \dontinclude 
    # commands irrespective of the value of the RECURSIVE tag. 
    # Possible values are YES and NO. If left blank NO is used. 

    EXAMPLE_RECURSIVE  = NO 

    # The IMAGE_PATH tag can be used to specify one or more files or 
    # directories that contain image that are included in the documentation (see 
    # the \image command). 

    IMAGE_PATH    = 

    # The INPUT_FILTER tag can be used to specify a program that doxygen should 
    # invoke to filter for each input file. Doxygen will invoke the filter program 
    # by executing (via popen()) the command , where 
    # is the value of the INPUT_FILTER tag, and is the name of an 
    # input file. Doxygen will then use the output that the filter program writes 
    # to standard output. 
    # If FILTER_PATTERNS is specified, this tag will be 
    # ignored. 

    INPUT_FILTER   = 

    # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
    # basis. 
    # Doxygen will compare the file name with each pattern and apply the 
    # filter if there is a match. 
    # The filters are a list of the form: 
    # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
    # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
    # is applied to all files. 

    FILTER_PATTERNS  = 

    # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
    # INPUT_FILTER) will be used to filter the input files when producing source 
    # files to browse (i.e. when SOURCE_BROWSER is set to YES). 

    FILTER_SOURCE_FILES = NO 

    #--------------------------------------------------------------------------- 
    # configuration options related to source browsing 
    #--------------------------------------------------------------------------- 

    # If the SOURCE_BROWSER tag is set to YES then a list of source files will 
    # be generated. Documented entities will be cross-referenced with these sources. 
    # Note: To get rid of all source code in the generated output, make sure also 
    # VERBATIM_HEADERS is set to NO. 

    SOURCE_BROWSER   = NO 

    # Setting the INLINE_SOURCES tag to YES will include the body 
    # of functions and classes directly in the documentation. 

    INLINE_SOURCES   = NO 

    # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
    # doxygen to hide any special comment blocks from generated source code 
    # fragments. Normal C and C++ comments will always remain visible. 

    STRIP_CODE_COMMENTS = YES 

    # If the REFERENCED_BY_RELATION tag is set to YES 
    # then for each documented function all documented 
    # functions referencing it will be listed. 

    REFERENCED_BY_RELATION = NO 

    # If the REFERENCES_RELATION tag is set to YES 
    # then for each documented function all documented entities 
    # called/used by that function will be listed. 

    REFERENCES_RELATION = NO 

    # If the REFERENCES_LINK_SOURCE tag is set to YES (the default) 
    # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from 
    # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will 
    # link to the source code. 
    # Otherwise they will link to the documentation. 

    REFERENCES_LINK_SOURCE = YES 

    # If the USE_HTAGS tag is set to YES then the references to source code 
    # will point to the HTML generated by the htags(1) tool instead of doxygen 
    # built-in source browser. The htags tool is part of GNU's global source 
    # tagging system (see http://www.gnu.org/software/global/global.html). You 
    # will need version 4.8.6 or higher. 

    USE_HTAGS    = NO 

    # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
    # will generate a verbatim copy of the header file for each class for 
    # which an include is specified. Set to NO to disable this. 

    VERBATIM_HEADERS  = YES 

    #--------------------------------------------------------------------------- 
    # configuration options related to the alphabetical class index 
    #--------------------------------------------------------------------------- 

    # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
    # of all compounds will be generated. Enable this if the project 
    # contains a lot of classes, structs, unions or interfaces. 

    ALPHABETICAL_INDEX  = NO 

    # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
    # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
    # in which this list will be split (can be a number in the range [1..20]) 

    COLS_IN_ALPHA_INDEX = 5 

    # In case all classes in a project start with a common prefix, all 
    # classes will be put under the same header in the alphabetical index. 
    # The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
    # should be ignored while generating the index headers. 

    IGNORE_PREFIX   = 

    #--------------------------------------------------------------------------- 
    # configuration options related to the HTML output 
    #--------------------------------------------------------------------------- 

    # If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
    # generate HTML output. 

    GENERATE_HTML   = YES 

    # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
    # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
    # put in front of it. If left blank `html' will be used as the default path. 

    HTML_OUTPUT   = html 

    # The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
    # each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
    # doxygen will generate files with .html extension. 

    HTML_FILE_EXTENSION = .html 

    # The HTML_HEADER tag can be used to specify a personal HTML header for 
    # each generated HTML page. If it is left blank doxygen will generate a 
    # standard header. 

    HTML_HEADER   = 

    # The HTML_FOOTER tag can be used to specify a personal HTML footer for 
    # each generated HTML page. If it is left blank doxygen will generate a 
    # standard footer. 

    HTML_FOOTER   = 

    # The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
    # style sheet that is used by each HTML page. It can be used to 
    # fine-tune the look of the HTML output. If the tag is left blank doxygen 
    # will generate a default style sheet. Note that doxygen will try to copy 
    # the style sheet file to the HTML output directory, so don't put your own 
    # stylesheet in the HTML output directory as well, or it will be erased! 

    HTML_STYLESHEET  = 

    # If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML 
    # page will contain the date and time when the page was generated. Setting 
    # this to NO can help when comparing the output of multiple runs. 

    HTML_TIMESTAMP   = YES 

    # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
    # files or namespaces will be aligned in HTML using tables. If set to 
    # NO a bullet list will be used. 

    HTML_ALIGN_MEMBERS  = YES 

    # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML 
    # documentation will contain sections that can be hidden and shown after the 
    # page has loaded. For this to work a browser that supports 
    # JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox 
    # Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). 

    HTML_DYNAMIC_SECTIONS = NO 


    GENERATE_DOCSET  = NO 

    DOCSET_FEEDNAME  = "Doxygen generated docs" 


    DOCSET_BUNDLE_ID  = org.doxygen.Project 


    GENERATE_HTMLHELP  = NO 

    CHM_FILE    = 

    HHC_LOCATION   = 


    GENERATE_CHI   = NO 


    CHM_INDEX_ENCODING  = 

    BINARY_TOC    = NO 

    TOC_EXPAND    = NO 

    GENERATE_QHP   = NO 


    QCH_FILE    = 

    QHP_NAMESPACE   = org.doxygen.Project 

    QHP_VIRTUAL_FOLDER  = doc 

    QHP_CUST_FILTER_NAME = 


    QHP_CUST_FILTER_ATTRS = 

    QHP_SECT_FILTER_ATTRS = 


    QHG_LOCATION   = 

    GENERATE_ECLIPSEHELP = NO 


    ECLIPSE_DOC_ID   = org.doxygen.Project 


    DISABLE_INDEX   = NO 

    ENUM_VALUES_PER_LINE = 4 

    GENERATE_TREEVIEW  = NO 


    USE_INLINE_TREES  = NO 
    TREEVIEW_WIDTH   = 250 
    FORMULA_FONTSIZE  = 10 

    SEARCHENGINE   = YES 


    SERVER_BASED_SEARCH = NO 


    GENERATE_LATEX   = YES 
    LATEX_OUTPUT   = latex 

    LATEX_CMD_NAME   = latex 

    MAKEINDEX_CMD_NAME  = makeindex 


    COMPACT_LATEX   = NO 

    PAPER_TYPE    = a4wide 


    EXTRA_PACKAGES   = 

    LATEX_HEADER   = 

    PDF_HYPERLINKS   = YES 


    USE_PDFLATEX   = YES 
    LATEX_BATCHMODE  = NO 



    LATEX_HIDE_INDICES  = NO 

    LATEX_SOURCE_CODE  = NO 

    #--------------------------------------------------------------------------- 
    # configuration options related to the RTF output 
    #--------------------------------------------------------------------------- 


    GENERATE_RTF   = NO 



    RTF_OUTPUT    = rtf 



    COMPACT_RTF   = NO 


    RTF_HYPERLINKS   = NO 


    RTF_STYLESHEET_FILE = 

    RTF_EXTENSIONS_FILE = 

    #--------------------------------------------------------------------------- 
    # configuration options related to the man page output 
    #--------------------------------------------------------------------------- 

    GENERATE_MAN   = NO 

    MAN_OUTPUT    = man 

    MAN_EXTENSION   = .3 

    MAN_LINKS    = NO 

    #--------------------------------------------------------------------------- 
    # configuration options related to the XML output 
    #--------------------------------------------------------------------------- 


    GENERATE_XML   = NO 


    XML_OUTPUT    = xml 


    XML_SCHEMA    = 

    XML_DTD    = 

    XML_PROGRAMLISTING  = YES 

    #--------------------------------------------------------------------------- 
    # configuration options for the AutoGen Definitions output 
    #--------------------------------------------------------------------------- 
    GENERATE_AUTOGEN_DEF = NO 

    #--------------------------------------------------------------------------- 
    # configuration options related to the Perl module output 
    #--------------------------------------------------------------------------- 

    GENERATE_PERLMOD  = NO 


    PERLMOD_LATEX   = NO 


    PERLMOD_PRETTY   = YES 


    PERLMOD_MAKEVAR_PREFIX = 

    #--------------------------------------------------------------------------- 
    # Configuration options related to the preprocessor 
    #--------------------------------------------------------------------------- 
    ENABLE_PREPROCESSING = YES 


    MACRO_EXPANSION  = NO 

    EXPAND_ONLY_PREDEF  = NO 

    SEARCH_INCLUDES  = YES 
    INCLUDE_PATH   = 


    INCLUDE_FILE_PATTERNS = 
    PREDEFINED    = 


    EXPAND_AS_DEFINED  = 

    SKIP_FUNCTION_MACROS = YES 

    #--------------------------------------------------------------------------- 
    # Configuration::additions related to external references 
    #--------------------------------------------------------------------------- 

    TAGFILES    = 

    GENERATE_TAGFILE  = 


    ALLEXTERNALS   = NO 

    EXTERNAL_GROUPS  = YES 



    PERL_PATH    = /usr/bin/perl 

    #--------------------------------------------------------------------------- 
    # Configuration options related to the dot tool 
    #--------------------------------------------------------------------------- 

    # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
    # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
    # or super classes. Setting the tag to NO turns the diagrams off. Note that 
    # this option is superseded by the HAVE_DOT option below. This is only a 
    # fallback. It is recommended to install and use dot, since it yields more 
    # powerful graphs. 

    CLASS_DIAGRAMS   = YES 

    # You can define message sequence charts within doxygen comments using the \msc 
    # command. Doxygen will then run the mscgen tool (see 
    # http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the 
    # documentation. The MSCGEN_PATH tag allows you to specify the directory where 
    # the mscgen tool resides. If left empty the tool is assumed to be found in the 
    # default search path. 

    MSCGEN_PATH   = 


    HIDE_UNDOC_RELATIONS = YES 

    HAVE_DOT    = NO 

    DOT_FONTNAME   = FreeSans 

    DOT_FONTSIZE   = 10 
    DOT_FONTPATH   = 


    CLASS_GRAPH   = YES 



    COLLABORATION_GRAPH = YES 



    GROUP_GRAPHS   = YES 

    UML_LOOK    = NO 


    TEMPLATE_RELATIONS  = NO 


    INCLUDE_GRAPH   = YES 


    INCLUDED_BY_GRAPH  = YES 


    CALL_GRAPH    = NO 



    CALLER_GRAPH   = NO 



    GRAPHICAL_HIERARCHY = YES 



    DIRECTORY_GRAPH  = YES 


    DOT_IMAGE_FORMAT  = png 



    DOT_PATH    = 



    DOTFILE_DIRS   = 


    DOT_GRAPH_MAX_NODES = 50 



    MAX_DOT_GRAPH_DEPTH = 0 


    DOT_TRANSPARENT  = NO 



    DOT_MULTI_TARGETS  = YES 



    GENERATE_LEGEND  = YES 


    DOT_CLEANUP   = YES 

+2

Это точно не отвечает на вопрос, не могли бы вы указать на конкретные различия, которые вызывают правильное поведение в вашем коде по сравнению с неправильным поведением в вопросе? – sokkyoku

+1

Этот doxyfile утверждает, что он вообще не использует файлы тегов. (См. «TAGFILES =' »и« GENERATE_TAGFILE = '»), поэтому я не думаю, что он отвечает на вопрос здесь. –

+0

Это работает, если все файлы находятся в одной папке. – sancelot