···33set(CMAKE_SYSTEM_NAME Linux)
44set(CMAKE_SYSTEM_PROCESSOR ARM)
5566-set(CMAKE_C_COMPILER "arm-none-eabi-gcc")
77-set(CMAKE_ASM_COMPILER "arm-none-eabi-gcc")
66+include(cmake/target.cmake)
77+setup("MODEL_0" ${CMAKE_CURRENT_SOURCE_DIR})
8899# We are using this inside of a docker container that is cross-compiling and we
1010# thus want to skip any test, since they will inevitably fail
+10-2
README.md
···1111Since I don't belive there is one perfect source for the relevant topics, I spend a lot of time reading code from others.
1212* [armOS (*Thanos Koutroubas*)](https://github.com/thanoskoutr/armOS): This project is pretty much where I want to be at the end (I guess), and its nice to see what will be necessary for this...
1313 I'd like to make clear that a good chunk of the code in this repository is almost 1-to-1 from the armOS project. I really like what was done there and I think its nice to see how all of the parts are supposed to work in the end.
1414- I changed some things were I found it appropritate, but at the end of the day I think Thanos did a great job and since I'm just trying to learn more about the subject, this project was a godsend!
1414+ I changed some things were I found it appropritate, but at the end of the day I think Thanos did a great job and since I'm just trying to learn more about the subject, this project was a godsend!
1515+ Also, a good chunk of the documentation is taken from him... Looking up all the GPIO-addresses etc. must have been a nightmare.
1516* [Bare metal Raspberry Pi 3 tutorials (*Zoltan Baldaszti*)](https://github.com/bztsrc/raspi3-tutorial/): Really nice tutorial that introduces the basic ways of how HW and SW should interact with each other.
16171718## How to build the project?
···5152While the ultimate goal of course is to run the kernel on a RaspberryPi, for development it is useful to also run it in `qemu`. For the `32-bit` version you can use
5253```bash
5354qemu-system-arm -M raspi0 -serial null stdio -kernel ${PATH_TO_ELF_FILE}/kernel7.elf
5454-```5555+```
5656+5757+## How to generate documentation?
5858+To generate the documentation you can run
5959+```bash
6060+doxygen .doxyfile
6161+```
6262+Please make sure to install doxygen and graphviz.
+42
arch/armv8-a/boot.S
···11+// To keep this in the first portion of the binary
22+.section ".text.boot"
33+44+.global _start
55+66+/*
77+ * Entry point for the kernel
88+ * x0 -> 32 bit pointer to DTB in memory (primary core only) / 0 (secondary cores)
99+ * x1 -> 0
1010+ * x2 -> 0
1111+ * x3 -> 0
1212+ * x4 -> 32 bit kernel entry point, _start location
1313+ * Preserve these registers as argument for kernel_main
1414+ */
1515+1616+_start:
1717+ /* Check if processor ID is zero (executing on main core), else hang */
1818+ mrs x1, mpidr_el1
1919+ and x1, x1, #3
2020+ cbz x1, 2f
2121+ /* We are not on the main core, so hang in an infinite wait loop */
2222+1: wfe
2323+ b 1b
2424+2: /* Code executing only by main core (cpu id == 0) */
2525+2626+ /*
2727+ * With the latest firmware, only the primary core runs (core 0), and
2828+ * the secondary cores are awaiting in a spin loop.
2929+ */
3030+ mov sp, #0x80000 // Setup the stack (64 bit).
3131+3232+ ldr x5, =__bss_start // Clear out BSS.
3333+ ldr w6, =__bss_size
3434+3: cbz w6, 4f
3535+ str xzr, [x5], #8
3636+ sub w6, w6, #1
3737+ cbnz w6, 3b
3838+3939+4: bl kernel_main // Call kernel_main (C Code).
4040+ // Should not return from here.
4141+4242+ b 1b // For failsafe, halt this core too.
···11-# Set variables
22-set(KERNEL kernel7)
33-set(CPU arm1176jzf-s)
44-55-set(BUILD_DIR ${PROJECT_SOURCE_DIR}/build/bin)
66-set(ARCH_DIR ${PROJECT_SOURCE_DIR}/arch/armv6)
77-81add_subdirectory(src/common)
92103# If build with Makefiles, make output verbose.
···23162417# Create minimal ELF binary from sources.
2518add_executable(${KERNEL}.elf ${SOURCES})
1919+2020+if(${ARCH} STREQUAL "AARCH_32")
2121+ if(${MODEL} STREQUAL "MODEL_0")
2222+ target_compile_definitions(${KERNEL}.elf PUBLIC MODEL_0 AARCH_32)
2323+ elseif(${MODEL} STREQUAL "MODEL_2")
2424+ target_compile_definitions(${KERNEL}.elf PUBLIC MODEL_2 AARCH_32)
2525+ endif()
2626+elseif(${ARCH} STREQUAL "AARCH_64")
2727+ if(${MODEL} STREQUAL "MODEL_3")
2828+ target_compile_definitions(${KERNEL}.elf PUBLIC MODEL_3 AARCH_64)
2929+ elseif(${MODEL} STREQUAL "MODEL_4")
3030+ target_compile_definitions(${KERNEL}.elf PUBLIC MODEL_4 AARCH_64)
3131+ endif()
3232+endif()
26332734# The compiler must make no assumptions about the build.
2835set_target_properties(${KERNEL}.elf PROPERTIES LINK_FLAGS "-nostdlib -nostartfiles")
+32-6
os/include/common/stdlib.h
···11+/**
22+ * @file
33+ * @brief Implement basic functionality of the stdint-C-library.
44+ */
55+16#ifndef STDLIB_H
27#define STDLIB_H
3844-#include <stdint.h>
99+/**
1010+ * @brief int -> str(int)
1111+ *
1212+ * Converts an int (Only base 10 supported for now)
1313+ * to a null-terminated string using the specified base.
1414+ * @param value Value to be converted to a string.
1515+ * @return A pointer to the resulting null-terminated string.
1616+ */
1717+char* itoa(int value);
51866-// Convert base 10 integer to null-terminated string.
77-char* iota(int32_t value);
88-99-// Convert string into integer.
1010-int32_t atoi(const char* str);
1919+/*
2020+ * Converts an int to a null-terminated string using the specified base.
2121+ * @param value Value to be converted to a string.
2222+ * @param base Numerical base used to represent the value as a string.
2323+ * Where 10 means decimal base, 16 hexadecimal, 8 octal, and 2 binary.
2424+ * (Only base 10 supported for now)
2525+ * @return A pointer to the resulting null-terminated string.
2626+ */
2727+// char *itoa(int value, int base);
11282929+/**
3030+ * @brief str -> int
3131+ *
3232+ * Converts a string to an int
3333+ * @param str This is the string representation of an integral number.
3434+ * @return The converted integral number as an int value.
3535+ * If no valid conversion could be performed, it returns zero.
3636+ */
3737+int atoi(const char* str);
12381339#endif // STDLIB_H
+47-4
os/include/common/string.h
···11+/**
22+ * @file
33+ * @brief Some basic functions to manipulate strings.
44+ */
55+16#ifndef STRING_H
27#define STRING_H
3849#include <stddef.h> // defines NULL and size_t
55-#include <stdint.h>
6101111+/**
1212+ * @brief Fills the first @a n bytes of the memory area pointed to by @a s with the constant byte @a c.
1313+ * @return A pointer to the memory area s.
1414+ */
715void* memset(void* s, int c, size_t n);
1616+1717+/**
1818+ * @brief Copies @a n bytes from memory area @a src to memory area @a dest. The memory areas must not overlap.
1919+ * @return A pointer to dest.
2020+ */
821void* memcpy(void* dest, const void* src, size_t n);
9221010-uint32_t strlen(char* str);
2323+/**
2424+ * @brief Calculates the length of the string pointed to by @a s, excluding the terminating null byte ('\0').
2525+ * @param s A string pointer.
2626+ * @return The number of bytes in the string pointed to by @a s.
2727+ */
2828+size_t strlen(const char* s);
11291212-int32_t strcmp(const char* s1, const char* s2);
3030+/**
3131+ * @brief Compares the two strings @a s1 and @a s2.
3232+ * @param s1 A string pointer.
3333+ * @param s2 A string pointer.
3434+ * @return An integer less than, equal to, or greater than 0 if @a s1 is found,
3535+ * respectively, to be less than, to match, or be greater than @a s2.
3636+ */
3737+int strcmp(const char* s1, const char* s2);
13383939+/**
4040+ * @brief Copies the string pointed to by @a src, including the terminating null byte ('\0'), to the buffer pointed to by @a dest.
4141+ * @param dest A string pointer.
4242+ * @param src A string pointer.
4343+ * @return A pointer to the destination string @a dest.
4444+ */
1445char* strcpy(char* dest, const char* src);
4646+4747+/**
4848+ * @brief Appends the @a src string to the @a dest string, overwriting the terminating null byte ('\0') at the end of @a dest, and then adds a terminating null byte.
4949+ * @param dest A string pointer.
5050+ * @param src A string pointer.
5151+ * @return A pointer to the resulting string @a dest.
5252+ */
1553char* strcat(char* dest, const char* src);
16541717-void strrev(char* str);
5555+/**
5656+ * @brief Reverses a given string in place.
5757+ * @param s A string pointer.
5858+ * @see strlen()
5959+ */
6060+void strrev(char* s);
18611962#endif // STRING_H
+43-2
os/include/kernel/mmio.h
···11+/**
22+ * @file
33+ * @brief Definition of MMIO functions.
44+ *
55+ * Reading and writing from/to Memory Mapped IO.
66+ */
77+88+#include <stdint.h>
99+110#ifndef MMIO_H
211#define MMIO_H
31244-#include <stdint.h>
55-1313+#ifdef AARCH_32
1414+/**
1515+ * @brief Memory-Mapped I/O output
1616+ * @param reg 32-bit register address
1717+ * @param data 32-bit data
1818+ * @details Writes the @a data value to the register at @a reg address.
1919+*/
620void mmio_write(uint32_t reg, uint32_t data);
2121+/**
2222+ * \brief Memory-Mapped I/O input
2323+ * @param reg 32-bit register address
2424+ * @return 32-bit data
2525+ * @details Reads register at @a reg address and returns its @a data.
2626+*/
727uint32_t mmio_read(uint32_t reg);
8282929+#elif AARCH_64
3030+/**
3131+ * @brief Memory-Mapped I/O output
3232+ * @param reg 64-bit register address.
3333+ * @param data 32-bit data.
3434+ * @details Writes the @a data value to the register at @a reg address.
3535+*/
3636+void mmio_write(uint64_t reg, uint32_t data);
3737+/**
3838+ * \brief Memory-Mapped I/O input
3939+ * @param reg 64-bit register address.
4040+ * @return 32-bit data.
4141+ * @details Reads register at @a reg address and returns its @a data.
4242+*/
4343+uint32_t mmio_read(uint64_t reg);
4444+#endif
4545+4646+/**
4747+ * \brief Delays @a count of clock cycles.
4848+ * @param count Number of cycles.
4949+*/
950void delay(int32_t count);
10511152#endif
+63-1
os/include/kernel/uart.h
···11+/**
22+ * @file
33+ * @brief Mini UART
44+ */
55+16#ifndef UART_H
27#define UART_H
3899+/**
1010+ * @brief Maximum length for the serial input.
1111+ * @warning It is a temporary solution, because of no support for dynamic allocation of memory.
1212+ * @see console(), uart_gets(), process.c
1313+ */
414#define MAX_INPUT_LENGTH 80
5151616+/**
1717+ * @brief Initializes the UART interface based on the running device.
1818+ * @details Basic configuration:
1919+ * - Sets Alternative Function 5 for GPIO pins 14, 15, in order to enable mini UART.
2020+ * - Disables pull up/down resistors for pins 14, 15.
2121+ * - Enables mini UART.
2222+ * - Disables auto flow control and disables receiver and transmitter.
2323+ * - Enables receive and transmit interrupts.
2424+ * - Clears the receive and transmit FIFO, and enables FIFO.
2525+ * - Enables 8 bit mode.
2626+ * - Sets RTS line to be always high.
2727+ * - Sets baud rate at 115200.
2828+ * - Enables transmitter and receiver.
2929+ *
3030+ * @see peripherals/gpio.h, peripherals/aux.h
3131+ */
632void uart_init();
3333+3434+/**
3535+ * @brief Sends a byte to the UART (serial output).
3636+ * @param c The byte sent to the UART.
3737+ * @details First waits for the UART to become ready to transmit,
3838+ * and then writes the byte @a c to the @ref AUX_MU_IO_REG register.
3939+ * @see peripherals/aux.h
4040+ */
741void uart_putc(unsigned char c);
4242+4343+/**
4444+ * @brief Gets a byte to the UART (serial input).
4545+ * @return The byte received from the UART.
4646+ * @details First waits for the UART to have received something,
4747+ * and then reads the contents of the @ref AUX_MU_IO_REG register
4848+ * @see peripherals/aux.h
4949+ */
850unsigned char uart_getc();
5151+5252+/**
5353+ * @brief Sends a string to the UART (serial output).
5454+ * @param str A string pointer for the string to send to the UART.
5555+ * @details Iterates over the string and prints each char to the serial output.
5656+ * @note If a new New Line (`\n`) char is found, it appends a Carriage Return (`\r`) char,
5757+ * so there is no need to include the `\r` char in the @a str string.
5858+ * @see uart_putc()
5959+ */
960void uart_puts(const char* str);
1010-char* uart_gets();
6161+6262+/**
6363+ * @brief Gets a string from the UART (serial input).
6464+ * @return A pointer to a static char array, that the string is saved.
6565+ * @details Reads in a loop a byte from the serial input using the uart_getc()
6666+ * function until a New Line (`\n`) or a Carriage Return (`\r`) char is received.
6767+ * Echoes back each char to the serial output.
6868+ * @note Gets up to @ref MAX_INPUT_LENGTH chars.
6969+ * @note Always appends a null terminator (`\0`) at the end of the string.
7070+ * @see uart_getc(), MAX_INPUT_LENGTH
7171+ */
7272+char *uart_gets();
11731274#endif // UART_H
+11
os/include/peripherals/aux.h
···11+/** @file
22+ * @brief AUX base adresses.
33+ *
44+ * > The Device has three Auxiliary peripherals: One mini UART and two SPI masters.
55+ * > These three peripheral are grouped together as they share the same area in the peripheral register map and they share a common interrupt.
66+ * > Also all three are controlled by the auxiliary enable register.
77+ */
88+19#ifndef AUX_H
210#define AUX_H
311412#include "gpio.h"
5131414+/**
1515+ * @brief Enum containg all the relevant addresses. The offset is again the same for all RPi's, but the base address is not.
1616+ */
617enum
718{
819 AUX_BASE = (GPIO_BASE + 0x15000),
+25-1
os/include/peripherals/base.h
···11+/**
22+ * @file base.h
33+ * @brief Memory-Mapped-IO base address.
44+ *
55+ * The offset from the MMIO-base-address is the same for all RPi's, but the base-address itself depends on the model.
66+ * By setting a compiler directive we can choose for which model we compile the corresponding kernel.
77+ */
88+19#ifndef BASE_H
210#define BASE_H
3111212+/**
1313+ * From the datasheet of the BCM2835 (RaspberryPi 0 and 1)
1414+ *
1515+ * > Peripherals (at physical address 0x20000000 on) are mapped into the kernel virtual address space starting at address 0xF2000000.
1616+ * > Thus a peripheral advertised here at bus address 0x7Ennnnnn is available in the ARM kenel at virtual address 0xF2nnnnnn.
1717+ *
1818+ */
419enum {
55- MMIO_BASE = 0x20000000
2020+#ifdef MODEL_0
2121+ /** For raspi 0,1 */
2222+ MMIO_BASE = 0x20000000
2323+#elif MODEL_2 || MODEL_3
2424+ /** For raspi 2,3 */
2525+ MMIO_BASE = 0x3F000000
2626+#elif MODEL_4
2727+ /** For raspi 4 */
2828+ MMIO_BASE = 0xFE000000
2929+#endif
630};
731832#endif // BASE_H
···1313{
1414 uint32_t selector;
15151616+ /*
1717+ * Setup the GPIO pin 14 && 15
1818+ */
1919+2020+ /* Set Alternative Function 5 for GPIO pins 14, 15
2121+ * Enables mini UART for boards that use it as a primary UART
2222+ * Boards: Raspi Zero W, Raspi 3, Raspi 4
2323+ */
1624 selector = mmio_read(GPFSEL1);
1717- selector &= ~(7 << 12);
1818- selector |= 2 << 12;
1919- selector &= ~(7 << 15);
2020- selector |= 2 << 15;
2525+ selector &= ~(7 << 12); /* Clear GPIO PIN 14 */
2626+ selector |= 2 << 12; /* Set Alt 5 for GPIO PIN 14 */
2727+ selector &= ~(7 << 15); /* Clear GPIO PIN 15 */
2828+ selector |= 2 << 15; /* Set Alt 5 for GPIO PIN 15 */
2129 mmio_write(GPFSEL1, selector);
22303131+ /*
3232+ * Disable pull up/down for pin 14 && 15
3333+ */
3434+#if defined(MODEL_0) || defined(MODEL_2) || defined(MODEL_3)
3535+ /* Disable pull up/down for all GPIO pins & delay for 150 cycles */
2336 mmio_write(GPPUD, 0x00000000);
2437 delay(150);
25383939+ /* Disable pull up/down for pin 14 (TXD), 15 (RXD) & delay for 150 cycles */
2640 mmio_write(GPPUDCLK0, (1 << 14) | (1 << 15));
2741 delay(150);
28424343+ /* Write 0 to GPPUDCLK0 to make it take effect */
2944 mmio_write(GPPUDCLK0, 0x00000000);
30454646+#elif defined(MODEL_4)
4747+ /* Disable pull up/down for pin 14 (TXD), 15 (RXD) */
4848+ selector = mmio_read(GPIO_PUP_PDN_CNTRL_REG0);
4949+ /* 31:30 bits - Resistor Select for GPIO15 */
5050+ /* 29:28 bits - Resistor Select for GPIO14 */
5151+ /* Clear GPIO15, GPIO14 Resistor Select pins -> Disables pull up/down */
5252+ selector &= ~((1 << 31) | (1 << 30) | (1 << 29) | (1 << 28));
5353+ mmio_write(GPIO_PUP_PDN_CNTRL_REG0, selector);
5454+#endif
5555+5656+ /* Enable mini UART*/
3157 mmio_write(AUX_ENABLES, 1);
5858+ /* Disable auto flow control and disable receiver and transmitter */
3259 mmio_write(AUX_MU_CNTL_REG, 0);
6060+6161+ /* Disable receive and transmit interrupts */
6262+ // mmio_write(AUX_MU_IER_REG, 0);
6363+6464+ /*
6565+ * Bit 0: Enable receive interrupt
6666+ * Bit 1: Enable transmit interrupt
6767+ * Bit 2&3: Required in order to receive interrupts
6868+ */
3369 mmio_write(AUX_MU_IER_REG, (1 << 0) | (1 << 2) | (1 << 3));
7070+7171+ /* Clear the receive and transmit FIFO, and enables FIFO */
3472 mmio_write(AUX_MU_IIR_REG, 0xC6);
7373+7474+ /* Enable 8 bit mode */
3575 mmio_write(AUX_MU_LCR_REG, 3);
7676+ /* Set RTS line to be always high */
3677 mmio_write(AUX_MU_MCR_REG, 0);
7878+7979+ /* Set baud rate to 115200 */
8080+#if defined(MODEL_0) || defined(MODEL_2) || defined(MODEL_3)
8181+ /* System_Clock_Freq = 250 MHz */
8282+ /* (( System_Clock_Freq / baudrate_reg) / 8 ) - 1 */
8383+ /* ((250,000,000 / 115200) / 8) - 1 = 270 */
3784 mmio_write(AUX_MU_BAUD_REG, 270);
8585+#elif defined(MODEL_4)
8686+ /* System_Clock_Freq = 500 MHz */
8787+ /* (( System_Clock_Freq / baudrate_reg) / 8 ) - 1 */
8888+ /* ((500,000,000 / 115200) / 8) - 1 = 541 */
8989+ mmio_write(AUX_MU_BAUD_REG, 541);
9090+#endif
9191+9292+ /* Finally, enable transmitter and receiver */
3893 mmio_write(AUX_MU_CNTL_REG, 3);
39944095}
-2691
test.cfg
···11-# Doxyfile 1.9.6
22-33-# This file describes the settings to be used by the documentation system
44-# doxygen (www.doxygen.org) for a project.
55-#
66-# All text after a double hash (##) is considered a comment and is placed in
77-# front of the TAG it is preceding.
88-#
99-# All text after a single hash (#) is considered a comment and will be ignored.
1010-# The format is:
1111-# TAG = value [value, ...]
1212-# For lists, items can also be appended using:
1313-# TAG += value [value, ...]
1414-# Values that contain spaces should be placed between quotes (\" \").
1515-#
1616-# Note:
1717-#
1818-# Use doxygen to compare the used configuration file with the template
1919-# configuration file:
2020-# doxygen -x [configFile]
2121-# Use doxygen to compare the used configuration file with the template
2222-# configuration file without replacing the environment variables or CMake type
2323-# replacement variables:
2424-# doxygen -x_noenv [configFile]
2525-2626-#---------------------------------------------------------------------------
2727-# Project related configuration options
2828-#---------------------------------------------------------------------------
2929-3030-# This tag specifies the encoding used for all characters in the configuration
3131-# file that follow. The default is UTF-8 which is also the encoding used for all
3232-# text before the first occurrence of this tag. Doxygen uses libiconv (or the
3333-# iconv built into libc) for the transcoding. See
3434-# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
3535-# The default value is: UTF-8.
3636-3737-DOXYFILE_ENCODING = UTF-8
3838-3939-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
4040-# double-quotes, unless you are using Doxywizard) that should identify the
4141-# project for which the documentation is generated. This name is used in the
4242-# title of most generated pages and in a few other places.
4343-# The default value is: My Project.
4444-4545-PROJECT_NAME = "piOS"
4646-4747-# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
4848-# could be handy for archiving the generated documentation or if some version
4949-# control system is used.
5050-5151-PROJECT_NUMBER =0.1
5252-5353-# Using the PROJECT_BRIEF tag one can provide an optional one line description
5454-# for a project that appears at the top of each page and should give viewer a
5555-# quick idea about the purpose of the project. Keep the description short.
5656-5757-PROJECT_BRIEF =
5858-5959-# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
6060-# in the documentation. The maximum height of the logo should not exceed 55
6161-# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
6262-# the logo to the output directory.
6363-6464-PROJECT_LOGO =
6565-6666-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
6767-# into which the generated documentation will be written. If a relative path is
6868-# entered, it will be relative to the location where doxygen was started. If
6969-# left blank the current directory will be used.
7070-7171-OUTPUT_DIRECTORY =
7272-7373-# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096
7474-# sub-directories (in 2 levels) under the output directory of each output format
7575-# and will distribute the generated files over these directories. Enabling this
7676-# option can be useful when feeding doxygen a huge amount of source files, where
7777-# putting all generated files in the same directory would otherwise causes
7878-# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to
7979-# control the number of sub-directories.
8080-# The default value is: NO.
8181-8282-CREATE_SUBDIRS = NO
8383-8484-# Controls the number of sub-directories that will be created when
8585-# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every
8686-# level increment doubles the number of directories, resulting in 4096
8787-# directories at level 8 which is the default and also the maximum value. The
8888-# sub-directories are organized in 2 levels, the first level always has a fixed
8989-# number of 16 directories.
9090-# Minimum value: 0, maximum value: 8, default value: 8.
9191-# This tag requires that the tag CREATE_SUBDIRS is set to YES.
9292-9393-CREATE_SUBDIRS_LEVEL = 8
9494-9595-# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
9696-# characters to appear in the names of generated files. If set to NO, non-ASCII
9797-# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
9898-# U+3044.
9999-# The default value is: NO.
100100-101101-ALLOW_UNICODE_NAMES = NO
102102-103103-# The OUTPUT_LANGUAGE tag is used to specify the language in which all
104104-# documentation generated by doxygen is written. Doxygen will use this
105105-# information to generate all constant output in the proper language.
106106-# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian,
107107-# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English
108108-# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek,
109109-# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with
110110-# English messages), Korean, Korean-en (Korean with English messages), Latvian,
111111-# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese,
112112-# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish,
113113-# Swedish, Turkish, Ukrainian and Vietnamese.
114114-# The default value is: English.
115115-116116-OUTPUT_LANGUAGE = English
117117-118118-# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
119119-# descriptions after the members that are listed in the file and class
120120-# documentation (similar to Javadoc). Set to NO to disable this.
121121-# The default value is: YES.
122122-123123-BRIEF_MEMBER_DESC = YES
124124-125125-# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
126126-# description of a member or function before the detailed description
127127-#
128128-# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
129129-# brief descriptions will be completely suppressed.
130130-# The default value is: YES.
131131-132132-REPEAT_BRIEF = YES
133133-134134-# This tag implements a quasi-intelligent brief description abbreviator that is
135135-# used to form the text in various listings. Each string in this list, if found
136136-# as the leading text of the brief description, will be stripped from the text
137137-# and the result, after processing the whole list, is used as the annotated
138138-# text. Otherwise, the brief description is used as-is. If left blank, the
139139-# following values are used ($name is automatically replaced with the name of
140140-# the entity):The $name class, The $name widget, The $name file, is, provides,
141141-# specifies, contains, represents, a, an and the.
142142-143143-ABBREVIATE_BRIEF = "The $name class" \
144144- "The $name widget" \
145145- "The $name file" \
146146- is \
147147- provides \
148148- specifies \
149149- contains \
150150- represents \
151151- a \
152152- an \
153153- the
154154-155155-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
156156-# doxygen will generate a detailed section even if there is only a brief
157157-# description.
158158-# The default value is: NO.
159159-160160-ALWAYS_DETAILED_SEC = NO
161161-162162-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
163163-# inherited members of a class in the documentation of that class as if those
164164-# members were ordinary class members. Constructors, destructors and assignment
165165-# operators of the base classes will not be shown.
166166-# The default value is: NO.
167167-168168-INLINE_INHERITED_MEMB = NO
169169-170170-# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
171171-# before files name in the file list and in the header files. If set to NO the
172172-# shortest path that makes the file name unique will be used
173173-# The default value is: YES.
174174-175175-FULL_PATH_NAMES = YES
176176-177177-# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
178178-# Stripping is only done if one of the specified strings matches the left-hand
179179-# part of the path. The tag can be used to show relative paths in the file list.
180180-# If left blank the directory from which doxygen is run is used as the path to
181181-# strip.
182182-#
183183-# Note that you can specify absolute paths here, but also relative paths, which
184184-# will be relative from the directory where doxygen is started.
185185-# This tag requires that the tag FULL_PATH_NAMES is set to YES.
186186-187187-STRIP_FROM_PATH =
188188-189189-# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
190190-# path mentioned in the documentation of a class, which tells the reader which
191191-# header file to include in order to use a class. If left blank only the name of
192192-# the header file containing the class definition is used. Otherwise one should
193193-# specify the list of include paths that are normally passed to the compiler
194194-# using the -I flag.
195195-196196-STRIP_FROM_INC_PATH =
197197-198198-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
199199-# less readable) file names. This can be useful is your file systems doesn't
200200-# support long names like on DOS, Mac, or CD-ROM.
201201-# The default value is: NO.
202202-203203-SHORT_NAMES = NO
204204-205205-# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
206206-# first line (until the first dot) of a Javadoc-style comment as the brief
207207-# description. If set to NO, the Javadoc-style will behave just like regular Qt-
208208-# style comments (thus requiring an explicit @brief command for a brief
209209-# description.)
210210-# The default value is: NO.
211211-212212-JAVADOC_AUTOBRIEF = NO
213213-214214-# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
215215-# such as
216216-# /***************
217217-# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
218218-# Javadoc-style will behave just like regular comments and it will not be
219219-# interpreted by doxygen.
220220-# The default value is: NO.
221221-222222-JAVADOC_BANNER = NO
223223-224224-# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
225225-# line (until the first dot) of a Qt-style comment as the brief description. If
226226-# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
227227-# requiring an explicit \brief command for a brief description.)
228228-# The default value is: NO.
229229-230230-QT_AUTOBRIEF = NO
231231-232232-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
233233-# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
234234-# a brief description. This used to be the default behavior. The new default is
235235-# to treat a multi-line C++ comment block as a detailed description. Set this
236236-# tag to YES if you prefer the old behavior instead.
237237-#
238238-# Note that setting this tag to YES also means that rational rose comments are
239239-# not recognized any more.
240240-# The default value is: NO.
241241-242242-MULTILINE_CPP_IS_BRIEF = NO
243243-244244-# By default Python docstrings are displayed as preformatted text and doxygen's
245245-# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
246246-# doxygen's special commands can be used and the contents of the docstring
247247-# documentation blocks is shown as doxygen documentation.
248248-# The default value is: YES.
249249-250250-PYTHON_DOCSTRING = YES
251251-252252-# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
253253-# documentation from any documented member that it re-implements.
254254-# The default value is: YES.
255255-256256-INHERIT_DOCS = YES
257257-258258-# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
259259-# page for each member. If set to NO, the documentation of a member will be part
260260-# of the file/class/namespace that contains it.
261261-# The default value is: NO.
262262-263263-SEPARATE_MEMBER_PAGES = NO
264264-265265-# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
266266-# uses this value to replace tabs by spaces in code fragments.
267267-# Minimum value: 1, maximum value: 16, default value: 4.
268268-269269-TAB_SIZE = 4
270270-271271-# This tag can be used to specify a number of aliases that act as commands in
272272-# the documentation. An alias has the form:
273273-# name=value
274274-# For example adding
275275-# "sideeffect=@par Side Effects:^^"
276276-# will allow you to put the command \sideeffect (or @sideeffect) in the
277277-# documentation, which will result in a user-defined paragraph with heading
278278-# "Side Effects:". Note that you cannot put \n's in the value part of an alias
279279-# to insert newlines (in the resulting output). You can put ^^ in the value part
280280-# of an alias to insert a newline as if a physical newline was in the original
281281-# file. When you need a literal { or } or , in the value part of an alias you
282282-# have to escape them by means of a backslash (\), this can lead to conflicts
283283-# with the commands \{ and \} for these it is advised to use the version @{ and
284284-# @} or use a double escape (\\{ and \\})
285285-286286-ALIASES =
287287-288288-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
289289-# only. Doxygen will then generate output that is more tailored for C. For
290290-# instance, some of the names that are used will be different. The list of all
291291-# members will be omitted, etc.
292292-# The default value is: NO.
293293-294294-OPTIMIZE_OUTPUT_FOR_C = NO
295295-296296-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
297297-# Python sources only. Doxygen will then generate output that is more tailored
298298-# for that language. For instance, namespaces will be presented as packages,
299299-# qualified scopes will look different, etc.
300300-# The default value is: NO.
301301-302302-OPTIMIZE_OUTPUT_JAVA = NO
303303-304304-# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
305305-# sources. Doxygen will then generate output that is tailored for Fortran.
306306-# The default value is: NO.
307307-308308-OPTIMIZE_FOR_FORTRAN = NO
309309-310310-# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
311311-# sources. Doxygen will then generate output that is tailored for VHDL.
312312-# The default value is: NO.
313313-314314-OPTIMIZE_OUTPUT_VHDL = NO
315315-316316-# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
317317-# sources only. Doxygen will then generate output that is more tailored for that
318318-# language. For instance, namespaces will be presented as modules, types will be
319319-# separated into more groups, etc.
320320-# The default value is: NO.
321321-322322-OPTIMIZE_OUTPUT_SLICE = NO
323323-324324-# Doxygen selects the parser to use depending on the extension of the files it
325325-# parses. With this tag you can assign which parser to use for a given
326326-# extension. Doxygen has a built-in mapping, but you can override or extend it
327327-# using this tag. The format is ext=language, where ext is a file extension, and
328328-# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
329329-# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice,
330330-# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
331331-# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
332332-# tries to guess whether the code is fixed or free formatted code, this is the
333333-# default for Fortran type files). For instance to make doxygen treat .inc files
334334-# as Fortran files (default is PHP), and .f files as C (default is Fortran),
335335-# use: inc=Fortran f=C.
336336-#
337337-# Note: For files without extension you can use no_extension as a placeholder.
338338-#
339339-# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
340340-# the files are not read by doxygen. When specifying no_extension you should add
341341-# * to the FILE_PATTERNS.
342342-#
343343-# Note see also the list of default file extension mappings.
344344-345345-EXTENSION_MAPPING =
346346-347347-# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
348348-# according to the Markdown format, which allows for more readable
349349-# documentation. See https://daringfireball.net/projects/markdown/ for details.
350350-# The output of markdown processing is further processed by doxygen, so you can
351351-# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
352352-# case of backward compatibilities issues.
353353-# The default value is: YES.
354354-355355-MARKDOWN_SUPPORT = YES
356356-357357-# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
358358-# to that level are automatically included in the table of contents, even if
359359-# they do not have an id attribute.
360360-# Note: This feature currently applies only to Markdown headings.
361361-# Minimum value: 0, maximum value: 99, default value: 5.
362362-# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
363363-364364-TOC_INCLUDE_HEADINGS = 5
365365-366366-# When enabled doxygen tries to link words that correspond to documented
367367-# classes, or namespaces to their corresponding documentation. Such a link can
368368-# be prevented in individual cases by putting a % sign in front of the word or
369369-# globally by setting AUTOLINK_SUPPORT to NO.
370370-# The default value is: YES.
371371-372372-AUTOLINK_SUPPORT = YES
373373-374374-# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
375375-# to include (a tag file for) the STL sources as input, then you should set this
376376-# tag to YES in order to let doxygen match functions declarations and
377377-# definitions whose arguments contain STL classes (e.g. func(std::string);
378378-# versus func(std::string) {}). This also make the inheritance and collaboration
379379-# diagrams that involve STL classes more complete and accurate.
380380-# The default value is: NO.
381381-382382-BUILTIN_STL_SUPPORT = NO
383383-384384-# If you use Microsoft's C++/CLI language, you should set this option to YES to
385385-# enable parsing support.
386386-# The default value is: NO.
387387-388388-CPP_CLI_SUPPORT = NO
389389-390390-# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
391391-# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
392392-# will parse them like normal C++ but will assume all classes use public instead
393393-# of private inheritance when no explicit protection keyword is present.
394394-# The default value is: NO.
395395-396396-SIP_SUPPORT = NO
397397-398398-# For Microsoft's IDL there are propget and propput attributes to indicate
399399-# getter and setter methods for a property. Setting this option to YES will make
400400-# doxygen to replace the get and set methods by a property in the documentation.
401401-# This will only work if the methods are indeed getting or setting a simple
402402-# type. If this is not the case, or you want to show the methods anyway, you
403403-# should set this option to NO.
404404-# The default value is: YES.
405405-406406-IDL_PROPERTY_SUPPORT = YES
407407-408408-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
409409-# tag is set to YES then doxygen will reuse the documentation of the first
410410-# member in the group (if any) for the other members of the group. By default
411411-# all members of a group must be documented explicitly.
412412-# The default value is: NO.
413413-414414-DISTRIBUTE_GROUP_DOC = NO
415415-416416-# If one adds a struct or class to a group and this option is enabled, then also
417417-# any nested class or struct is added to the same group. By default this option
418418-# is disabled and one has to add nested compounds explicitly via \ingroup.
419419-# The default value is: NO.
420420-421421-GROUP_NESTED_COMPOUNDS = NO
422422-423423-# Set the SUBGROUPING tag to YES to allow class member groups of the same type
424424-# (for instance a group of public functions) to be put as a subgroup of that
425425-# type (e.g. under the Public Functions section). Set it to NO to prevent
426426-# subgrouping. Alternatively, this can be done per class using the
427427-# \nosubgrouping command.
428428-# The default value is: YES.
429429-430430-SUBGROUPING = YES
431431-432432-# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
433433-# are shown inside the group in which they are included (e.g. using \ingroup)
434434-# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
435435-# and RTF).
436436-#
437437-# Note that this feature does not work in combination with
438438-# SEPARATE_MEMBER_PAGES.
439439-# The default value is: NO.
440440-441441-INLINE_GROUPED_CLASSES = NO
442442-443443-# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
444444-# with only public data fields or simple typedef fields will be shown inline in
445445-# the documentation of the scope in which they are defined (i.e. file,
446446-# namespace, or group documentation), provided this scope is documented. If set
447447-# to NO, structs, classes, and unions are shown on a separate page (for HTML and
448448-# Man pages) or section (for LaTeX and RTF).
449449-# The default value is: NO.
450450-451451-INLINE_SIMPLE_STRUCTS = NO
452452-453453-# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
454454-# enum is documented as struct, union, or enum with the name of the typedef. So
455455-# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
456456-# with name TypeT. When disabled the typedef will appear as a member of a file,
457457-# namespace, or class. And the struct will be named TypeS. This can typically be
458458-# useful for C code in case the coding convention dictates that all compound
459459-# types are typedef'ed and only the typedef is referenced, never the tag name.
460460-# The default value is: NO.
461461-462462-TYPEDEF_HIDES_STRUCT = NO
463463-464464-# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
465465-# cache is used to resolve symbols given their name and scope. Since this can be
466466-# an expensive process and often the same symbol appears multiple times in the
467467-# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
468468-# doxygen will become slower. If the cache is too large, memory is wasted. The
469469-# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
470470-# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
471471-# symbols. At the end of a run doxygen will report the cache usage and suggest
472472-# the optimal cache size from a speed point of view.
473473-# Minimum value: 0, maximum value: 9, default value: 0.
474474-475475-LOOKUP_CACHE_SIZE = 0
476476-477477-# The NUM_PROC_THREADS specifies the number of threads doxygen is allowed to use
478478-# during processing. When set to 0 doxygen will based this on the number of
479479-# cores available in the system. You can set it explicitly to a value larger
480480-# than 0 to get more control over the balance between CPU load and processing
481481-# speed. At this moment only the input processing can be done using multiple
482482-# threads. Since this is still an experimental feature the default is set to 1,
483483-# which effectively disables parallel processing. Please report any issues you
484484-# encounter. Generating dot graphs in parallel is controlled by the
485485-# DOT_NUM_THREADS setting.
486486-# Minimum value: 0, maximum value: 32, default value: 1.
487487-488488-NUM_PROC_THREADS = 1
489489-490490-#---------------------------------------------------------------------------
491491-# Build related configuration options
492492-#---------------------------------------------------------------------------
493493-494494-# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
495495-# documentation are documented, even if no documentation was available. Private
496496-# class members and static file members will be hidden unless the
497497-# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
498498-# Note: This will also disable the warnings about undocumented members that are
499499-# normally produced when WARNINGS is set to YES.
500500-# The default value is: NO.
501501-502502-EXTRACT_ALL = NO
503503-504504-# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
505505-# be included in the documentation.
506506-# The default value is: NO.
507507-508508-EXTRACT_PRIVATE = NO
509509-510510-# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
511511-# methods of a class will be included in the documentation.
512512-# The default value is: NO.
513513-514514-EXTRACT_PRIV_VIRTUAL = NO
515515-516516-# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
517517-# scope will be included in the documentation.
518518-# The default value is: NO.
519519-520520-EXTRACT_PACKAGE = NO
521521-522522-# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
523523-# included in the documentation.
524524-# The default value is: NO.
525525-526526-EXTRACT_STATIC = NO
527527-528528-# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
529529-# locally in source files will be included in the documentation. If set to NO,
530530-# only classes defined in header files are included. Does not have any effect
531531-# for Java sources.
532532-# The default value is: YES.
533533-534534-EXTRACT_LOCAL_CLASSES = YES
535535-536536-# This flag is only useful for Objective-C code. If set to YES, local methods,
537537-# which are defined in the implementation section but not in the interface are
538538-# included in the documentation. If set to NO, only methods in the interface are
539539-# included.
540540-# The default value is: NO.
541541-542542-EXTRACT_LOCAL_METHODS = NO
543543-544544-# If this flag is set to YES, the members of anonymous namespaces will be
545545-# extracted and appear in the documentation as a namespace called
546546-# 'anonymous_namespace{file}', where file will be replaced with the base name of
547547-# the file that contains the anonymous namespace. By default anonymous namespace
548548-# are hidden.
549549-# The default value is: NO.
550550-551551-EXTRACT_ANON_NSPACES = NO
552552-553553-# If this flag is set to YES, the name of an unnamed parameter in a declaration
554554-# will be determined by the corresponding definition. By default unnamed
555555-# parameters remain unnamed in the output.
556556-# The default value is: YES.
557557-558558-RESOLVE_UNNAMED_PARAMS = YES
559559-560560-# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
561561-# undocumented members inside documented classes or files. If set to NO these
562562-# members will be included in the various overviews, but no documentation
563563-# section is generated. This option has no effect if EXTRACT_ALL is enabled.
564564-# The default value is: NO.
565565-566566-HIDE_UNDOC_MEMBERS = NO
567567-568568-# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
569569-# undocumented classes that are normally visible in the class hierarchy. If set
570570-# to NO, these classes will be included in the various overviews. This option
571571-# will also hide undocumented C++ concepts if enabled. This option has no effect
572572-# if EXTRACT_ALL is enabled.
573573-# The default value is: NO.
574574-575575-HIDE_UNDOC_CLASSES = NO
576576-577577-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
578578-# declarations. If set to NO, these declarations will be included in the
579579-# documentation.
580580-# The default value is: NO.
581581-582582-HIDE_FRIEND_COMPOUNDS = NO
583583-584584-# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
585585-# documentation blocks found inside the body of a function. If set to NO, these
586586-# blocks will be appended to the function's detailed documentation block.
587587-# The default value is: NO.
588588-589589-HIDE_IN_BODY_DOCS = NO
590590-591591-# The INTERNAL_DOCS tag determines if documentation that is typed after a
592592-# \internal command is included. If the tag is set to NO then the documentation
593593-# will be excluded. Set it to YES to include the internal documentation.
594594-# The default value is: NO.
595595-596596-INTERNAL_DOCS = NO
597597-598598-# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
599599-# able to match the capabilities of the underlying filesystem. In case the
600600-# filesystem is case sensitive (i.e. it supports files in the same directory
601601-# whose names only differ in casing), the option must be set to YES to properly
602602-# deal with such files in case they appear in the input. For filesystems that
603603-# are not case sensitive the option should be set to NO to properly deal with
604604-# output files written for symbols that only differ in casing, such as for two
605605-# classes, one named CLASS and the other named Class, and to also support
606606-# references to files without having to specify the exact matching casing. On
607607-# Windows (including Cygwin) and MacOS, users should typically set this option
608608-# to NO, whereas on Linux or other Unix flavors it should typically be set to
609609-# YES.
610610-# Possible values are: SYSTEM, NO and YES.
611611-# The default value is: SYSTEM.
612612-613613-CASE_SENSE_NAMES = SYSTEM
614614-615615-# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
616616-# their full class and namespace scopes in the documentation. If set to YES, the
617617-# scope will be hidden.
618618-# The default value is: NO.
619619-620620-HIDE_SCOPE_NAMES = NO
621621-622622-# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
623623-# append additional text to a page's title, such as Class Reference. If set to
624624-# YES the compound reference will be hidden.
625625-# The default value is: NO.
626626-627627-HIDE_COMPOUND_REFERENCE= NO
628628-629629-# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class
630630-# will show which file needs to be included to use the class.
631631-# The default value is: YES.
632632-633633-SHOW_HEADERFILE = YES
634634-635635-# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
636636-# the files that are included by a file in the documentation of that file.
637637-# The default value is: YES.
638638-639639-SHOW_INCLUDE_FILES = YES
640640-641641-# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
642642-# grouped member an include statement to the documentation, telling the reader
643643-# which file to include in order to use the member.
644644-# The default value is: NO.
645645-646646-SHOW_GROUPED_MEMB_INC = NO
647647-648648-# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
649649-# files with double quotes in the documentation rather than with sharp brackets.
650650-# The default value is: NO.
651651-652652-FORCE_LOCAL_INCLUDES = NO
653653-654654-# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
655655-# documentation for inline members.
656656-# The default value is: YES.
657657-658658-INLINE_INFO = YES
659659-660660-# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
661661-# (detailed) documentation of file and class members alphabetically by member
662662-# name. If set to NO, the members will appear in declaration order.
663663-# The default value is: YES.
664664-665665-SORT_MEMBER_DOCS = YES
666666-667667-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
668668-# descriptions of file, namespace and class members alphabetically by member
669669-# name. If set to NO, the members will appear in declaration order. Note that
670670-# this will also influence the order of the classes in the class list.
671671-# The default value is: NO.
672672-673673-SORT_BRIEF_DOCS = NO
674674-675675-# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
676676-# (brief and detailed) documentation of class members so that constructors and
677677-# destructors are listed first. If set to NO the constructors will appear in the
678678-# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
679679-# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
680680-# member documentation.
681681-# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
682682-# detailed member documentation.
683683-# The default value is: NO.
684684-685685-SORT_MEMBERS_CTORS_1ST = NO
686686-687687-# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
688688-# of group names into alphabetical order. If set to NO the group names will
689689-# appear in their defined order.
690690-# The default value is: NO.
691691-692692-SORT_GROUP_NAMES = NO
693693-694694-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
695695-# fully-qualified names, including namespaces. If set to NO, the class list will
696696-# be sorted only by class name, not including the namespace part.
697697-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
698698-# Note: This option applies only to the class list, not to the alphabetical
699699-# list.
700700-# The default value is: NO.
701701-702702-SORT_BY_SCOPE_NAME = NO
703703-704704-# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
705705-# type resolution of all parameters of a function it will reject a match between
706706-# the prototype and the implementation of a member function even if there is
707707-# only one candidate or it is obvious which candidate to choose by doing a
708708-# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
709709-# accept a match between prototype and implementation in such cases.
710710-# The default value is: NO.
711711-712712-STRICT_PROTO_MATCHING = NO
713713-714714-# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
715715-# list. This list is created by putting \todo commands in the documentation.
716716-# The default value is: YES.
717717-718718-GENERATE_TODOLIST = YES
719719-720720-# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
721721-# list. This list is created by putting \test commands in the documentation.
722722-# The default value is: YES.
723723-724724-GENERATE_TESTLIST = YES
725725-726726-# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
727727-# list. This list is created by putting \bug commands in the documentation.
728728-# The default value is: YES.
729729-730730-GENERATE_BUGLIST = YES
731731-732732-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
733733-# the deprecated list. This list is created by putting \deprecated commands in
734734-# the documentation.
735735-# The default value is: YES.
736736-737737-GENERATE_DEPRECATEDLIST= YES
738738-739739-# The ENABLED_SECTIONS tag can be used to enable conditional documentation
740740-# sections, marked by \if <section_label> ... \endif and \cond <section_label>
741741-# ... \endcond blocks.
742742-743743-ENABLED_SECTIONS =
744744-745745-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
746746-# initial value of a variable or macro / define can have for it to appear in the
747747-# documentation. If the initializer consists of more lines than specified here
748748-# it will be hidden. Use a value of 0 to hide initializers completely. The
749749-# appearance of the value of individual variables and macros / defines can be
750750-# controlled using \showinitializer or \hideinitializer command in the
751751-# documentation regardless of this setting.
752752-# Minimum value: 0, maximum value: 10000, default value: 30.
753753-754754-MAX_INITIALIZER_LINES = 30
755755-756756-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
757757-# the bottom of the documentation of classes and structs. If set to YES, the
758758-# list will mention the files that were used to generate the documentation.
759759-# The default value is: YES.
760760-761761-SHOW_USED_FILES = YES
762762-763763-# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
764764-# will remove the Files entry from the Quick Index and from the Folder Tree View
765765-# (if specified).
766766-# The default value is: YES.
767767-768768-SHOW_FILES = YES
769769-770770-# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
771771-# page. This will remove the Namespaces entry from the Quick Index and from the
772772-# Folder Tree View (if specified).
773773-# The default value is: YES.
774774-775775-SHOW_NAMESPACES = YES
776776-777777-# The FILE_VERSION_FILTER tag can be used to specify a program or script that
778778-# doxygen should invoke to get the current version for each file (typically from
779779-# the version control system). Doxygen will invoke the program by executing (via
780780-# popen()) the command command input-file, where command is the value of the
781781-# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
782782-# by doxygen. Whatever the program writes to standard output is used as the file
783783-# version. For an example see the documentation.
784784-785785-FILE_VERSION_FILTER =
786786-787787-# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
788788-# by doxygen. The layout file controls the global structure of the generated
789789-# output files in an output format independent way. To create the layout file
790790-# that represents doxygen's defaults, run doxygen with the -l option. You can
791791-# optionally specify a file name after the option, if omitted DoxygenLayout.xml
792792-# will be used as the name of the layout file. See also section "Changing the
793793-# layout of pages" for information.
794794-#
795795-# Note that if you run doxygen from a directory containing a file called
796796-# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
797797-# tag is left empty.
798798-799799-LAYOUT_FILE =
800800-801801-# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
802802-# the reference definitions. This must be a list of .bib files. The .bib
803803-# extension is automatically appended if omitted. This requires the bibtex tool
804804-# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
805805-# For LaTeX the style of the bibliography can be controlled using
806806-# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
807807-# search path. See also \cite for info how to create references.
808808-809809-CITE_BIB_FILES =
810810-811811-#---------------------------------------------------------------------------
812812-# Configuration options related to warning and progress messages
813813-#---------------------------------------------------------------------------
814814-815815-# The QUIET tag can be used to turn on/off the messages that are generated to
816816-# standard output by doxygen. If QUIET is set to YES this implies that the
817817-# messages are off.
818818-# The default value is: NO.
819819-820820-QUIET = NO
821821-822822-# The WARNINGS tag can be used to turn on/off the warning messages that are
823823-# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
824824-# this implies that the warnings are on.
825825-#
826826-# Tip: Turn warnings on while writing the documentation.
827827-# The default value is: YES.
828828-829829-WARNINGS = YES
830830-831831-# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
832832-# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
833833-# will automatically be disabled.
834834-# The default value is: YES.
835835-836836-WARN_IF_UNDOCUMENTED = YES
837837-838838-# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
839839-# potential errors in the documentation, such as documenting some parameters in
840840-# a documented function twice, or documenting parameters that don't exist or
841841-# using markup commands wrongly.
842842-# The default value is: YES.
843843-844844-WARN_IF_DOC_ERROR = YES
845845-846846-# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete
847847-# function parameter documentation. If set to NO, doxygen will accept that some
848848-# parameters have no documentation without warning.
849849-# The default value is: YES.
850850-851851-WARN_IF_INCOMPLETE_DOC = YES
852852-853853-# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
854854-# are documented, but have no documentation for their parameters or return
855855-# value. If set to NO, doxygen will only warn about wrong parameter
856856-# documentation, but not about the absence of documentation. If EXTRACT_ALL is
857857-# set to YES then this flag will automatically be disabled. See also
858858-# WARN_IF_INCOMPLETE_DOC
859859-# The default value is: NO.
860860-861861-WARN_NO_PARAMDOC = NO
862862-863863-# If WARN_IF_UNDOC_ENUM_VAL option is set to YES, doxygen will warn about
864864-# undocumented enumeration values. If set to NO, doxygen will accept
865865-# undocumented enumeration values. If EXTRACT_ALL is set to YES then this flag
866866-# will automatically be disabled.
867867-# The default value is: NO.
868868-869869-WARN_IF_UNDOC_ENUM_VAL = NO
870870-871871-# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
872872-# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
873873-# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
874874-# at the end of the doxygen process doxygen will return with a non-zero status.
875875-# Possible values are: NO, YES and FAIL_ON_WARNINGS.
876876-# The default value is: NO.
877877-878878-WARN_AS_ERROR = NO
879879-880880-# The WARN_FORMAT tag determines the format of the warning messages that doxygen
881881-# can produce. The string should contain the $file, $line, and $text tags, which
882882-# will be replaced by the file and line number from which the warning originated
883883-# and the warning text. Optionally the format may contain $version, which will
884884-# be replaced by the version of the file (if it could be obtained via
885885-# FILE_VERSION_FILTER)
886886-# See also: WARN_LINE_FORMAT
887887-# The default value is: $file:$line: $text.
888888-889889-WARN_FORMAT = "$file:$line: $text"
890890-891891-# In the $text part of the WARN_FORMAT command it is possible that a reference
892892-# to a more specific place is given. To make it easier to jump to this place
893893-# (outside of doxygen) the user can define a custom "cut" / "paste" string.
894894-# Example:
895895-# WARN_LINE_FORMAT = "'vi $file +$line'"
896896-# See also: WARN_FORMAT
897897-# The default value is: at line $line of file $file.
898898-899899-WARN_LINE_FORMAT = "at line $line of file $file"
900900-901901-# The WARN_LOGFILE tag can be used to specify a file to which warning and error
902902-# messages should be written. If left blank the output is written to standard
903903-# error (stderr). In case the file specified cannot be opened for writing the
904904-# warning and error messages are written to standard error. When as file - is
905905-# specified the warning and error messages are written to standard output
906906-# (stdout).
907907-908908-WARN_LOGFILE =
909909-910910-#---------------------------------------------------------------------------
911911-# Configuration options related to the input files
912912-#---------------------------------------------------------------------------
913913-914914-# The INPUT tag is used to specify the files and/or directories that contain
915915-# documented source files. You may enter file names like myfile.cpp or
916916-# directories like /usr/src/myproject. Separate the files or directories with
917917-# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
918918-# Note: If this tag is empty the current directory is searched.
919919-920920-INPUT = .
921921-922922-# This tag can be used to specify the character encoding of the source files
923923-# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
924924-# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
925925-# documentation (see:
926926-# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
927927-# See also: INPUT_FILE_ENCODING
928928-# The default value is: UTF-8.
929929-930930-INPUT_ENCODING = UTF-8
931931-932932-# This tag can be used to specify the character encoding of the source files
933933-# that doxygen parses The INPUT_FILE_ENCODING tag can be used to specify
934934-# character encoding on a per file pattern basis. Doxygen will compare the file
935935-# name with each pattern and apply the encoding instead of the default
936936-# INPUT_ENCODING) if there is a match. The character encodings are a list of the
937937-# form: pattern=encoding (like *.php=ISO-8859-1). See cfg_input_encoding
938938-# "INPUT_ENCODING" for further information on supported encodings.
939939-940940-INPUT_FILE_ENCODING =
941941-942942-# If the value of the INPUT tag contains directories, you can use the
943943-# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
944944-# *.h) to filter out the source-files in the directories.
945945-#
946946-# Note that for custom extensions or not directly supported extensions you also
947947-# need to set EXTENSION_MAPPING for the extension otherwise the files are not
948948-# read by doxygen.
949949-#
950950-# Note the list of default checked file patterns might differ from the list of
951951-# default file extension mappings.
952952-#
953953-# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
954954-# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
955955-# *.hh, *.hxx, *.hpp, *.h++, *.l, *.cs, *.d, *.php, *.php4, *.php5, *.phtml,
956956-# *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C
957957-# comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd,
958958-# *.vhdl, *.ucf, *.qsf and *.ice.
959959-960960-FILE_PATTERNS = *.c *.h *.md
961961-962962-# The RECURSIVE tag can be used to specify whether or not subdirectories should
963963-# be searched for input files as well.
964964-# The default value is: NO.
965965-966966-RECURSIVE = YES
967967-968968-# The EXCLUDE tag can be used to specify files and/or directories that should be
969969-# excluded from the INPUT source files. This way you can easily exclude a
970970-# subdirectory from a directory tree whose root is specified with the INPUT tag.
971971-#
972972-# Note that relative paths are relative to the directory from which doxygen is
973973-# run.
974974-975975-EXCLUDE =
976976-977977-# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
978978-# directories that are symbolic links (a Unix file system feature) are excluded
979979-# from the input.
980980-# The default value is: NO.
981981-982982-EXCLUDE_SYMLINKS = NO
983983-984984-# If the value of the INPUT tag contains directories, you can use the
985985-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
986986-# certain files from those directories.
987987-#
988988-# Note that the wildcards are matched against the file with absolute path, so to
989989-# exclude all test directories for example use the pattern */test/*
990990-991991-EXCLUDE_PATTERNS =
992992-993993-# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
994994-# (namespaces, classes, functions, etc.) that should be excluded from the
995995-# output. The symbol name can be a fully qualified name, a word, or if the
996996-# wildcard * is used, a substring. Examples: ANamespace, AClass,
997997-# ANamespace::AClass, ANamespace::*Test
998998-#
999999-# Note that the wildcards are matched against the file with absolute path, so to
10001000-# exclude all test directories use the pattern */test/*
10011001-10021002-EXCLUDE_SYMBOLS =
10031003-10041004-# The EXAMPLE_PATH tag can be used to specify one or more files or directories
10051005-# that contain example code fragments that are included (see the \include
10061006-# command).
10071007-10081008-EXAMPLE_PATH =
10091009-10101010-# If the value of the EXAMPLE_PATH tag contains directories, you can use the
10111011-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
10121012-# *.h) to filter out the source-files in the directories. If left blank all
10131013-# files are included.
10141014-10151015-EXAMPLE_PATTERNS = *
10161016-10171017-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
10181018-# searched for input files to be used with the \include or \dontinclude commands
10191019-# irrespective of the value of the RECURSIVE tag.
10201020-# The default value is: NO.
10211021-10221022-EXAMPLE_RECURSIVE = NO
10231023-10241024-# The IMAGE_PATH tag can be used to specify one or more files or directories
10251025-# that contain images that are to be included in the documentation (see the
10261026-# \image command).
10271027-10281028-IMAGE_PATH =
10291029-10301030-# The INPUT_FILTER tag can be used to specify a program that doxygen should
10311031-# invoke to filter for each input file. Doxygen will invoke the filter program
10321032-# by executing (via popen()) the command:
10331033-#
10341034-# <filter> <input-file>
10351035-#
10361036-# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
10371037-# name of an input file. Doxygen will then use the output that the filter
10381038-# program writes to standard output. If FILTER_PATTERNS is specified, this tag
10391039-# will be ignored.
10401040-#
10411041-# Note that the filter must not add or remove lines; it is applied before the
10421042-# code is scanned, but not when the output code is generated. If lines are added
10431043-# or removed, the anchors will not be placed correctly.
10441044-#
10451045-# Note that doxygen will use the data processed and written to standard output
10461046-# for further processing, therefore nothing else, like debug statements or used
10471047-# commands (so in case of a Windows batch file always use @echo OFF), should be
10481048-# written to standard output.
10491049-#
10501050-# Note that for custom extensions or not directly supported extensions you also
10511051-# need to set EXTENSION_MAPPING for the extension otherwise the files are not
10521052-# properly processed by doxygen.
10531053-10541054-INPUT_FILTER =
10551055-10561056-# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
10571057-# basis. Doxygen will compare the file name with each pattern and apply the
10581058-# filter if there is a match. The filters are a list of the form: pattern=filter
10591059-# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
10601060-# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
10611061-# patterns match the file name, INPUT_FILTER is applied.
10621062-#
10631063-# Note that for custom extensions or not directly supported extensions you also
10641064-# need to set EXTENSION_MAPPING for the extension otherwise the files are not
10651065-# properly processed by doxygen.
10661066-10671067-FILTER_PATTERNS =
10681068-10691069-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
10701070-# INPUT_FILTER) will also be used to filter the input files that are used for
10711071-# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
10721072-# The default value is: NO.
10731073-10741074-FILTER_SOURCE_FILES = NO
10751075-10761076-# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
10771077-# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
10781078-# it is also possible to disable source filtering for a specific pattern using
10791079-# *.ext= (so without naming a filter).
10801080-# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
10811081-10821082-FILTER_SOURCE_PATTERNS =
10831083-10841084-# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
10851085-# is part of the input, its contents will be placed on the main page
10861086-# (index.html). This can be useful if you have a project on for instance GitHub
10871087-# and want to reuse the introduction page also for the doxygen output.
10881088-10891089-USE_MDFILE_AS_MAINPAGE =
10901090-10911091-# The Fortran standard specifies that for fixed formatted Fortran code all
10921092-# characters from position 72 are to be considered as comment. A common
10931093-# extension is to allow longer lines before the automatic comment starts. The
10941094-# setting FORTRAN_COMMENT_AFTER will also make it possible that longer lines can
10951095-# be processed before the automatic comment starts.
10961096-# Minimum value: 7, maximum value: 10000, default value: 72.
10971097-10981098-FORTRAN_COMMENT_AFTER = 72
10991099-11001100-#---------------------------------------------------------------------------
11011101-# Configuration options related to source browsing
11021102-#---------------------------------------------------------------------------
11031103-11041104-# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
11051105-# generated. Documented entities will be cross-referenced with these sources.
11061106-#
11071107-# Note: To get rid of all source code in the generated output, make sure that
11081108-# also VERBATIM_HEADERS is set to NO.
11091109-# The default value is: NO.
11101110-11111111-SOURCE_BROWSER = NO
11121112-11131113-# Setting the INLINE_SOURCES tag to YES will include the body of functions,
11141114-# classes and enums directly into the documentation.
11151115-# The default value is: NO.
11161116-11171117-INLINE_SOURCES = NO
11181118-11191119-# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
11201120-# special comment blocks from generated source code fragments. Normal C, C++ and
11211121-# Fortran comments will always remain visible.
11221122-# The default value is: YES.
11231123-11241124-STRIP_CODE_COMMENTS = YES
11251125-11261126-# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
11271127-# entity all documented functions referencing it will be listed.
11281128-# The default value is: NO.
11291129-11301130-REFERENCED_BY_RELATION = NO
11311131-11321132-# If the REFERENCES_RELATION tag is set to YES then for each documented function
11331133-# all documented entities called/used by that function will be listed.
11341134-# The default value is: NO.
11351135-11361136-REFERENCES_RELATION = NO
11371137-11381138-# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
11391139-# to YES then the hyperlinks from functions in REFERENCES_RELATION and
11401140-# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
11411141-# link to the documentation.
11421142-# The default value is: YES.
11431143-11441144-REFERENCES_LINK_SOURCE = YES
11451145-11461146-# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
11471147-# source code will show a tooltip with additional information such as prototype,
11481148-# brief description and links to the definition and documentation. Since this
11491149-# will make the HTML file larger and loading of large files a bit slower, you
11501150-# can opt to disable this feature.
11511151-# The default value is: YES.
11521152-# This tag requires that the tag SOURCE_BROWSER is set to YES.
11531153-11541154-SOURCE_TOOLTIPS = YES
11551155-11561156-# If the USE_HTAGS tag is set to YES then the references to source code will
11571157-# point to the HTML generated by the htags(1) tool instead of doxygen built-in
11581158-# source browser. The htags tool is part of GNU's global source tagging system
11591159-# (see https://www.gnu.org/software/global/global.html). You will need version
11601160-# 4.8.6 or higher.
11611161-#
11621162-# To use it do the following:
11631163-# - Install the latest version of global
11641164-# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file
11651165-# - Make sure the INPUT points to the root of the source tree
11661166-# - Run doxygen as normal
11671167-#
11681168-# Doxygen will invoke htags (and that will in turn invoke gtags), so these
11691169-# tools must be available from the command line (i.e. in the search path).
11701170-#
11711171-# The result: instead of the source browser generated by doxygen, the links to
11721172-# source code will now point to the output of htags.
11731173-# The default value is: NO.
11741174-# This tag requires that the tag SOURCE_BROWSER is set to YES.
11751175-11761176-USE_HTAGS = NO
11771177-11781178-# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
11791179-# verbatim copy of the header file for each class for which an include is
11801180-# specified. Set to NO to disable this.
11811181-# See also: Section \class.
11821182-# The default value is: YES.
11831183-11841184-VERBATIM_HEADERS = YES
11851185-11861186-#---------------------------------------------------------------------------
11871187-# Configuration options related to the alphabetical class index
11881188-#---------------------------------------------------------------------------
11891189-11901190-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
11911191-# compounds will be generated. Enable this if the project contains a lot of
11921192-# classes, structs, unions or interfaces.
11931193-# The default value is: YES.
11941194-11951195-ALPHABETICAL_INDEX = YES
11961196-11971197-# The IGNORE_PREFIX tag can be used to specify a prefix (or a list of prefixes)
11981198-# that should be ignored while generating the index headers. The IGNORE_PREFIX
11991199-# tag works for classes, function and member names. The entity will be placed in
12001200-# the alphabetical list under the first letter of the entity name that remains
12011201-# after removing the prefix.
12021202-# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
12031203-12041204-IGNORE_PREFIX =
12051205-12061206-#---------------------------------------------------------------------------
12071207-# Configuration options related to the HTML output
12081208-#---------------------------------------------------------------------------
12091209-12101210-# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
12111211-# The default value is: YES.
12121212-12131213-GENERATE_HTML = YES
12141214-12151215-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
12161216-# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
12171217-# it.
12181218-# The default directory is: html.
12191219-# This tag requires that the tag GENERATE_HTML is set to YES.
12201220-12211221-HTML_OUTPUT = html
12221222-12231223-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
12241224-# generated HTML page (for example: .htm, .php, .asp).
12251225-# The default value is: .html.
12261226-# This tag requires that the tag GENERATE_HTML is set to YES.
12271227-12281228-HTML_FILE_EXTENSION = .html
12291229-12301230-# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
12311231-# each generated HTML page. If the tag is left blank doxygen will generate a
12321232-# standard header.
12331233-#
12341234-# To get valid HTML the header file that includes any scripts and style sheets
12351235-# that doxygen needs, which is dependent on the configuration options used (e.g.
12361236-# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
12371237-# default header using
12381238-# doxygen -w html new_header.html new_footer.html new_stylesheet.css
12391239-# YourConfigFile
12401240-# and then modify the file new_header.html. See also section "Doxygen usage"
12411241-# for information on how to generate the default header that doxygen normally
12421242-# uses.
12431243-# Note: The header is subject to change so you typically have to regenerate the
12441244-# default header when upgrading to a newer version of doxygen. For a description
12451245-# of the possible markers and block names see the documentation.
12461246-# This tag requires that the tag GENERATE_HTML is set to YES.
12471247-12481248-HTML_HEADER =
12491249-12501250-# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
12511251-# generated HTML page. If the tag is left blank doxygen will generate a standard
12521252-# footer. See HTML_HEADER for more information on how to generate a default
12531253-# footer and what special commands can be used inside the footer. See also
12541254-# section "Doxygen usage" for information on how to generate the default footer
12551255-# that doxygen normally uses.
12561256-# This tag requires that the tag GENERATE_HTML is set to YES.
12571257-12581258-HTML_FOOTER =
12591259-12601260-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
12611261-# sheet that is used by each HTML page. It can be used to fine-tune the look of
12621262-# the HTML output. If left blank doxygen will generate a default style sheet.
12631263-# See also section "Doxygen usage" for information on how to generate the style
12641264-# sheet that doxygen normally uses.
12651265-# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
12661266-# it is more robust and this tag (HTML_STYLESHEET) will in the future become
12671267-# obsolete.
12681268-# This tag requires that the tag GENERATE_HTML is set to YES.
12691269-12701270-HTML_STYLESHEET =
12711271-12721272-# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
12731273-# cascading style sheets that are included after the standard style sheets
12741274-# created by doxygen. Using this option one can overrule certain style aspects.
12751275-# This is preferred over using HTML_STYLESHEET since it does not replace the
12761276-# standard style sheet and is therefore more robust against future updates.
12771277-# Doxygen will copy the style sheet files to the output directory.
12781278-# Note: The order of the extra style sheet files is of importance (e.g. the last
12791279-# style sheet in the list overrules the setting of the previous ones in the
12801280-# list).
12811281-# Note: Since the styling of scrollbars can currently not be overruled in
12821282-# Webkit/Chromium, the styling will be left out of the default doxygen.css if
12831283-# one or more extra stylesheets have been specified. So if scrollbar
12841284-# customization is desired it has to be added explicitly. For an example see the
12851285-# documentation.
12861286-# This tag requires that the tag GENERATE_HTML is set to YES.
12871287-12881288-HTML_EXTRA_STYLESHEET =
12891289-12901290-# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
12911291-# other source files which should be copied to the HTML output directory. Note
12921292-# that these files will be copied to the base HTML output directory. Use the
12931293-# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
12941294-# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
12951295-# files will be copied as-is; there are no commands or markers available.
12961296-# This tag requires that the tag GENERATE_HTML is set to YES.
12971297-12981298-HTML_EXTRA_FILES =
12991299-13001300-# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
13011301-# should be rendered with a dark or light theme.
13021302-# Possible values are: LIGHT always generate light mode output, DARK always
13031303-# generate dark mode output, AUTO_LIGHT automatically set the mode according to
13041304-# the user preference, use light mode if no preference is set (the default),
13051305-# AUTO_DARK automatically set the mode according to the user preference, use
13061306-# dark mode if no preference is set and TOGGLE allow to user to switch between
13071307-# light and dark mode via a button.
13081308-# The default value is: AUTO_LIGHT.
13091309-# This tag requires that the tag GENERATE_HTML is set to YES.
13101310-13111311-HTML_COLORSTYLE = AUTO_LIGHT
13121312-13131313-# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
13141314-# will adjust the colors in the style sheet and background images according to
13151315-# this color. Hue is specified as an angle on a color-wheel, see
13161316-# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
13171317-# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
13181318-# purple, and 360 is red again.
13191319-# Minimum value: 0, maximum value: 359, default value: 220.
13201320-# This tag requires that the tag GENERATE_HTML is set to YES.
13211321-13221322-HTML_COLORSTYLE_HUE = 220
13231323-13241324-# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
13251325-# in the HTML output. For a value of 0 the output will use gray-scales only. A
13261326-# value of 255 will produce the most vivid colors.
13271327-# Minimum value: 0, maximum value: 255, default value: 100.
13281328-# This tag requires that the tag GENERATE_HTML is set to YES.
13291329-13301330-HTML_COLORSTYLE_SAT = 100
13311331-13321332-# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
13331333-# luminance component of the colors in the HTML output. Values below 100
13341334-# gradually make the output lighter, whereas values above 100 make the output
13351335-# darker. The value divided by 100 is the actual gamma applied, so 80 represents
13361336-# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
13371337-# change the gamma.
13381338-# Minimum value: 40, maximum value: 240, default value: 80.
13391339-# This tag requires that the tag GENERATE_HTML is set to YES.
13401340-13411341-HTML_COLORSTYLE_GAMMA = 80
13421342-13431343-# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
13441344-# page will contain the date and time when the page was generated. Setting this
13451345-# to YES can help to show when doxygen was last run and thus if the
13461346-# documentation is up to date.
13471347-# The default value is: NO.
13481348-# This tag requires that the tag GENERATE_HTML is set to YES.
13491349-13501350-HTML_TIMESTAMP = NO
13511351-13521352-# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
13531353-# documentation will contain a main index with vertical navigation menus that
13541354-# are dynamically created via JavaScript. If disabled, the navigation index will
13551355-# consists of multiple levels of tabs that are statically embedded in every HTML
13561356-# page. Disable this option to support browsers that do not have JavaScript,
13571357-# like the Qt help browser.
13581358-# The default value is: YES.
13591359-# This tag requires that the tag GENERATE_HTML is set to YES.
13601360-13611361-HTML_DYNAMIC_MENUS = YES
13621362-13631363-# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
13641364-# documentation will contain sections that can be hidden and shown after the
13651365-# page has loaded.
13661366-# The default value is: NO.
13671367-# This tag requires that the tag GENERATE_HTML is set to YES.
13681368-13691369-HTML_DYNAMIC_SECTIONS = NO
13701370-13711371-# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
13721372-# shown in the various tree structured indices initially; the user can expand
13731373-# and collapse entries dynamically later on. Doxygen will expand the tree to
13741374-# such a level that at most the specified number of entries are visible (unless
13751375-# a fully collapsed tree already exceeds this amount). So setting the number of
13761376-# entries 1 will produce a full collapsed tree by default. 0 is a special value
13771377-# representing an infinite number of entries and will result in a full expanded
13781378-# tree by default.
13791379-# Minimum value: 0, maximum value: 9999, default value: 100.
13801380-# This tag requires that the tag GENERATE_HTML is set to YES.
13811381-13821382-HTML_INDEX_NUM_ENTRIES = 100
13831383-13841384-# If the GENERATE_DOCSET tag is set to YES, additional index files will be
13851385-# generated that can be used as input for Apple's Xcode 3 integrated development
13861386-# environment (see:
13871387-# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
13881388-# create a documentation set, doxygen will generate a Makefile in the HTML
13891389-# output directory. Running make will produce the docset in that directory and
13901390-# running make install will install the docset in
13911391-# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
13921392-# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
13931393-# genXcode/_index.html for more information.
13941394-# The default value is: NO.
13951395-# This tag requires that the tag GENERATE_HTML is set to YES.
13961396-13971397-GENERATE_DOCSET = NO
13981398-13991399-# This tag determines the name of the docset feed. A documentation feed provides
14001400-# an umbrella under which multiple documentation sets from a single provider
14011401-# (such as a company or product suite) can be grouped.
14021402-# The default value is: Doxygen generated docs.
14031403-# This tag requires that the tag GENERATE_DOCSET is set to YES.
14041404-14051405-DOCSET_FEEDNAME = "Doxygen generated docs"
14061406-14071407-# This tag determines the URL of the docset feed. A documentation feed provides
14081408-# an umbrella under which multiple documentation sets from a single provider
14091409-# (such as a company or product suite) can be grouped.
14101410-# This tag requires that the tag GENERATE_DOCSET is set to YES.
14111411-14121412-DOCSET_FEEDURL =
14131413-14141414-# This tag specifies a string that should uniquely identify the documentation
14151415-# set bundle. This should be a reverse domain-name style string, e.g.
14161416-# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
14171417-# The default value is: org.doxygen.Project.
14181418-# This tag requires that the tag GENERATE_DOCSET is set to YES.
14191419-14201420-DOCSET_BUNDLE_ID = org.doxygen.Project
14211421-14221422-# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
14231423-# the documentation publisher. This should be a reverse domain-name style
14241424-# string, e.g. com.mycompany.MyDocSet.documentation.
14251425-# The default value is: org.doxygen.Publisher.
14261426-# This tag requires that the tag GENERATE_DOCSET is set to YES.
14271427-14281428-DOCSET_PUBLISHER_ID = org.doxygen.Publisher
14291429-14301430-# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
14311431-# The default value is: Publisher.
14321432-# This tag requires that the tag GENERATE_DOCSET is set to YES.
14331433-14341434-DOCSET_PUBLISHER_NAME = Publisher
14351435-14361436-# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
14371437-# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
14381438-# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
14391439-# on Windows. In the beginning of 2021 Microsoft took the original page, with
14401440-# a.o. the download links, offline the HTML help workshop was already many years
14411441-# in maintenance mode). You can download the HTML help workshop from the web
14421442-# archives at Installation executable (see:
14431443-# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo
14441444-# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe).
14451445-#
14461446-# The HTML Help Workshop contains a compiler that can convert all HTML output
14471447-# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
14481448-# files are now used as the Windows 98 help format, and will replace the old
14491449-# Windows help format (.hlp) on all Windows platforms in the future. Compressed
14501450-# HTML files also contain an index, a table of contents, and you can search for
14511451-# words in the documentation. The HTML workshop also contains a viewer for
14521452-# compressed HTML files.
14531453-# The default value is: NO.
14541454-# This tag requires that the tag GENERATE_HTML is set to YES.
14551455-14561456-GENERATE_HTMLHELP = NO
14571457-14581458-# The CHM_FILE tag can be used to specify the file name of the resulting .chm
14591459-# file. You can add a path in front of the file if the result should not be
14601460-# written to the html output directory.
14611461-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14621462-14631463-CHM_FILE =
14641464-14651465-# The HHC_LOCATION tag can be used to specify the location (absolute path
14661466-# including file name) of the HTML help compiler (hhc.exe). If non-empty,
14671467-# doxygen will try to run the HTML help compiler on the generated index.hhp.
14681468-# The file has to be specified with full path.
14691469-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14701470-14711471-HHC_LOCATION =
14721472-14731473-# The GENERATE_CHI flag controls if a separate .chi index file is generated
14741474-# (YES) or that it should be included in the main .chm file (NO).
14751475-# The default value is: NO.
14761476-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14771477-14781478-GENERATE_CHI = NO
14791479-14801480-# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
14811481-# and project file content.
14821482-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14831483-14841484-CHM_INDEX_ENCODING =
14851485-14861486-# The BINARY_TOC flag controls whether a binary table of contents is generated
14871487-# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
14881488-# enables the Previous and Next buttons.
14891489-# The default value is: NO.
14901490-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14911491-14921492-BINARY_TOC = NO
14931493-14941494-# The TOC_EXPAND flag can be set to YES to add extra items for group members to
14951495-# the table of contents of the HTML help documentation and to the tree view.
14961496-# The default value is: NO.
14971497-# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
14981498-14991499-TOC_EXPAND = NO
15001500-15011501-# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
15021502-# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
15031503-# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
15041504-# (.qch) of the generated HTML documentation.
15051505-# The default value is: NO.
15061506-# This tag requires that the tag GENERATE_HTML is set to YES.
15071507-15081508-GENERATE_QHP = NO
15091509-15101510-# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
15111511-# the file name of the resulting .qch file. The path specified is relative to
15121512-# the HTML output folder.
15131513-# This tag requires that the tag GENERATE_QHP is set to YES.
15141514-15151515-QCH_FILE =
15161516-15171517-# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
15181518-# Project output. For more information please see Qt Help Project / Namespace
15191519-# (see:
15201520-# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
15211521-# The default value is: org.doxygen.Project.
15221522-# This tag requires that the tag GENERATE_QHP is set to YES.
15231523-15241524-QHP_NAMESPACE = org.doxygen.Project
15251525-15261526-# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
15271527-# Help Project output. For more information please see Qt Help Project / Virtual
15281528-# Folders (see:
15291529-# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
15301530-# The default value is: doc.
15311531-# This tag requires that the tag GENERATE_QHP is set to YES.
15321532-15331533-QHP_VIRTUAL_FOLDER = doc
15341534-15351535-# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
15361536-# filter to add. For more information please see Qt Help Project / Custom
15371537-# Filters (see:
15381538-# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
15391539-# This tag requires that the tag GENERATE_QHP is set to YES.
15401540-15411541-QHP_CUST_FILTER_NAME =
15421542-15431543-# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
15441544-# custom filter to add. For more information please see Qt Help Project / Custom
15451545-# Filters (see:
15461546-# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
15471547-# This tag requires that the tag GENERATE_QHP is set to YES.
15481548-15491549-QHP_CUST_FILTER_ATTRS =
15501550-15511551-# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
15521552-# project's filter section matches. Qt Help Project / Filter Attributes (see:
15531553-# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
15541554-# This tag requires that the tag GENERATE_QHP is set to YES.
15551555-15561556-QHP_SECT_FILTER_ATTRS =
15571557-15581558-# The QHG_LOCATION tag can be used to specify the location (absolute path
15591559-# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to
15601560-# run qhelpgenerator on the generated .qhp file.
15611561-# This tag requires that the tag GENERATE_QHP is set to YES.
15621562-15631563-QHG_LOCATION =
15641564-15651565-# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
15661566-# generated, together with the HTML files, they form an Eclipse help plugin. To
15671567-# install this plugin and make it available under the help contents menu in
15681568-# Eclipse, the contents of the directory containing the HTML and XML files needs
15691569-# to be copied into the plugins directory of eclipse. The name of the directory
15701570-# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
15711571-# After copying Eclipse needs to be restarted before the help appears.
15721572-# The default value is: NO.
15731573-# This tag requires that the tag GENERATE_HTML is set to YES.
15741574-15751575-GENERATE_ECLIPSEHELP = NO
15761576-15771577-# A unique identifier for the Eclipse help plugin. When installing the plugin
15781578-# the directory name containing the HTML and XML files should also have this
15791579-# name. Each documentation set should have its own identifier.
15801580-# The default value is: org.doxygen.Project.
15811581-# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
15821582-15831583-ECLIPSE_DOC_ID = org.doxygen.Project
15841584-15851585-# If you want full control over the layout of the generated HTML pages it might
15861586-# be necessary to disable the index and replace it with your own. The
15871587-# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
15881588-# of each HTML page. A value of NO enables the index and the value YES disables
15891589-# it. Since the tabs in the index contain the same information as the navigation
15901590-# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
15911591-# The default value is: NO.
15921592-# This tag requires that the tag GENERATE_HTML is set to YES.
15931593-15941594-DISABLE_INDEX = NO
15951595-15961596-# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
15971597-# structure should be generated to display hierarchical information. If the tag
15981598-# value is set to YES, a side panel will be generated containing a tree-like
15991599-# index structure (just like the one that is generated for HTML Help). For this
16001600-# to work a browser that supports JavaScript, DHTML, CSS and frames is required
16011601-# (i.e. any modern browser). Windows users are probably better off using the
16021602-# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
16031603-# further fine tune the look of the index (see "Fine-tuning the output"). As an
16041604-# example, the default style sheet generated by doxygen has an example that
16051605-# shows how to put an image at the root of the tree instead of the PROJECT_NAME.
16061606-# Since the tree basically has the same information as the tab index, you could
16071607-# consider setting DISABLE_INDEX to YES when enabling this option.
16081608-# The default value is: NO.
16091609-# This tag requires that the tag GENERATE_HTML is set to YES.
16101610-16111611-GENERATE_TREEVIEW = NO
16121612-16131613-# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the
16141614-# FULL_SIDEBAR option determines if the side bar is limited to only the treeview
16151615-# area (value NO) or if it should extend to the full height of the window (value
16161616-# YES). Setting this to YES gives a layout similar to
16171617-# https://docs.readthedocs.io with more room for contents, but less room for the
16181618-# project logo, title, and description. If either GENERATE_TREEVIEW or
16191619-# DISABLE_INDEX is set to NO, this option has no effect.
16201620-# The default value is: NO.
16211621-# This tag requires that the tag GENERATE_HTML is set to YES.
16221622-16231623-FULL_SIDEBAR = NO
16241624-16251625-# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
16261626-# doxygen will group on one line in the generated HTML documentation.
16271627-#
16281628-# Note that a value of 0 will completely suppress the enum values from appearing
16291629-# in the overview section.
16301630-# Minimum value: 0, maximum value: 20, default value: 4.
16311631-# This tag requires that the tag GENERATE_HTML is set to YES.
16321632-16331633-ENUM_VALUES_PER_LINE = 4
16341634-16351635-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
16361636-# to set the initial width (in pixels) of the frame in which the tree is shown.
16371637-# Minimum value: 0, maximum value: 1500, default value: 250.
16381638-# This tag requires that the tag GENERATE_HTML is set to YES.
16391639-16401640-TREEVIEW_WIDTH = 250
16411641-16421642-# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
16431643-# external symbols imported via tag files in a separate window.
16441644-# The default value is: NO.
16451645-# This tag requires that the tag GENERATE_HTML is set to YES.
16461646-16471647-EXT_LINKS_IN_WINDOW = NO
16481648-16491649-# If the OBFUSCATE_EMAILS tag is set to YES, doxygen will obfuscate email
16501650-# addresses.
16511651-# The default value is: YES.
16521652-# This tag requires that the tag GENERATE_HTML is set to YES.
16531653-16541654-OBFUSCATE_EMAILS = YES
16551655-16561656-# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
16571657-# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
16581658-# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
16591659-# the HTML output. These images will generally look nicer at scaled resolutions.
16601660-# Possible values are: png (the default) and svg (looks nicer but requires the
16611661-# pdf2svg or inkscape tool).
16621662-# The default value is: png.
16631663-# This tag requires that the tag GENERATE_HTML is set to YES.
16641664-16651665-HTML_FORMULA_FORMAT = png
16661666-16671667-# Use this tag to change the font size of LaTeX formulas included as images in
16681668-# the HTML documentation. When you change the font size after a successful
16691669-# doxygen run you need to manually remove any form_*.png images from the HTML
16701670-# output directory to force them to be regenerated.
16711671-# Minimum value: 8, maximum value: 50, default value: 10.
16721672-# This tag requires that the tag GENERATE_HTML is set to YES.
16731673-16741674-FORMULA_FONTSIZE = 10
16751675-16761676-# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands
16771677-# to create new LaTeX commands to be used in formulas as building blocks. See
16781678-# the section "Including formulas" for details.
16791679-16801680-FORMULA_MACROFILE =
16811681-16821682-# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
16831683-# https://www.mathjax.org) which uses client side JavaScript for the rendering
16841684-# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
16851685-# installed or if you want to formulas look prettier in the HTML output. When
16861686-# enabled you may also need to install MathJax separately and configure the path
16871687-# to it using the MATHJAX_RELPATH option.
16881688-# The default value is: NO.
16891689-# This tag requires that the tag GENERATE_HTML is set to YES.
16901690-16911691-USE_MATHJAX = NO
16921692-16931693-# With MATHJAX_VERSION it is possible to specify the MathJax version to be used.
16941694-# Note that the different versions of MathJax have different requirements with
16951695-# regards to the different settings, so it is possible that also other MathJax
16961696-# settings have to be changed when switching between the different MathJax
16971697-# versions.
16981698-# Possible values are: MathJax_2 and MathJax_3.
16991699-# The default value is: MathJax_2.
17001700-# This tag requires that the tag USE_MATHJAX is set to YES.
17011701-17021702-MATHJAX_VERSION = MathJax_2
17031703-17041704-# When MathJax is enabled you can set the default output format to be used for
17051705-# the MathJax output. For more details about the output format see MathJax
17061706-# version 2 (see:
17071707-# http://docs.mathjax.org/en/v2.7-latest/output.html) and MathJax version 3
17081708-# (see:
17091709-# http://docs.mathjax.org/en/latest/web/components/output.html).
17101710-# Possible values are: HTML-CSS (which is slower, but has the best
17111711-# compatibility. This is the name for Mathjax version 2, for MathJax version 3
17121712-# this will be translated into chtml), NativeMML (i.e. MathML. Only supported
17131713-# for NathJax 2. For MathJax version 3 chtml will be used instead.), chtml (This
17141714-# is the name for Mathjax version 3, for MathJax version 2 this will be
17151715-# translated into HTML-CSS) and SVG.
17161716-# The default value is: HTML-CSS.
17171717-# This tag requires that the tag USE_MATHJAX is set to YES.
17181718-17191719-MATHJAX_FORMAT = HTML-CSS
17201720-17211721-# When MathJax is enabled you need to specify the location relative to the HTML
17221722-# output directory using the MATHJAX_RELPATH option. The destination directory
17231723-# should contain the MathJax.js script. For instance, if the mathjax directory
17241724-# is located at the same level as the HTML output directory, then
17251725-# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
17261726-# Content Delivery Network so you can quickly see the result without installing
17271727-# MathJax. However, it is strongly recommended to install a local copy of
17281728-# MathJax from https://www.mathjax.org before deployment. The default value is:
17291729-# - in case of MathJax version 2: https://cdn.jsdelivr.net/npm/mathjax@2
17301730-# - in case of MathJax version 3: https://cdn.jsdelivr.net/npm/mathjax@3
17311731-# This tag requires that the tag USE_MATHJAX is set to YES.
17321732-17331733-MATHJAX_RELPATH =
17341734-17351735-# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
17361736-# extension names that should be enabled during MathJax rendering. For example
17371737-# for MathJax version 2 (see
17381738-# https://docs.mathjax.org/en/v2.7-latest/tex.html#tex-and-latex-extensions):
17391739-# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
17401740-# For example for MathJax version 3 (see
17411741-# http://docs.mathjax.org/en/latest/input/tex/extensions/index.html):
17421742-# MATHJAX_EXTENSIONS = ams
17431743-# This tag requires that the tag USE_MATHJAX is set to YES.
17441744-17451745-MATHJAX_EXTENSIONS =
17461746-17471747-# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
17481748-# of code that will be used on startup of the MathJax code. See the MathJax site
17491749-# (see:
17501750-# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an
17511751-# example see the documentation.
17521752-# This tag requires that the tag USE_MATHJAX is set to YES.
17531753-17541754-MATHJAX_CODEFILE =
17551755-17561756-# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
17571757-# the HTML output. The underlying search engine uses javascript and DHTML and
17581758-# should work on any modern browser. Note that when using HTML help
17591759-# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
17601760-# there is already a search function so this one should typically be disabled.
17611761-# For large projects the javascript based search engine can be slow, then
17621762-# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
17631763-# search using the keyboard; to jump to the search box use <access key> + S
17641764-# (what the <access key> is depends on the OS and browser, but it is typically
17651765-# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
17661766-# key> to jump into the search results window, the results can be navigated
17671767-# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
17681768-# the search. The filter options can be selected when the cursor is inside the
17691769-# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
17701770-# to select a filter and <Enter> or <escape> to activate or cancel the filter
17711771-# option.
17721772-# The default value is: YES.
17731773-# This tag requires that the tag GENERATE_HTML is set to YES.
17741774-17751775-SEARCHENGINE = YES
17761776-17771777-# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
17781778-# implemented using a web server instead of a web client using JavaScript. There
17791779-# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
17801780-# setting. When disabled, doxygen will generate a PHP script for searching and
17811781-# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
17821782-# and searching needs to be provided by external tools. See the section
17831783-# "External Indexing and Searching" for details.
17841784-# The default value is: NO.
17851785-# This tag requires that the tag SEARCHENGINE is set to YES.
17861786-17871787-SERVER_BASED_SEARCH = NO
17881788-17891789-# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
17901790-# script for searching. Instead the search results are written to an XML file
17911791-# which needs to be processed by an external indexer. Doxygen will invoke an
17921792-# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
17931793-# search results.
17941794-#
17951795-# Doxygen ships with an example indexer (doxyindexer) and search engine
17961796-# (doxysearch.cgi) which are based on the open source search engine library
17971797-# Xapian (see:
17981798-# https://xapian.org/).
17991799-#
18001800-# See the section "External Indexing and Searching" for details.
18011801-# The default value is: NO.
18021802-# This tag requires that the tag SEARCHENGINE is set to YES.
18031803-18041804-EXTERNAL_SEARCH = NO
18051805-18061806-# The SEARCHENGINE_URL should point to a search engine hosted by a web server
18071807-# which will return the search results when EXTERNAL_SEARCH is enabled.
18081808-#
18091809-# Doxygen ships with an example indexer (doxyindexer) and search engine
18101810-# (doxysearch.cgi) which are based on the open source search engine library
18111811-# Xapian (see:
18121812-# https://xapian.org/). See the section "External Indexing and Searching" for
18131813-# details.
18141814-# This tag requires that the tag SEARCHENGINE is set to YES.
18151815-18161816-SEARCHENGINE_URL =
18171817-18181818-# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
18191819-# search data is written to a file for indexing by an external tool. With the
18201820-# SEARCHDATA_FILE tag the name of this file can be specified.
18211821-# The default file is: searchdata.xml.
18221822-# This tag requires that the tag SEARCHENGINE is set to YES.
18231823-18241824-SEARCHDATA_FILE = searchdata.xml
18251825-18261826-# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
18271827-# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
18281828-# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
18291829-# projects and redirect the results back to the right project.
18301830-# This tag requires that the tag SEARCHENGINE is set to YES.
18311831-18321832-EXTERNAL_SEARCH_ID =
18331833-18341834-# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
18351835-# projects other than the one defined by this configuration file, but that are
18361836-# all added to the same external search index. Each project needs to have a
18371837-# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
18381838-# to a relative location where the documentation can be found. The format is:
18391839-# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
18401840-# This tag requires that the tag SEARCHENGINE is set to YES.
18411841-18421842-EXTRA_SEARCH_MAPPINGS =
18431843-18441844-#---------------------------------------------------------------------------
18451845-# Configuration options related to the LaTeX output
18461846-#---------------------------------------------------------------------------
18471847-18481848-# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
18491849-# The default value is: YES.
18501850-18511851-GENERATE_LATEX = YES
18521852-18531853-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
18541854-# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
18551855-# it.
18561856-# The default directory is: latex.
18571857-# This tag requires that the tag GENERATE_LATEX is set to YES.
18581858-18591859-LATEX_OUTPUT = latex
18601860-18611861-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
18621862-# invoked.
18631863-#
18641864-# Note that when not enabling USE_PDFLATEX the default is latex when enabling
18651865-# USE_PDFLATEX the default is pdflatex and when in the later case latex is
18661866-# chosen this is overwritten by pdflatex. For specific output languages the
18671867-# default can have been set differently, this depends on the implementation of
18681868-# the output language.
18691869-# This tag requires that the tag GENERATE_LATEX is set to YES.
18701870-18711871-LATEX_CMD_NAME =
18721872-18731873-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
18741874-# index for LaTeX.
18751875-# Note: This tag is used in the Makefile / make.bat.
18761876-# See also: LATEX_MAKEINDEX_CMD for the part in the generated output file
18771877-# (.tex).
18781878-# The default file is: makeindex.
18791879-# This tag requires that the tag GENERATE_LATEX is set to YES.
18801880-18811881-MAKEINDEX_CMD_NAME = makeindex
18821882-18831883-# The LATEX_MAKEINDEX_CMD tag can be used to specify the command name to
18841884-# generate index for LaTeX. In case there is no backslash (\) as first character
18851885-# it will be automatically added in the LaTeX code.
18861886-# Note: This tag is used in the generated output file (.tex).
18871887-# See also: MAKEINDEX_CMD_NAME for the part in the Makefile / make.bat.
18881888-# The default value is: makeindex.
18891889-# This tag requires that the tag GENERATE_LATEX is set to YES.
18901890-18911891-LATEX_MAKEINDEX_CMD = makeindex
18921892-18931893-# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
18941894-# documents. This may be useful for small projects and may help to save some
18951895-# trees in general.
18961896-# The default value is: NO.
18971897-# This tag requires that the tag GENERATE_LATEX is set to YES.
18981898-18991899-COMPACT_LATEX = NO
19001900-19011901-# The PAPER_TYPE tag can be used to set the paper type that is used by the
19021902-# printer.
19031903-# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
19041904-# 14 inches) and executive (7.25 x 10.5 inches).
19051905-# The default value is: a4.
19061906-# This tag requires that the tag GENERATE_LATEX is set to YES.
19071907-19081908-PAPER_TYPE = a4
19091909-19101910-# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
19111911-# that should be included in the LaTeX output. The package can be specified just
19121912-# by its name or with the correct syntax as to be used with the LaTeX
19131913-# \usepackage command. To get the times font for instance you can specify :
19141914-# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
19151915-# To use the option intlimits with the amsmath package you can specify:
19161916-# EXTRA_PACKAGES=[intlimits]{amsmath}
19171917-# If left blank no extra packages will be included.
19181918-# This tag requires that the tag GENERATE_LATEX is set to YES.
19191919-19201920-EXTRA_PACKAGES =
19211921-19221922-# The LATEX_HEADER tag can be used to specify a user-defined LaTeX header for
19231923-# the generated LaTeX document. The header should contain everything until the
19241924-# first chapter. If it is left blank doxygen will generate a standard header. It
19251925-# is highly recommended to start with a default header using
19261926-# doxygen -w latex new_header.tex new_footer.tex new_stylesheet.sty
19271927-# and then modify the file new_header.tex. See also section "Doxygen usage" for
19281928-# information on how to generate the default header that doxygen normally uses.
19291929-#
19301930-# Note: Only use a user-defined header if you know what you are doing!
19311931-# Note: The header is subject to change so you typically have to regenerate the
19321932-# default header when upgrading to a newer version of doxygen. The following
19331933-# commands have a special meaning inside the header (and footer): For a
19341934-# description of the possible markers and block names see the documentation.
19351935-# This tag requires that the tag GENERATE_LATEX is set to YES.
19361936-19371937-LATEX_HEADER =
19381938-19391939-# The LATEX_FOOTER tag can be used to specify a user-defined LaTeX footer for
19401940-# the generated LaTeX document. The footer should contain everything after the
19411941-# last chapter. If it is left blank doxygen will generate a standard footer. See
19421942-# LATEX_HEADER for more information on how to generate a default footer and what
19431943-# special commands can be used inside the footer. See also section "Doxygen
19441944-# usage" for information on how to generate the default footer that doxygen
19451945-# normally uses. Note: Only use a user-defined footer if you know what you are
19461946-# doing!
19471947-# This tag requires that the tag GENERATE_LATEX is set to YES.
19481948-19491949-LATEX_FOOTER =
19501950-19511951-# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
19521952-# LaTeX style sheets that are included after the standard style sheets created
19531953-# by doxygen. Using this option one can overrule certain style aspects. Doxygen
19541954-# will copy the style sheet files to the output directory.
19551955-# Note: The order of the extra style sheet files is of importance (e.g. the last
19561956-# style sheet in the list overrules the setting of the previous ones in the
19571957-# list).
19581958-# This tag requires that the tag GENERATE_LATEX is set to YES.
19591959-19601960-LATEX_EXTRA_STYLESHEET =
19611961-19621962-# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
19631963-# other source files which should be copied to the LATEX_OUTPUT output
19641964-# directory. Note that the files will be copied as-is; there are no commands or
19651965-# markers available.
19661966-# This tag requires that the tag GENERATE_LATEX is set to YES.
19671967-19681968-LATEX_EXTRA_FILES =
19691969-19701970-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
19711971-# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
19721972-# contain links (just like the HTML output) instead of page references. This
19731973-# makes the output suitable for online browsing using a PDF viewer.
19741974-# The default value is: YES.
19751975-# This tag requires that the tag GENERATE_LATEX is set to YES.
19761976-19771977-PDF_HYPERLINKS = YES
19781978-19791979-# If the USE_PDFLATEX tag is set to YES, doxygen will use the engine as
19801980-# specified with LATEX_CMD_NAME to generate the PDF file directly from the LaTeX
19811981-# files. Set this option to YES, to get a higher quality PDF documentation.
19821982-#
19831983-# See also section LATEX_CMD_NAME for selecting the engine.
19841984-# The default value is: YES.
19851985-# This tag requires that the tag GENERATE_LATEX is set to YES.
19861986-19871987-USE_PDFLATEX = YES
19881988-19891989-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
19901990-# command to the generated LaTeX files. This will instruct LaTeX to keep running
19911991-# if errors occur, instead of asking the user for help.
19921992-# The default value is: NO.
19931993-# This tag requires that the tag GENERATE_LATEX is set to YES.
19941994-19951995-LATEX_BATCHMODE = NO
19961996-19971997-# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
19981998-# index chapters (such as File Index, Compound Index, etc.) in the output.
19991999-# The default value is: NO.
20002000-# This tag requires that the tag GENERATE_LATEX is set to YES.
20012001-20022002-LATEX_HIDE_INDICES = NO
20032003-20042004-# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
20052005-# bibliography, e.g. plainnat, or ieeetr. See
20062006-# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
20072007-# The default value is: plain.
20082008-# This tag requires that the tag GENERATE_LATEX is set to YES.
20092009-20102010-LATEX_BIB_STYLE = plain
20112011-20122012-# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated
20132013-# page will contain the date and time when the page was generated. Setting this
20142014-# to NO can help when comparing the output of multiple runs.
20152015-# The default value is: NO.
20162016-# This tag requires that the tag GENERATE_LATEX is set to YES.
20172017-20182018-LATEX_TIMESTAMP = NO
20192019-20202020-# The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute)
20212021-# path from which the emoji images will be read. If a relative path is entered,
20222022-# it will be relative to the LATEX_OUTPUT directory. If left blank the
20232023-# LATEX_OUTPUT directory will be used.
20242024-# This tag requires that the tag GENERATE_LATEX is set to YES.
20252025-20262026-LATEX_EMOJI_DIRECTORY =
20272027-20282028-#---------------------------------------------------------------------------
20292029-# Configuration options related to the RTF output
20302030-#---------------------------------------------------------------------------
20312031-20322032-# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
20332033-# RTF output is optimized for Word 97 and may not look too pretty with other RTF
20342034-# readers/editors.
20352035-# The default value is: NO.
20362036-20372037-GENERATE_RTF = NO
20382038-20392039-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
20402040-# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
20412041-# it.
20422042-# The default directory is: rtf.
20432043-# This tag requires that the tag GENERATE_RTF is set to YES.
20442044-20452045-RTF_OUTPUT = rtf
20462046-20472047-# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
20482048-# documents. This may be useful for small projects and may help to save some
20492049-# trees in general.
20502050-# The default value is: NO.
20512051-# This tag requires that the tag GENERATE_RTF is set to YES.
20522052-20532053-COMPACT_RTF = NO
20542054-20552055-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
20562056-# contain hyperlink fields. The RTF file will contain links (just like the HTML
20572057-# output) instead of page references. This makes the output suitable for online
20582058-# browsing using Word or some other Word compatible readers that support those
20592059-# fields.
20602060-#
20612061-# Note: WordPad (write) and others do not support links.
20622062-# The default value is: NO.
20632063-# This tag requires that the tag GENERATE_RTF is set to YES.
20642064-20652065-RTF_HYPERLINKS = NO
20662066-20672067-# Load stylesheet definitions from file. Syntax is similar to doxygen's
20682068-# configuration file, i.e. a series of assignments. You only have to provide
20692069-# replacements, missing definitions are set to their default value.
20702070-#
20712071-# See also section "Doxygen usage" for information on how to generate the
20722072-# default style sheet that doxygen normally uses.
20732073-# This tag requires that the tag GENERATE_RTF is set to YES.
20742074-20752075-RTF_STYLESHEET_FILE =
20762076-20772077-# Set optional variables used in the generation of an RTF document. Syntax is
20782078-# similar to doxygen's configuration file. A template extensions file can be
20792079-# generated using doxygen -e rtf extensionFile.
20802080-# This tag requires that the tag GENERATE_RTF is set to YES.
20812081-20822082-RTF_EXTENSIONS_FILE =
20832083-20842084-#---------------------------------------------------------------------------
20852085-# Configuration options related to the man page output
20862086-#---------------------------------------------------------------------------
20872087-20882088-# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
20892089-# classes and files.
20902090-# The default value is: NO.
20912091-20922092-GENERATE_MAN = NO
20932093-20942094-# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
20952095-# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
20962096-# it. A directory man3 will be created inside the directory specified by
20972097-# MAN_OUTPUT.
20982098-# The default directory is: man.
20992099-# This tag requires that the tag GENERATE_MAN is set to YES.
21002100-21012101-MAN_OUTPUT = man
21022102-21032103-# The MAN_EXTENSION tag determines the extension that is added to the generated
21042104-# man pages. In case the manual section does not start with a number, the number
21052105-# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
21062106-# optional.
21072107-# The default value is: .3.
21082108-# This tag requires that the tag GENERATE_MAN is set to YES.
21092109-21102110-MAN_EXTENSION = .3
21112111-21122112-# The MAN_SUBDIR tag determines the name of the directory created within
21132113-# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
21142114-# MAN_EXTENSION with the initial . removed.
21152115-# This tag requires that the tag GENERATE_MAN is set to YES.
21162116-21172117-MAN_SUBDIR =
21182118-21192119-# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
21202120-# will generate one additional man file for each entity documented in the real
21212121-# man page(s). These additional files only source the real man page, but without
21222122-# them the man command would be unable to find the correct page.
21232123-# The default value is: NO.
21242124-# This tag requires that the tag GENERATE_MAN is set to YES.
21252125-21262126-MAN_LINKS = NO
21272127-21282128-#---------------------------------------------------------------------------
21292129-# Configuration options related to the XML output
21302130-#---------------------------------------------------------------------------
21312131-21322132-# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
21332133-# captures the structure of the code including all documentation.
21342134-# The default value is: NO.
21352135-21362136-GENERATE_XML = NO
21372137-21382138-# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
21392139-# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
21402140-# it.
21412141-# The default directory is: xml.
21422142-# This tag requires that the tag GENERATE_XML is set to YES.
21432143-21442144-XML_OUTPUT = xml
21452145-21462146-# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
21472147-# listings (including syntax highlighting and cross-referencing information) to
21482148-# the XML output. Note that enabling this will significantly increase the size
21492149-# of the XML output.
21502150-# The default value is: YES.
21512151-# This tag requires that the tag GENERATE_XML is set to YES.
21522152-21532153-XML_PROGRAMLISTING = YES
21542154-21552155-# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
21562156-# namespace members in file scope as well, matching the HTML output.
21572157-# The default value is: NO.
21582158-# This tag requires that the tag GENERATE_XML is set to YES.
21592159-21602160-XML_NS_MEMB_FILE_SCOPE = NO
21612161-21622162-#---------------------------------------------------------------------------
21632163-# Configuration options related to the DOCBOOK output
21642164-#---------------------------------------------------------------------------
21652165-21662166-# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
21672167-# that can be used to generate PDF.
21682168-# The default value is: NO.
21692169-21702170-GENERATE_DOCBOOK = NO
21712171-21722172-# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
21732173-# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
21742174-# front of it.
21752175-# The default directory is: docbook.
21762176-# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
21772177-21782178-DOCBOOK_OUTPUT = docbook
21792179-21802180-#---------------------------------------------------------------------------
21812181-# Configuration options for the AutoGen Definitions output
21822182-#---------------------------------------------------------------------------
21832183-21842184-# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
21852185-# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
21862186-# the structure of the code including all documentation. Note that this feature
21872187-# is still experimental and incomplete at the moment.
21882188-# The default value is: NO.
21892189-21902190-GENERATE_AUTOGEN_DEF = NO
21912191-21922192-#---------------------------------------------------------------------------
21932193-# Configuration options related to the Perl module output
21942194-#---------------------------------------------------------------------------
21952195-21962196-# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
21972197-# file that captures the structure of the code including all documentation.
21982198-#
21992199-# Note that this feature is still experimental and incomplete at the moment.
22002200-# The default value is: NO.
22012201-22022202-GENERATE_PERLMOD = NO
22032203-22042204-# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
22052205-# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
22062206-# output from the Perl module output.
22072207-# The default value is: NO.
22082208-# This tag requires that the tag GENERATE_PERLMOD is set to YES.
22092209-22102210-PERLMOD_LATEX = NO
22112211-22122212-# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
22132213-# formatted so it can be parsed by a human reader. This is useful if you want to
22142214-# understand what is going on. On the other hand, if this tag is set to NO, the
22152215-# size of the Perl module output will be much smaller and Perl will parse it
22162216-# just the same.
22172217-# The default value is: YES.
22182218-# This tag requires that the tag GENERATE_PERLMOD is set to YES.
22192219-22202220-PERLMOD_PRETTY = YES
22212221-22222222-# The names of the make variables in the generated doxyrules.make file are
22232223-# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
22242224-# so different doxyrules.make files included by the same Makefile don't
22252225-# overwrite each other's variables.
22262226-# This tag requires that the tag GENERATE_PERLMOD is set to YES.
22272227-22282228-PERLMOD_MAKEVAR_PREFIX =
22292229-22302230-#---------------------------------------------------------------------------
22312231-# Configuration options related to the preprocessor
22322232-#---------------------------------------------------------------------------
22332233-22342234-# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
22352235-# C-preprocessor directives found in the sources and include files.
22362236-# The default value is: YES.
22372237-22382238-ENABLE_PREPROCESSING = YES
22392239-22402240-# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
22412241-# in the source code. If set to NO, only conditional compilation will be
22422242-# performed. Macro expansion can be done in a controlled way by setting
22432243-# EXPAND_ONLY_PREDEF to YES.
22442244-# The default value is: NO.
22452245-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22462246-22472247-MACRO_EXPANSION = NO
22482248-22492249-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
22502250-# the macro expansion is limited to the macros specified with the PREDEFINED and
22512251-# EXPAND_AS_DEFINED tags.
22522252-# The default value is: NO.
22532253-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22542254-22552255-EXPAND_ONLY_PREDEF = NO
22562256-22572257-# If the SEARCH_INCLUDES tag is set to YES, the include files in the
22582258-# INCLUDE_PATH will be searched if a #include is found.
22592259-# The default value is: YES.
22602260-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22612261-22622262-SEARCH_INCLUDES = YES
22632263-22642264-# The INCLUDE_PATH tag can be used to specify one or more directories that
22652265-# contain include files that are not input files but should be processed by the
22662266-# preprocessor. Note that the INCLUDE_PATH is not recursive, so the setting of
22672267-# RECURSIVE has no effect here.
22682268-# This tag requires that the tag SEARCH_INCLUDES is set to YES.
22692269-22702270-INCLUDE_PATH =
22712271-22722272-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
22732273-# patterns (like *.h and *.hpp) to filter out the header-files in the
22742274-# directories. If left blank, the patterns specified with FILE_PATTERNS will be
22752275-# used.
22762276-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22772277-22782278-INCLUDE_FILE_PATTERNS =
22792279-22802280-# The PREDEFINED tag can be used to specify one or more macro names that are
22812281-# defined before the preprocessor is started (similar to the -D option of e.g.
22822282-# gcc). The argument of the tag is a list of macros of the form: name or
22832283-# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
22842284-# is assumed. To prevent a macro definition from being undefined via #undef or
22852285-# recursively expanded use the := operator instead of the = operator.
22862286-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22872287-22882288-PREDEFINED =
22892289-22902290-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
22912291-# tag can be used to specify a list of macro names that should be expanded. The
22922292-# macro definition that is found in the sources will be used. Use the PREDEFINED
22932293-# tag if you want to use a different macro definition that overrules the
22942294-# definition found in the source code.
22952295-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
22962296-22972297-EXPAND_AS_DEFINED =
22982298-22992299-# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
23002300-# remove all references to function-like macros that are alone on a line, have
23012301-# an all uppercase name, and do not end with a semicolon. Such function macros
23022302-# are typically used for boiler-plate code, and will confuse the parser if not
23032303-# removed.
23042304-# The default value is: YES.
23052305-# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
23062306-23072307-SKIP_FUNCTION_MACROS = YES
23082308-23092309-#---------------------------------------------------------------------------
23102310-# Configuration options related to external references
23112311-#---------------------------------------------------------------------------
23122312-23132313-# The TAGFILES tag can be used to specify one or more tag files. For each tag
23142314-# file the location of the external documentation should be added. The format of
23152315-# a tag file without this location is as follows:
23162316-# TAGFILES = file1 file2 ...
23172317-# Adding location for the tag files is done as follows:
23182318-# TAGFILES = file1=loc1 "file2 = loc2" ...
23192319-# where loc1 and loc2 can be relative or absolute paths or URLs. See the
23202320-# section "Linking to external documentation" for more information about the use
23212321-# of tag files.
23222322-# Note: Each tag file must have a unique name (where the name does NOT include
23232323-# the path). If a tag file is not located in the directory in which doxygen is
23242324-# run, you must also specify the path to the tagfile here.
23252325-23262326-TAGFILES =
23272327-23282328-# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
23292329-# tag file that is based on the input files it reads. See section "Linking to
23302330-# external documentation" for more information about the usage of tag files.
23312331-23322332-GENERATE_TAGFILE =
23332333-23342334-# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
23352335-# the class index. If set to NO, only the inherited external classes will be
23362336-# listed.
23372337-# The default value is: NO.
23382338-23392339-ALLEXTERNALS = NO
23402340-23412341-# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
23422342-# in the modules index. If set to NO, only the current project's groups will be
23432343-# listed.
23442344-# The default value is: YES.
23452345-23462346-EXTERNAL_GROUPS = YES
23472347-23482348-# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
23492349-# the related pages index. If set to NO, only the current project's pages will
23502350-# be listed.
23512351-# The default value is: YES.
23522352-23532353-EXTERNAL_PAGES = YES
23542354-23552355-#---------------------------------------------------------------------------
23562356-# Configuration options related to the dot tool
23572357-#---------------------------------------------------------------------------
23582358-23592359-# You can include diagrams made with dia in doxygen documentation. Doxygen will
23602360-# then run dia to produce the diagram and insert it in the documentation. The
23612361-# DIA_PATH tag allows you to specify the directory where the dia binary resides.
23622362-# If left empty dia is assumed to be found in the default search path.
23632363-23642364-DIA_PATH =
23652365-23662366-# If set to YES the inheritance and collaboration graphs will hide inheritance
23672367-# and usage relations if the target is undocumented or is not a class.
23682368-# The default value is: YES.
23692369-23702370-HIDE_UNDOC_RELATIONS = YES
23712371-23722372-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
23732373-# available from the path. This tool is part of Graphviz (see:
23742374-# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
23752375-# Bell Labs. The other options in this section have no effect if this option is
23762376-# set to NO
23772377-# The default value is: NO.
23782378-23792379-HAVE_DOT = NO
23802380-23812381-# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
23822382-# to run in parallel. When set to 0 doxygen will base this on the number of
23832383-# processors available in the system. You can set it explicitly to a value
23842384-# larger than 0 to get control over the balance between CPU load and processing
23852385-# speed.
23862386-# Minimum value: 0, maximum value: 32, default value: 0.
23872387-# This tag requires that the tag HAVE_DOT is set to YES.
23882388-23892389-DOT_NUM_THREADS = 0
23902390-23912391-# DOT_COMMON_ATTR is common attributes for nodes, edges and labels of
23922392-# subgraphs. When you want a differently looking font in the dot files that
23932393-# doxygen generates you can specify fontname, fontcolor and fontsize attributes.
23942394-# For details please see <a href=https://graphviz.org/doc/info/attrs.html>Node,
23952395-# Edge and Graph Attributes specification</a> You need to make sure dot is able
23962396-# to find the font, which can be done by putting it in a standard location or by
23972397-# setting the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the
23982398-# directory containing the font. Default graphviz fontsize is 14.
23992399-# The default value is: fontname=Helvetica,fontsize=10.
24002400-# This tag requires that the tag HAVE_DOT is set to YES.
24012401-24022402-DOT_COMMON_ATTR = "fontname=Helvetica,fontsize=10"
24032403-24042404-# DOT_EDGE_ATTR is concatenated with DOT_COMMON_ATTR. For elegant style you can
24052405-# add 'arrowhead=open, arrowtail=open, arrowsize=0.5'. <a
24062406-# href=https://graphviz.org/doc/info/arrows.html>Complete documentation about
24072407-# arrows shapes.</a>
24082408-# The default value is: labelfontname=Helvetica,labelfontsize=10.
24092409-# This tag requires that the tag HAVE_DOT is set to YES.
24102410-24112411-DOT_EDGE_ATTR = "labelfontname=Helvetica,labelfontsize=10"
24122412-24132413-# DOT_NODE_ATTR is concatenated with DOT_COMMON_ATTR. For view without boxes
24142414-# around nodes set 'shape=plain' or 'shape=plaintext' <a
24152415-# href=https://www.graphviz.org/doc/info/shapes.html>Shapes specification</a>
24162416-# The default value is: shape=box,height=0.2,width=0.4.
24172417-# This tag requires that the tag HAVE_DOT is set to YES.
24182418-24192419-DOT_NODE_ATTR = "shape=box,height=0.2,width=0.4"
24202420-24212421-# You can set the path where dot can find font specified with fontname in
24222422-# DOT_COMMON_ATTR and others dot attributes.
24232423-# This tag requires that the tag HAVE_DOT is set to YES.
24242424-24252425-DOT_FONTPATH =
24262426-24272427-# If the CLASS_GRAPH tag is set to YES (or GRAPH) then doxygen will generate a
24282428-# graph for each documented class showing the direct and indirect inheritance
24292429-# relations. In case HAVE_DOT is set as well dot will be used to draw the graph,
24302430-# otherwise the built-in generator will be used. If the CLASS_GRAPH tag is set
24312431-# to TEXT the direct and indirect inheritance relations will be shown as texts /
24322432-# links.
24332433-# Possible values are: NO, YES, TEXT and GRAPH.
24342434-# The default value is: YES.
24352435-24362436-CLASS_GRAPH = YES
24372437-24382438-# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
24392439-# graph for each documented class showing the direct and indirect implementation
24402440-# dependencies (inheritance, containment, and class references variables) of the
24412441-# class with other documented classes.
24422442-# The default value is: YES.
24432443-# This tag requires that the tag HAVE_DOT is set to YES.
24442444-24452445-COLLABORATION_GRAPH = YES
24462446-24472447-# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
24482448-# groups, showing the direct groups dependencies. See also the chapter Grouping
24492449-# in the manual.
24502450-# The default value is: YES.
24512451-# This tag requires that the tag HAVE_DOT is set to YES.
24522452-24532453-GROUP_GRAPHS = YES
24542454-24552455-# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
24562456-# collaboration diagrams in a style similar to the OMG's Unified Modeling
24572457-# Language.
24582458-# The default value is: NO.
24592459-# This tag requires that the tag HAVE_DOT is set to YES.
24602460-24612461-UML_LOOK = NO
24622462-24632463-# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
24642464-# class node. If there are many fields or methods and many nodes the graph may
24652465-# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
24662466-# number of items for each type to make the size more manageable. Set this to 0
24672467-# for no limit. Note that the threshold may be exceeded by 50% before the limit
24682468-# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
24692469-# but if the number exceeds 15, the total amount of fields shown is limited to
24702470-# 10.
24712471-# Minimum value: 0, maximum value: 100, default value: 10.
24722472-# This tag requires that the tag UML_LOOK is set to YES.
24732473-24742474-UML_LIMIT_NUM_FIELDS = 10
24752475-24762476-# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and
24772477-# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS
24782478-# tag is set to YES, doxygen will add type and arguments for attributes and
24792479-# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen
24802480-# will not generate fields with class member information in the UML graphs. The
24812481-# class diagrams will look similar to the default class diagrams but using UML
24822482-# notation for the relationships.
24832483-# Possible values are: NO, YES and NONE.
24842484-# The default value is: NO.
24852485-# This tag requires that the tag UML_LOOK is set to YES.
24862486-24872487-DOT_UML_DETAILS = NO
24882488-24892489-# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters
24902490-# to display on a single line. If the actual line length exceeds this threshold
24912491-# significantly it will wrapped across multiple lines. Some heuristics are apply
24922492-# to avoid ugly line breaks.
24932493-# Minimum value: 0, maximum value: 1000, default value: 17.
24942494-# This tag requires that the tag HAVE_DOT is set to YES.
24952495-24962496-DOT_WRAP_THRESHOLD = 17
24972497-24982498-# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
24992499-# collaboration graphs will show the relations between templates and their
25002500-# instances.
25012501-# The default value is: NO.
25022502-# This tag requires that the tag HAVE_DOT is set to YES.
25032503-25042504-TEMPLATE_RELATIONS = NO
25052505-25062506-# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
25072507-# YES then doxygen will generate a graph for each documented file showing the
25082508-# direct and indirect include dependencies of the file with other documented
25092509-# files.
25102510-# The default value is: YES.
25112511-# This tag requires that the tag HAVE_DOT is set to YES.
25122512-25132513-INCLUDE_GRAPH = YES
25142514-25152515-# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
25162516-# set to YES then doxygen will generate a graph for each documented file showing
25172517-# the direct and indirect include dependencies of the file with other documented
25182518-# files.
25192519-# The default value is: YES.
25202520-# This tag requires that the tag HAVE_DOT is set to YES.
25212521-25222522-INCLUDED_BY_GRAPH = YES
25232523-25242524-# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
25252525-# dependency graph for every global function or class method.
25262526-#
25272527-# Note that enabling this option will significantly increase the time of a run.
25282528-# So in most cases it will be better to enable call graphs for selected
25292529-# functions only using the \callgraph command. Disabling a call graph can be
25302530-# accomplished by means of the command \hidecallgraph.
25312531-# The default value is: NO.
25322532-# This tag requires that the tag HAVE_DOT is set to YES.
25332533-25342534-CALL_GRAPH = NO
25352535-25362536-# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
25372537-# dependency graph for every global function or class method.
25382538-#
25392539-# Note that enabling this option will significantly increase the time of a run.
25402540-# So in most cases it will be better to enable caller graphs for selected
25412541-# functions only using the \callergraph command. Disabling a caller graph can be
25422542-# accomplished by means of the command \hidecallergraph.
25432543-# The default value is: NO.
25442544-# This tag requires that the tag HAVE_DOT is set to YES.
25452545-25462546-CALLER_GRAPH = NO
25472547-25482548-# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
25492549-# hierarchy of all classes instead of a textual one.
25502550-# The default value is: YES.
25512551-# This tag requires that the tag HAVE_DOT is set to YES.
25522552-25532553-GRAPHICAL_HIERARCHY = YES
25542554-25552555-# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
25562556-# dependencies a directory has on other directories in a graphical way. The
25572557-# dependency relations are determined by the #include relations between the
25582558-# files in the directories.
25592559-# The default value is: YES.
25602560-# This tag requires that the tag HAVE_DOT is set to YES.
25612561-25622562-DIRECTORY_GRAPH = YES
25632563-25642564-# The DIR_GRAPH_MAX_DEPTH tag can be used to limit the maximum number of levels
25652565-# of child directories generated in directory dependency graphs by dot.
25662566-# Minimum value: 1, maximum value: 25, default value: 1.
25672567-# This tag requires that the tag DIRECTORY_GRAPH is set to YES.
25682568-25692569-DIR_GRAPH_MAX_DEPTH = 1
25702570-25712571-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
25722572-# generated by dot. For an explanation of the image formats see the section
25732573-# output formats in the documentation of the dot tool (Graphviz (see:
25742574-# http://www.graphviz.org/)).
25752575-# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
25762576-# to make the SVG files visible in IE 9+ (other browsers do not have this
25772577-# requirement).
25782578-# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
25792579-# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
25802580-# png:gdiplus:gdiplus.
25812581-# The default value is: png.
25822582-# This tag requires that the tag HAVE_DOT is set to YES.
25832583-25842584-DOT_IMAGE_FORMAT = png
25852585-25862586-# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
25872587-# enable generation of interactive SVG images that allow zooming and panning.
25882588-#
25892589-# Note that this requires a modern browser other than Internet Explorer. Tested
25902590-# and working are Firefox, Chrome, Safari, and Opera.
25912591-# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
25922592-# the SVG files visible. Older versions of IE do not have SVG support.
25932593-# The default value is: NO.
25942594-# This tag requires that the tag HAVE_DOT is set to YES.
25952595-25962596-INTERACTIVE_SVG = NO
25972597-25982598-# The DOT_PATH tag can be used to specify the path where the dot tool can be
25992599-# found. If left blank, it is assumed the dot tool can be found in the path.
26002600-# This tag requires that the tag HAVE_DOT is set to YES.
26012601-26022602-DOT_PATH =
26032603-26042604-# The DOTFILE_DIRS tag can be used to specify one or more directories that
26052605-# contain dot files that are included in the documentation (see the \dotfile
26062606-# command).
26072607-# This tag requires that the tag HAVE_DOT is set to YES.
26082608-26092609-DOTFILE_DIRS =
26102610-26112611-# The MSCFILE_DIRS tag can be used to specify one or more directories that
26122612-# contain msc files that are included in the documentation (see the \mscfile
26132613-# command).
26142614-26152615-MSCFILE_DIRS =
26162616-26172617-# The DIAFILE_DIRS tag can be used to specify one or more directories that
26182618-# contain dia files that are included in the documentation (see the \diafile
26192619-# command).
26202620-26212621-DIAFILE_DIRS =
26222622-26232623-# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
26242624-# path where java can find the plantuml.jar file or to the filename of jar file
26252625-# to be used. If left blank, it is assumed PlantUML is not used or called during
26262626-# a preprocessing step. Doxygen will generate a warning when it encounters a
26272627-# \startuml command in this case and will not generate output for the diagram.
26282628-26292629-PLANTUML_JAR_PATH =
26302630-26312631-# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a
26322632-# configuration file for plantuml.
26332633-26342634-PLANTUML_CFG_FILE =
26352635-26362636-# When using plantuml, the specified paths are searched for files specified by
26372637-# the !include statement in a plantuml block.
26382638-26392639-PLANTUML_INCLUDE_PATH =
26402640-26412641-# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
26422642-# that will be shown in the graph. If the number of nodes in a graph becomes
26432643-# larger than this value, doxygen will truncate the graph, which is visualized
26442644-# by representing a node as a red box. Note that doxygen if the number of direct
26452645-# children of the root node in a graph is already larger than
26462646-# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
26472647-# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
26482648-# Minimum value: 0, maximum value: 10000, default value: 50.
26492649-# This tag requires that the tag HAVE_DOT is set to YES.
26502650-26512651-DOT_GRAPH_MAX_NODES = 50
26522652-26532653-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
26542654-# generated by dot. A depth value of 3 means that only nodes reachable from the
26552655-# root by following a path via at most 3 edges will be shown. Nodes that lay
26562656-# further from the root node will be omitted. Note that setting this option to 1
26572657-# or 2 may greatly reduce the computation time needed for large code bases. Also
26582658-# note that the size of a graph can be further restricted by
26592659-# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
26602660-# Minimum value: 0, maximum value: 1000, default value: 0.
26612661-# This tag requires that the tag HAVE_DOT is set to YES.
26622662-26632663-MAX_DOT_GRAPH_DEPTH = 0
26642664-26652665-# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
26662666-# files in one run (i.e. multiple -o and -T options on the command line). This
26672667-# makes dot run faster, but since only newer versions of dot (>1.8.10) support
26682668-# this, this feature is disabled by default.
26692669-# The default value is: NO.
26702670-# This tag requires that the tag HAVE_DOT is set to YES.
26712671-26722672-DOT_MULTI_TARGETS = NO
26732673-26742674-# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
26752675-# explaining the meaning of the various boxes and arrows in the dot generated
26762676-# graphs.
26772677-# Note: This tag requires that UML_LOOK isn't set, i.e. the doxygen internal
26782678-# graphical representation for inheritance and collaboration diagrams is used.
26792679-# The default value is: YES.
26802680-# This tag requires that the tag HAVE_DOT is set to YES.
26812681-26822682-GENERATE_LEGEND = YES
26832683-26842684-# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate
26852685-# files that are used to generate the various graphs.
26862686-#
26872687-# Note: This setting is not only used for dot files but also for msc temporary
26882688-# files.
26892689-# The default value is: YES.
26902690-26912691-DOT_CLEANUP = YES