# Doxyfile 1.8.11

#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING      = UTF-8
PROJECT_NAME           = "libwebsockets"
PROJECT_NUMBER         =
PROJECT_BRIEF          = "Lightweight C library for HTML5 websockets"
PROJECT_LOGO           = "./test-apps/libwebsockets.org-logo.svg"
OUTPUT_DIRECTORY       = "doc"
CREATE_SUBDIRS         = NO
ALLOW_UNICODE_NAMES    = NO
OUTPUT_LANGUAGE        = English
BRIEF_MEMBER_DESC      = YES
REPEAT_BRIEF           = YES
ABBREVIATE_BRIEF       =
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  = YES
OPTIMIZE_OUTPUT_JAVA   = NO
OPTIMIZE_FOR_FORTRAN   = NO
OPTIMIZE_OUTPUT_VHDL   = NO
EXTENSION_MAPPING      =
MARKDOWN_SUPPORT       = YES
AUTOLINK_SUPPORT       = YES
BUILTIN_STL_SUPPORT    = NO
CPP_CLI_SUPPORT        = NO
SIP_SUPPORT            = NO
IDL_PROPERTY_SUPPORT   = YES
DISTRIBUTE_GROUP_DOC   = NO
GROUP_NESTED_COMPOUNDS = NO
SUBGROUPING            = YES
INLINE_GROUPED_CLASSES = NO
INLINE_SIMPLE_STRUCTS  = NO
TYPEDEF_HIDES_STRUCT   = NO
LOOKUP_CACHE_SIZE      = 0
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL            = NO
EXTRACT_PRIVATE        = NO
EXTRACT_PACKAGE        = 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
HIDE_COMPOUND_REFERENCE= NO
SHOW_INCLUDE_FILES     = YES
SHOW_GROUPED_MEMB_INC  = YES
FORCE_LOCAL_INCLUDES   = NO
INLINE_INFO            = YES
SORT_MEMBER_DOCS       = YES
SORT_BRIEF_DOCS        = NO
SORT_MEMBERS_CTORS_1ST = NO
SORT_GROUP_NAMES       = YES
SORT_BY_SCOPE_NAME     = NO
STRICT_PROTO_MATCHING  = YES
GENERATE_TODOLIST      = YES
GENERATE_TESTLIST      = YES
GENERATE_BUGLIST       = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS       =
MAX_INITIALIZER_LINES  = 30
SHOW_USED_FILES        = YES
SHOW_FILES             = YES
SHOW_NAMESPACES        = YES
FILE_VERSION_FILTER    =
LAYOUT_FILE            =
CITE_BIB_FILES         =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET                  = NO
WARNINGS               = YES
WARN_IF_UNDOCUMENTED   = NO
WARN_IF_DOC_ERROR      = YES
WARN_NO_PARAMDOC       = NO
WARN_AS_ERROR          = NO
WARN_FORMAT            = "$file:$line: $text"
WARN_LOGFILE           =
#---------------------------------------------------------------------------
# Configuration options related to the input files
#---------------------------------------------------------------------------
INPUT                  = include/libwebsockets.h \
			 include/libwebsockets/lws-adopt.h \
			 include/libwebsockets/lws-async-dns.h \
			 include/libwebsockets/lws-bb-i2c.h \
			 include/libwebsockets/lws-bb-spi.h \
			 include/libwebsockets/lws-button.h \
			 include/libwebsockets/lws-callbacks.h \
			 include/libwebsockets/lws-cgi.h \
			 include/libwebsockets/lws-client.h \
			 include/libwebsockets/lws-context-vhost.h \
			 include/libwebsockets/lws-dbus.h \
			 include/libwebsockets/lws-detailed-latency.h \
			 include/libwebsockets/lws-diskcache.h \
			 include/libwebsockets/lws-display.h \
			 include/libwebsockets/lws-dll2.h \
			 include/libwebsockets/lws-dsh.h \
			 include/libwebsockets/lws-eventlib-exports.h \
			 include/libwebsockets/lws-freertos.h \
			 include/libwebsockets/lws-fts.h \
			 include/libwebsockets/lws-genaes.h \
			 include/libwebsockets/lws-gencrypto.h \
			 include/libwebsockets/lws-genec.h \
			 include/libwebsockets/lws-genhash.h \
			 include/libwebsockets/lws-genrsa.h \
			 include/libwebsockets/lws-gpio.h \
			 include/libwebsockets/lws-http.h \
			 include/libwebsockets/lws-i2c.h \
			 include/libwebsockets/lws-ili9341-spi.h \
			 include/libwebsockets/lws-jose.h \
			 include/libwebsockets/lws-jwe.h \
			 include/libwebsockets/lws-jwk.h \
			 include/libwebsockets/lws-jws.h \
			 include/libwebsockets/lws-led.h \
			 include/libwebsockets/lws-lejp.h \
			 include/libwebsockets/lws-logs.h \
			 include/libwebsockets/lws-lwsac.h \
			 include/libwebsockets/lws-misc.h \
			 include/libwebsockets/lws-mqtt.h \
			 include/libwebsockets/lws-netdev.h \
			 include/libwebsockets/lws-network-helper.h \
			 include/libwebsockets/lws-protocols-plugins.h \
			 include/libwebsockets/lws-purify.h \
			 include/libwebsockets/lws-pwm.h \
			 include/libwebsockets/lws-retry.h \
			 include/libwebsockets/lws-ring.h \
			 include/libwebsockets/lws-secure-streams-client.h \
			 include/libwebsockets/lws-secure-streams.h \
			 include/libwebsockets/lws-secure-streams-policy.h \
			 include/libwebsockets/lws-sequencer.h \
			 include/libwebsockets/lws-service.h \
			 include/libwebsockets/lws-settings.h \
			 include/libwebsockets/lws-sha1-base64.h \
			 include/libwebsockets/lws-smd.h \
			 include/libwebsockets/lws-spa.h \
			 include/libwebsockets/lws-spi.h \
			 include/libwebsockets/lws-ssd1306-i2c.h \
			 include/libwebsockets/lws-state.h \
			 include/libwebsockets/lws-stats.h \
			 include/libwebsockets/lws-struct.h \
			 include/libwebsockets/lws-system.h \
			 include/libwebsockets/lws-test-sequencer.h \
			 include/libwebsockets/lws-threadpool.h \
			 include/libwebsockets/lws-timeout-timer.h \
			 include/libwebsockets/lws-tokenize.h \
			 include/libwebsockets/lws-vfs.h \
			 include/libwebsockets/lws-write.h \
			 include/libwebsockets/lws-writeable.h \
			 include/libwebsockets/lws-ws-close.h \
			 include/libwebsockets/lws-ws-ext.h \
			 include/libwebsockets/lws-ws-state.h \
			 include/libwebsockets/lws-x509.h \
			 plugins/ssh-base/include/lws-plugin-ssh.h \
			 ./READMEs/mainpage.md \
			 ./READMEs/README.async-dns.md \
			 ./READMEs/README.build.md \
			 ./READMEs/README.ci.md \
			 ./READMEs/README.coding.md \
			 ./READMEs/README.content-security-policy.md \
			 ./READMEs/README.contributing.md \
			 ./READMEs/README.crypto-apis.md \
			 ./READMEs/README.detailed-latency.md \
			 ./READMEs/README.esp32.md \
			 ./READMEs/README.h2-long-poll.md \
			 ./READMEs/README.http-fallback.md \
			 ./READMEs/README.lws_dll.md \
			 ./READMEs/README.lws_sequencer.md \
			 ./READMEs/README.lws_struct.md \
			 ./READMEs/README.lws_sul.md \
			 ./READMEs/README.lwsws.md \
			 ./READMEs/README-plugin-sshd-base.md \
			 ./READMEs/README.plugin-acme.md \
			 ./READMEs/README.porting.md \
			 ./READMEs/README.problems.md \
			 ./READMEs/README.release-policy.md \
			 ./READMEs/README.test-apps.md \
			 ./READMEs/README.unix-domain-reverse-proxy.md \
			 ./READMEs/README.vulnerability-reporting.md \
			 ./doc-assets 
