# Doxygen configuration for peclet-amr.
# Generate docs with:   doxygen docs/Doxyfile
# Output:               docs/html/index.html
# The Documentation CI workflow (.github/workflows/docs.yml) publishes docs/html to GitHub Pages.
# PROJECT_NUMBER is checked against pyproject.toml by the suite's release pre-flight.

DOXYFILE_ENCODING      = UTF-8
PROJECT_NAME           = "peclet-amr"
PROJECT_NUMBER         = 0.1.0
PROJECT_BRIEF          = "Block-local-Morton AMR octree + collocated cut-cell Navier–Stokes solver (header-only C++20, Kokkos + MPI)"
OUTPUT_DIRECTORY       = docs
HTML_OUTPUT            = html
CREATE_SUBDIRS         = NO
FULL_PATH_NAMES        = NO

#---- inputs --------------------------------------------------------------------------------------
INPUT                  = README.md include python/amr_bindings.cpp
USE_MDFILE_AS_MAINPAGE = README.md
FILE_PATTERNS          = *.hpp *.cpp *.md
RECURSIVE              = YES
EXCLUDE_PATTERNS       = */build*/* */.git/*

#---- extraction ----------------------------------------------------------------------------------
EXTRACT_ALL            = YES
EXTRACT_STATIC         = YES
EXTRACT_PRIVATE        = NO
EXTRACT_LOCAL_CLASSES  = YES
JAVADOC_AUTOBRIEF      = YES
QT_AUTOBRIEF           = YES
MARKDOWN_SUPPORT       = YES
TAB_SIZE               = 2
DISTRIBUTE_GROUP_DOC   = YES

#---- preprocessing -------------------------------------------------------------------------------
# Document the declarations an MPI + Kokkos build sees, so the conditionally-compiled paths are not
# dropped from the docs.
ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES
PREDEFINED             = KOKKOS_INLINE_FUNCTION= \
                         KOKKOS_FUNCTION= \
                         MORTON_HD= \
                         PECLET_HD=

#---- presentation --------------------------------------------------------------------------------
GENERATE_HTML          = YES
GENERATE_LATEX         = NO
GENERATE_TREEVIEW      = YES
DISABLE_INDEX          = NO
FULL_SIDEBAR           = NO
SOURCE_BROWSER         = YES
INLINE_SOURCES         = NO
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION    = YES
HTML_COLORSTYLE        = LIGHT
SORT_MEMBER_DOCS       = NO

#---- diagrams (no external dot dependency required) ----------------------------------------------
HAVE_DOT               = NO
CLASS_GRAPH            = YES
COLLABORATION_GRAPH    = NO

#---- warnings ------------------------------------------------------------------------------------
QUIET                  = YES
WARNINGS               = YES
WARN_IF_UNDOCUMENTED   = NO
WARN_NO_PARAMDOC       = NO
WARN_AS_ERROR          = NO
