##============================================================================
##  The contents of this file are covered by the Viskores license. See
##  LICENSE.txt for details.
##
##  By contributing to this file, all contributors agree to the Developer
##  Certificate of Origin Version 1.1 (DCO 1.1) as stated in DCO.txt.
##============================================================================

##============================================================================
##  Copyright (c) Kitware, Inc.
##  All rights reserved.
##  See LICENSE.txt for details.
##
##  This software is distributed WITHOUT ANY WARRANTY; without even
##  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
##  PURPOSE.  See the above copyright notice for more information.
##============================================================================

PROJECT_NAME           = "Viskores"

PROJECT_NUMBER         = @Viskores_VERSION@

OUTPUT_DIRECTORY       = @Viskores_BINARY_DIR@/docs/doxygen/

CREATE_SUBDIRS         = NO

OUTPUT_LANGUAGE        = English

BRIEF_MEMBER_DESC      = YES

REPEAT_BRIEF           = YES

ABBREVIATE_BRIEF       =

ALWAYS_DETAILED_SEC    = NO

INLINE_INHERITED_MEMB  = NO

FULL_PATH_NAMES        = NO

STRIP_FROM_PATH        =

STRIP_FROM_INC_PATH    =

SHORT_NAMES            = NO

SHOW_NAMESPACES        = NO

JAVADOC_AUTOBRIEF      = YES

MULTILINE_CPP_IS_BRIEF = NO

INHERIT_DOCS           = YES

DISTRIBUTE_GROUP_DOC   = YES

TAB_SIZE               = 2

ALIASES                =

OPTIMIZE_OUTPUT_FOR_C  = NO

OPTIMIZE_OUTPUT_JAVA   = NO

SUBGROUPING            = YES

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

EXTRACT_ALL            = YES

EXTRACT_PRIVATE        = YES

EXTRACT_STATIC         = NO

EXTRACT_LOCAL_CLASSES  = NO

EXTRACT_LOCAL_METHODS  = 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

INLINE_INFO            = YES

SORT_MEMBER_DOCS       = YES

SORT_BRIEF_DOCS        = 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

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

QUIET                  = NO

WARNINGS               = YES

WARN_IF_UNDOCUMENTED   = YES

WARN_IF_DOC_ERROR      = YES

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

WARN_LOGFILE           =

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

INPUT                  = @Viskores_SOURCE_DIR@/README.md
INPUT                  += @Viskores_SOURCE_DIR@/CONTRIBUTING.md
INPUT                  += @Viskores_SOURCE_DIR@/docs/CodingConventions.md
INPUT                  += @Viskores_SOURCE_DIR@/viskores
INPUT                  += @Viskores_BINARY_DIR@/include

USE_MDFILE_AS_MAINPAGE = README.md

FILE_PATTERNS          = *.h

RECURSIVE              = YES

EXCLUDE                = @Viskores_SOURCE_DIR@/viskores/testing/OptionParser.h
EXCLUDE                += @Viskores_SOURCE_DIR@/viskores/exec/cuda/internal/ExecutionPolicy.h

EXCLUDE_SYMLINKS       = NO

EXCLUDE_PATTERNS       = */benchmarking/*
EXCLUDE_PATTERNS       += */examples/*
EXCLUDE_PATTERNS       += */testing/*
EXCLUDE_PATTERNS       += */thirdparty/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/filter/*/worklet/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/rendering/raytracing/*
EXCLUDE_PATTERNS       += UnitTest*

# Before filters existed in Viskores, users were expected to interact directly
# with worklets, and several algorithms were written in this way. There are
# some complex algorithms that never made the jump to filters, but we never
# threw them out in hopes they become useful. At some point, we should
# probably delete or remove them, but for now just hide them to keep the
# documentation from getting messy.
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/worklet/colorconversion/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/worklet/cosmotools/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/worklet/spatialstructure/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/worklet/splatkernels/*
EXCLUDE_PATTERNS       += @Viskores_SOURCE_DIR@/viskores/worklet/wavelets/*

EXCLUDE_SYMBOLS        = thrust
EXCLUDE_SYMBOLS        += benchmarking
EXCLUDE_SYMBOLS        += detail
EXCLUDE_SYMBOLS        += internal
EXCLUDE_SYMBOLS        += kx
EXCLUDE_SYMBOLS        += placeholders
EXCLUDE_SYMBOLS        += *VISKORES_*_EXPORT*

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         = NO

INLINE_SOURCES         = NO

STRIP_CODE_COMMENTS    = YES

REFERENCED_BY_RELATION = NO

REFERENCES_RELATION    = NO

VERBATIM_HEADERS       = YES

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

ALPHABETICAL_INDEX     = YES

COLS_IN_ALPHA_INDEX    = 2

IGNORE_PREFIX          =

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

GENERATE_HTML          = @Viskores_Doxygen_HTML_output@

HTML_OUTPUT            = html

HTML_FILE_EXTENSION    = .html

HTML_HEADER            =

HTML_FOOTER            =

HTML_STYLESHEET        =

GENERATE_HTMLHELP      = NO

CHM_FILE               =

HHC_LOCATION           =

GENERATE_CHI           = NO

BINARY_TOC             = NO

TOC_EXPAND             = NO

DISABLE_INDEX          = NO

ENUM_VALUES_PER_LINE   = 4

GENERATE_TREEVIEW      = NO

TREEVIEW_WIDTH         = 250

#---------------------------------------------------------------------------
# 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         = NO

USE_PDFLATEX           = NO

LATEX_BATCHMODE        = NO

LATEX_HIDE_INDICES     = 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           = @Viskores_ENABLE_USERS_GUIDE@

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

# Turning macro expansion on is required to work around issue with breathe
# (for Sphinx documentation) parsing function modifiers.
# https://github.com/breathe-doc/breathe/issues/905
MACRO_EXPANSION        = YES

EXPAND_ONLY_PREDEF     = NO

SEARCH_INCLUDES        = YES

INCLUDE_PATH           = @Viskores_SOURCE_DIR@ @Viskores_BINARY_DIR@/include

INCLUDE_FILE_PATTERNS  =

PREDEFINED             = DOXYGEN
PREDEFINED             += VISKORES_DOXYGEN_ONLY

EXPAND_AS_DEFINED      =

SKIP_FUNCTION_MACROS   = YES

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

TAGFILES               =

GENERATE_TAGFILE       =

ALLEXTERNALS           = NO

EXTERNAL_GROUPS        = YES

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

CLASS_DIAGRAMS         = YES

HIDE_UNDOC_RELATIONS   = YES

HAVE_DOT               = @Viskores_DOXYGEN_HAVE_DOT@

CLASS_GRAPH            = YES

COLLABORATION_GRAPH    = YES

UML_LOOK               = NO

TEMPLATE_RELATIONS     = NO

INCLUDE_GRAPH          = YES

INCLUDED_BY_GRAPH      = YES

CALL_GRAPH             = NO

GRAPHICAL_HIERARCHY    = NO

DOT_IMAGE_FORMAT       = png

DOT_PATH               = @Viskores_DOXYGEN_DOT_PATH@

DOTFILE_DIRS           =

DOT_GRAPH_MAX_NODES    = 75

MAX_DOT_GRAPH_DEPTH    = 5

GENERATE_LEGEND        = YES

DOT_CLEANUP            = YES

#---------------------------------------------------------------------------
# Configuration::additions related to the search engine
#---------------------------------------------------------------------------

SEARCHENGINE           = NO
