# This is Doxygen configuration file
#
# Doxygen provides over 260 configuration statements
# To make this file easier to follow,
# it contains only statements that are non-default
#
# NOTE:
# It is recommended not to change defaults unless specifically required
# Test any changes how they affect generated documentation
# Make sure that correct warnings are generated to flag issues with documented code
#
# For the complete list of configuration statements see:
# http://doxygen.nl/manual/config.html


PROJECT_NAME = "ESP Protocols Programming Guide"

## The 'INPUT' statement below is used as input by script 'gen-df-input.py'
## to automatically generate API reference list files heder_file.inc
## These files are placed in '_inc' directory
## and used to include in API reference documentation

INPUT = \
    $(PROJECT_PATH)/include/esp_websocket_client.h

## Get warnings for functions that have no documentation for their parameters or return value
##
WARN_NO_PARAMDOC = YES

## Enable preprocessing and remove __attribute__(...) expressions from the INPUT files
##
ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES
PREDEFINED             = \
    $(ENV_DOXYGEN_DEFINES) \
    __DOXYGEN__=1 \
    __attribute__(x)= \
	_Static_assert()= \
    IDF_DEPRECATED(X)= \
    IRAM_ATTR= \
    configSUPPORT_DYNAMIC_ALLOCATION=1 \
    configSUPPORT_STATIC_ALLOCATION=1 \
    configQUEUE_REGISTRY_SIZE=1 \
    configUSE_RECURSIVE_MUTEXES=1 \
    configTHREAD_LOCAL_STORAGE_DELETE_CALLBACKS=1 \
    configNUM_THREAD_LOCAL_STORAGE_POINTERS=1 \
    configUSE_APPLICATION_TASK_TAG=1 \
    configTASKLIST_INCLUDE_COREID=1 \
    "ESP_EVENT_DECLARE_BASE(x)=extern esp_event_base_t x"

## Do not complain about not having dot
##
HAVE_DOT = NO

## Generate XML that is required for Breathe
##
GENERATE_XML    = YES
XML_OUTPUT      = xml

GENERATE_HTML   = NO
HAVE_DOT        = NO
GENERATE_LATEX  = NO
GENERATE_MAN    = YES
GENERATE_RTF    = NO

## Skip distracting progress messages
##
QUIET = YES

## Enable Section Tags for conditional documentation
##
ENABLED_SECTIONS += \
    DOC_EXCLUDE_HEADER_SECTION \   ## To conditionally remove doc sections from IDF source files without affecting documentation in upstream files.
    DOC_SINGLE_GROUP        ## To conditionally remove groups from the documentation and create a 'flat' document without affecting documentation in upstream files.