INPUT_ENCODING         = UTF-8
FILE_PATTERNS          = lib/*.c *.md *.png include/*.h
RECURSIVE              = NO
EXCLUDE                =
EXCLUDE_SYMLINKS       = NO
EXCLUDE_PATTERNS       =
EXCLUDE_SYMBOLS        =
EXAMPLE_PATH           =
EXAMPLE_PATTERNS       =
EXAMPLE_RECURSIVE      = NO
IMAGE_PATH             = doc-assets
INPUT_FILTER           =
FILTER_PATTERNS        =
FILTER_SOURCE_FILES    = NO
FILTER_SOURCE_PATTERNS =
USE_MDFILE_AS_MAINPAGE = mainpage.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER         = NO
INLINE_SOURCES         = YES
STRIP_CODE_COMMENTS    = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION    = NO
REFERENCES_LINK_SOURCE = YES
SOURCE_TOOLTIPS        = 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_EXTRA_STYLESHEET  = scripts/dox-extra.css
HTML_EXTRA_FILES       =
HTML_COLORSTYLE_HUE    = 220
HTML_COLORSTYLE_SAT    = 100
HTML_COLORSTYLE_GAMMA  = 80
HTML_TIMESTAMP         = NO
HTML_DYNAMIC_SECTIONS  = NO
HTML_INDEX_NUM_ENTRIES = 100
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
GENERATE_TREEVIEW      = YES
ENUM_VALUES_PER_LINE   = 4
TREEVIEW_WIDTH         = 250
EXT_LINKS_IN_WINDOW    = NO
FORMULA_FONTSIZE       = 10
FORMULA_TRANSPARENT    = YES
USE_MATHJAX            = NO
MATHJAX_FORMAT         = HTML-CSS
MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
MATHJAX_EXTENSIONS     =
MATHJAX_CODEFILE       =
SEARCHENGINE           = NO
SERVER_BASED_SEARCH    = NO
EXTERNAL_SEARCH        = NO
SEARCHENGINE_URL       =
SEARCHDATA_FILE        = searchdata.xml
EXTERNAL_SEARCH_ID     =
EXTRA_SEARCH_MAPPINGS  =
#---------------------------------------------------------------------------
# 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             = a4
EXTRA_PACKAGES         =
LATEX_HEADER           =
LATEX_FOOTER           =
LATEX_EXTRA_STYLESHEET =
LATEX_EXTRA_FILES      =
PDF_HYPERLINKS         = YES
USE_PDFLATEX           = YES
LATEX_BATCHMODE        = NO
LATEX_HIDE_INDICES     = NO
LATEX_SOURCE_CODE      = NO
LATEX_BIB_STYLE        = plain
LATEX_TIMESTAMP        = 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    =
RTF_SOURCE_CODE        = NO
#---------------------------------------------------------------------------
# Configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN           = NO
MAN_OUTPUT             = man
MAN_EXTENSION          = .3
MAN_SUBDIR             =
MAN_LINKS              = NO
#---------------------------------------------------------------------------
# Configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML           = NO
XML_OUTPUT             = xml
XML_PROGRAMLISTING     = YES
#---------------------------------------------------------------------------
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK       = NO
DOCBOOK_OUTPUT         = docbook
DOCBOOK_PROGRAMLISTING = NO
#---------------------------------------------------------------------------
# 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
INCLUDE_FILE_PATTERNS  =
PREDEFINED             =
EXPAND_AS_DEFINED      =
SKIP_FUNCTION_MACROS   = YES
#---------------------------------------------------------------------------
# Configuration options related to external references
#---------------------------------------------------------------------------
TAGFILES               =
GENERATE_TAGFILE       =
ALLEXTERNALS           = NO
EXTERNAL_GROUPS        = YES
EXTERNAL_PAGES         = YES
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS         = YES
DIA_PATH               =
HIDE_UNDOC_RELATIONS   = YES
HAVE_DOT               = NO
DOT_NUM_THREADS        = 0
DOT_FONTNAME           = Helvetica
DOT_FONTSIZE           = 10
DOT_FONTPATH           =
CLASS_GRAPH            = YES
COLLABORATION_GRAPH    = YES
GROUP_GRAPHS           = YES
UML_LOOK               = NO
UML_LIMIT_NUM_FIELDS   = 10
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
INTERACTIVE_SVG        = NO
DOT_PATH               =
DOTFILE_DIRS           =
MSCFILE_DIRS           =
DIAFILE_DIRS           =
PLANTUML_JAR_PATH      =
PLANTUML_INCLUDE_PATH  =
DOT_GRAPH_MAX_NODES    = 50
MAX_DOT_GRAPH_DEPTH    = 0
DOT_TRANSPARENT        = NO
DOT_MULTI_TARGETS      = NO
GENERATE_LEGEND        = YES
DOT_CLEANUP            = YES
