代码之家  ›  专栏  ›  技术社区  ›  vamyip

doxygen不显示静态函数和公共函数之间的依赖关系

  •  3
  • vamyip  · 技术社区  · 16 年前

    你好 我正试图用doxygen来记录我的C#代码。问题是静态函数和公共/私有函数之间的依赖关系没有显示出来。其中,公共/私人之间的数据显示正确。在这件事上有人能帮我吗?

    将配置粘贴到此处,并附上一些示例代码:

    #---------------------------------------------------------------------------
    # Project related configuration options
    #---------------------------------------------------------------------------
    DOXYFILE_ENCODING      = UTF-8
    PROJECT_NAME           = abc
    PROJECT_NUMBER         = 1.0
    OUTPUT_DIRECTORY       = ../CodeDocumentation
    CREATE_SUBDIRS         = YES
    OUTPUT_LANGUAGE        = English
    BRIEF_MEMBER_DESC      = YES
    REPEAT_BRIEF           = YES
    ABBREVIATE_BRIEF       = "The $name class" \
                             "The $name widget" \
                             "The $name file" \
                             is \
                             provides \
                             specifies \
                             contains \
                             represents \
                             a \
                             an \
                             the
    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   = YES
    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            = YES
    EXTRACT_PRIVATE        = YES
    EXTRACT_STATIC         = YES
    EXTRACT_LOCAL_CLASSES  = YES
    EXTRACT_LOCAL_METHODS  = YES
    EXTRACT_ANON_NSPACES   = YES
    HIDE_UNDOC_MEMBERS     = NO
    HIDE_UNDOC_CLASSES     = NO
    HIDE_FRIEND_COMPOUNDS  = NO
    HIDE_IN_BODY_DOCS      = NO
    INTERNAL_DOCS          = YES
    CASE_SENSE_NAMES       = NO
    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       = 
    MAX_INITIALIZER_LINES  = 30
    SHOW_USED_FILES        = YES
    SHOW_DIRECTORIES       = NO
    SHOW_FILES             = YES
    SHOW_NAMESPACES        = YES
    FILE_VERSION_FILTER    = 
    LAYOUT_FILE            = 
    
    #---------------------------------------------------------------------------
    # configuration options related to warning and progress messages
    #---------------------------------------------------------------------------
    QUIET                  = NO
    WARNINGS               = YES
    WARN_IF_UNDOCUMENTED   = YES
    WARN_IF_DOC_ERROR      = YES
    WARN_NO_PARAMDOC       = NO
    WARN_FORMAT            = "$file:$line: $text"
    WARN_LOGFILE           = 
    
    #---------------------------------------------------------------------------
    # configuration options related to the input files
    #---------------------------------------------------------------------------
    INPUT                  = ../../Report/mycode
    INPUT_ENCODING         = UTF-8
    FILE_PATTERNS          = *.c \
                             *.cc \
                             *.cxx \
                             *.cpp \
                             *.c++ \
                             *.d \
                             *.java \
                             *.ii \
                             *.ixx \
                             *.ipp \
                             *.i++ \
                             *.inl \
                             *.h \
                             *.hh \
                             *.hxx \
                             *.hpp \
                             *.h++ \
                             *.idl \
                             *.odl \
                             *.cs \
                             *.php \
                             *.php3 \
                             *.inc \
                             *.m \
                             *.mm \
                             *.dox \
                             *.py \
                             *.f90 \
                             *.f \
                             *.vhd \
                             *.vhdl
    RECURSIVE              = YES
    EXCLUDE                = 
    EXCLUDE_SYMLINKS       = NO
    EXCLUDE_PATTERNS       = 
    EXCLUDE_SYMBOLS        = 
    EXAMPLE_PATH           = 
    EXAMPLE_PATTERNS       = *
    EXAMPLE_RECURSIVE      = NO
    IMAGE_PATH             = 
    INPUT_FILTER           = 
    FILTER_PATTERNS        = 
    FILTER_SOURCE_FILES    = NO
    
    #---------------------------------------------------------------------------
    # configuration options related to source browsing
    #---------------------------------------------------------------------------
    SOURCE_BROWSER         = YES
    INLINE_SOURCES         = NO
    STRIP_CODE_COMMENTS    = YES
    REFERENCED_BY_RELATION = YES
    REFERENCES_RELATION    = YES
    REFERENCES_LINK_SOURCE = YES
    USE_HTAGS              = NO
    VERBATIM_HEADERS       = YES
    
    #---------------------------------------------------------------------------
    # configuration options related to the alphabetical class index
    #---------------------------------------------------------------------------
    ALPHABETICAL_INDEX     = YES
    COLS_IN_ALPHA_INDEX    = 5
    IGNORE_PREFIX          = 
    
    #---------------------------------------------------------------------------
    # configuration options related to the HTML output
    #---------------------------------------------------------------------------
    GENERATE_HTML          = YES
    HTML_OUTPUT            = html
    HTML_FILE_EXTENSION    = .html
    HTML_HEADER            = 
    HTML_FOOTER            = 
    HTML_STYLESHEET        = 
    HTML_COLORSTYLE_HUE    = 220
    HTML_COLORSTYLE_SAT    = 100
    HTML_COLORSTYLE_GAMMA  = 80
    HTML_TIMESTAMP         = YES
    HTML_ALIGN_MEMBERS     = YES
    HTML_DYNAMIC_SECTIONS  = NO
    GENERATE_DOCSET        = NO
    DOCSET_FEEDNAME        = "Doxygen generated docs"
    DOCSET_BUNDLE_ID       = org.doxygen.Project
    DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
    DOCSET_PUBLISHER_NAME  = Publisher
    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      = YES
    USE_INLINE_TREES       = NO
    TREEVIEW_WIDTH         = 250
    EXT_LINKS_IN_WINDOW    = NO
    FORMULA_FONTSIZE       = 10
    FORMULA_TRANSPARENT    = YES
    SEARCHENGINE           = NO
    SERVER_BASED_SEARCH    = NO
    
    #---------------------------------------------------------------------------
    # configuration options related to the LaTeX output
    #---------------------------------------------------------------------------
    GENERATE_LATEX         = NO
    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
    #---------------------------------------------------------------------------
    CLASS_DIAGRAMS         = YES
    MSCGEN_PATH            = 
    HIDE_UNDOC_RELATIONS   = YES
    HAVE_DOT               = YES
    DOT_NUM_THREADS        = 0
    DOT_FONTNAME           = FreeSans.ttf
    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             = YES
    CALLER_GRAPH           = YES
    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
    

    一个小的

    csharp项目包含以下文件: lib。项目文件

    A.C

    public static Class A
    {
        public static void memberA()
        {
         ...
        }
    
    }
    

    理学士

    public Class B
    {
        public void memberB()
        {
         ...
        }
    
    }
    

    我在一个不同的csharp项目中引用了它:代码。项目文件 它有如下代码文件:

    abc。反恐精英

    public class abc
    {
        public void myfunction()
        {
            A.memberA();
    
            B objB = new B();
            B.memberB();    
        }
    }
    

    在上面的代码中,doxygen为类B和memberB()准确地生成依赖关系图和引用列表。但是,它不会为类A和memberA()生成相同的结果。它们都包含在文档中。唯一的问题是,类A及其成员函数是静态的,它的依赖关系图不会生成。

    这个代码有用吗?如果需要更清晰的信息,请返回。

    谢谢
    瓦米普

    1 回复  |  直到 16 年前
        1
  •  3
  •   Dimitri van Heesch    16 年前

    您是否将EXTRACT_STATIC设置为YES?如果是这样的话,一个显示问题的小代码示例会有所帮助。