From 14249fd8ecd041f697759e9a03dc72b87e96c45d Mon Sep 17 00:00:00 2001 From: Adriano Campos Date: Fri, 24 Feb 2017 15:43:21 +0000 Subject: [PATCH] Migrate particle library manager version v1 to v2 On January 23, 2017, Particle introduced a new version of your firmware library manager, requiring that libraries be migrated from the old library structure (v1) to your new library structure (v2). Particle Migrate command: >>particle library migrate --- .../AnalogOutput/AnalogOutput.ino | 2 +- .../ArrayOfLedArrays/ArrayOfLedArrays.ino | 2 +- .../examples => examples}/Blink/Blink.ino | 2 +- .../ColorPalette/ColorPalette.ino | 2 +- .../ColorTemperature/ColorTemperature.ino | 2 +- .../examples => examples}/Cylon/Cylon.ino | 2 +- .../DemoReel100/DemoReel100.ino | 2 +- .../Fire2012/Fire2012.ino | 2 +- .../Fire2012WithPalette.ino | 2 +- .../FirstLight/FirstLight.ino | 2 +- .../MirroringSample/MirroringSample.ino | 2 +- .../MultiArrays/MultiArrays.ino | 2 +- .../MultipleStripsInOneArray.ino | 2 +- .../examples => examples}/Noise/Noise.ino | 0 .../NoisePlayground/NoisePlayground.ino | 2 +- .../NoisePlusPalette/NoisePlusPalette.ino | 0 .../OctoWS2811Demo/OctoWS2811Demo.ino | 0 .../PJRCSpectrumAnalyzer.ino | 2 +- .../ParallelOutputDemo/ParallelOutputDemo.ino | 0 .../examples => examples}/Pintest/Pintest.ino | 0 .../RGBCalibrate/RGBCalibrate.ino | 2 +- .../SmartMatrix/SmartMatrix.ino | 0 .../XYMatrix/XYMatrix.ino | 2 +- firmware/docs/.Doxyfile.swp | Bin 126976 -> 0 bytes firmware/docs/Doxyfile | 2331 ----------------- firmware/docs/mainpage.dox | 10 - .../platforms/arm/k20/clockless_arm_k20.h | 144 - .../arm/k20/clockless_block_arm_k20.h | 394 --- firmware/platforms/arm/k20/fastled_arm_k20.h | 14 - firmware/platforms/arm/k20/fastpin_arm_k20.h | 120 - firmware/platforms/arm/k20/fastspi_arm_k20.h | 388 --- .../platforms/arm/k20/led_sysdefs_arm_k20.h | 37 - .../platforms/arm/k20/octows2811_controller.h | 95 - firmware/platforms/arm/k20/smartmatrix_t3.h | 83 - .../platforms/arm/k26/clockless_arm_k26.h | 165 -- firmware/platforms/arm/k26/fastled_arm_k26.h | 10 - firmware/platforms/arm/k26/fastpin_arm_k26.h | 118 - firmware/platforms/arm/k26/fastspi_arm_k26.h | 232 -- .../platforms/arm/k26/led_sysdefs_arm_k26.h | 37 - .../platforms/arm/sam/clockless_arm_sam.h | 143 - .../arm/sam/clockless_block_arm_sam.h | 204 -- firmware/platforms/arm/sam/fastled_arm_sam.h | 11 - firmware/platforms/arm/sam/fastpin_arm_sam.h | 137 - firmware/platforms/arm/sam/fastspi_arm_sam.h | 163 -- .../platforms/arm/sam/led_sysdefs_arm_sam.h | 39 - firmware/platforms/avr/clockless_trinket.h | 437 --- firmware/platforms/avr/fastled_avr.h | 9 - firmware/platforms/avr/fastpin_avr.h | 224 -- firmware/platforms/avr/fastspi_avr.h | 503 ---- firmware/platforms/avr/led_sysdefs_avr.h | 38 - library.properties | 5 + spark.json | 8 - {firmware => src}/.gitignore | 0 {firmware => src}/FastLED.cpp | 0 {firmware => src}/FastLED.h | 0 src/FastLED/FastLED.h | 1 + src/FastLED/FastSPI_LED2.h | 1 + src/FastLED/bitswap.h | 1 + src/FastLED/chipsets.h | 1 + src/FastLED/clockless_arm_stm32.h | 1 + src/FastLED/color.h | 1 + src/FastLED/colorpalettes.h | 1 + src/FastLED/colorutils.h | 1 + src/FastLED/controller.h | 1 + src/FastLED/delay.h | 1 + src/FastLED/dmx.h | 1 + src/FastLED/fastled_arm_stm32.h | 1 + src/FastLED/fastled_config.h | 1 + src/FastLED/fastpin.h | 1 + src/FastLED/fastpin_arm_stm32.h | 1 + src/FastLED/fastspi.h | 1 + src/FastLED/fastspi_bitbang.h | 1 + src/FastLED/fastspi_dma.h | 1 + src/FastLED/fastspi_nop.h | 1 + src/FastLED/fastspi_ref.h | 1 + src/FastLED/fastspi_types.h | 1 + src/FastLED/hsv2rgb.h | 1 + src/FastLED/led_sysdefs.h | 1 + src/FastLED/led_sysdefs_arm_stm32.h | 1 + src/FastLED/lib8tion.h | 1 + src/FastLED/noise.h | 1 + src/FastLED/pixeltypes.h | 1 + src/FastLED/platforms.h | 1 + src/FastLED/power_mgt.h | 1 + {firmware => src}/FastSPI_LED2.h | 0 {firmware => src}/LICENSE | 0 {firmware => src}/PORTING.md | 0 {firmware => src}/README.md | 2 +- {firmware => src}/bitswap.h | 0 {firmware => src}/chipsets.h | 0 {firmware => src}/clockless_arm_stm32.h | 0 {firmware => src}/color.h | 0 {firmware => src}/colorpalettes.cpp | 0 {firmware => src}/colorpalettes.h | 0 {firmware => src}/colorutils.cpp | 0 {firmware => src}/colorutils.h | 0 {firmware => src}/controller.h | 0 {firmware => src}/delay.h | 0 {firmware => src}/dmx.h | 0 {firmware => src}/fastled_arm_stm32.h | 0 {firmware => src}/fastled_config.h | 0 {firmware => src}/fastpin.h | 0 {firmware => src}/fastpin_arm_stm32.h | 0 {firmware => src}/fastspi.h | 0 {firmware => src}/fastspi_bitbang.h | 0 {firmware => src}/fastspi_dma.h | 0 {firmware => src}/fastspi_nop.h | 0 {firmware => src}/fastspi_ref.h | 0 {firmware => src}/fastspi_types.h | 0 {firmware => src}/hsv2rgb.cpp | 0 {firmware => src}/hsv2rgb.h | 0 {firmware => src}/keywords.txt | 0 {firmware => src}/led_sysdefs.h | 0 {firmware => src}/led_sysdefs_arm_stm32.h | 0 {firmware => src}/lib8tion.cpp | 0 {firmware => src}/lib8tion.h | 0 {firmware => src}/noise.cpp | 0 {firmware => src}/noise.h | 0 {firmware => src}/pixeltypes.h | 0 {firmware => src}/platforms.h | 0 {firmware => src}/power_mgt.cpp | 0 {firmware => src}/power_mgt.h | 0 {firmware => src}/preview_changes.txt | 0 {firmware => src}/release_notes.md | 0 {firmware => src}/wiring.cpp | 0 125 files changed, 52 insertions(+), 6112 deletions(-) rename {firmware/examples => examples}/AnalogOutput/AnalogOutput.ino (98%) rename {firmware/examples/Multiple => examples}/ArrayOfLedArrays/ArrayOfLedArrays.ino (97%) rename {firmware/examples => examples}/Blink/Blink.ino (98%) rename {firmware/examples => examples}/ColorPalette/ColorPalette.ino (99%) rename {firmware/examples => examples}/ColorTemperature/ColorTemperature.ino (99%) rename {firmware/examples => examples}/Cylon/Cylon.ino (98%) rename {firmware/examples => examples}/DemoReel100/DemoReel100.ino (99%) rename {firmware/examples => examples}/Fire2012/Fire2012.ino (99%) rename {firmware/examples => examples}/Fire2012WithPalette/Fire2012WithPalette.ino (99%) rename {firmware/examples => examples}/FirstLight/FirstLight.ino (99%) rename {firmware/examples/Multiple => examples}/MirroringSample/MirroringSample.ino (98%) rename {firmware/examples/Multiple => examples}/MultiArrays/MultiArrays.ino (98%) rename {firmware/examples/Multiple => examples}/MultipleStripsInOneArray/MultipleStripsInOneArray.ino (97%) rename {firmware/examples => examples}/Noise/Noise.ino (100%) rename {firmware/examples => examples}/NoisePlayground/NoisePlayground.ino (98%) rename {firmware/examples => examples}/NoisePlusPalette/NoisePlusPalette.ino (100%) rename {firmware/examples/Multiple => examples}/OctoWS2811Demo/OctoWS2811Demo.ino (100%) rename {firmware/examples/Ports => examples}/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino (99%) rename {firmware/examples/Multiple => examples}/ParallelOutputDemo/ParallelOutputDemo.ino (100%) rename {firmware/examples => examples}/Pintest/Pintest.ino (100%) rename {firmware/examples => examples}/RGBCalibrate/RGBCalibrate.ino (99%) rename {firmware/examples => examples}/SmartMatrix/SmartMatrix.ino (100%) rename {firmware/examples => examples}/XYMatrix/XYMatrix.ino (99%) delete mode 100644 firmware/docs/.Doxyfile.swp delete mode 100644 firmware/docs/Doxyfile delete mode 100644 firmware/docs/mainpage.dox delete mode 100644 firmware/platforms/arm/k20/clockless_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/clockless_block_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/fastled_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/fastpin_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/fastspi_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/led_sysdefs_arm_k20.h delete mode 100644 firmware/platforms/arm/k20/octows2811_controller.h delete mode 100644 firmware/platforms/arm/k20/smartmatrix_t3.h delete mode 100644 firmware/platforms/arm/k26/clockless_arm_k26.h delete mode 100644 firmware/platforms/arm/k26/fastled_arm_k26.h delete mode 100644 firmware/platforms/arm/k26/fastpin_arm_k26.h delete mode 100644 firmware/platforms/arm/k26/fastspi_arm_k26.h delete mode 100644 firmware/platforms/arm/k26/led_sysdefs_arm_k26.h delete mode 100644 firmware/platforms/arm/sam/clockless_arm_sam.h delete mode 100644 firmware/platforms/arm/sam/clockless_block_arm_sam.h delete mode 100644 firmware/platforms/arm/sam/fastled_arm_sam.h delete mode 100644 firmware/platforms/arm/sam/fastpin_arm_sam.h delete mode 100644 firmware/platforms/arm/sam/fastspi_arm_sam.h delete mode 100644 firmware/platforms/arm/sam/led_sysdefs_arm_sam.h delete mode 100644 firmware/platforms/avr/clockless_trinket.h delete mode 100644 firmware/platforms/avr/fastled_avr.h delete mode 100644 firmware/platforms/avr/fastpin_avr.h delete mode 100644 firmware/platforms/avr/fastspi_avr.h delete mode 100644 firmware/platforms/avr/led_sysdefs_avr.h create mode 100644 library.properties delete mode 100644 spark.json rename {firmware => src}/.gitignore (100%) rename {firmware => src}/FastLED.cpp (100%) rename {firmware => src}/FastLED.h (100%) create mode 100644 src/FastLED/FastLED.h create mode 100644 src/FastLED/FastSPI_LED2.h create mode 100644 src/FastLED/bitswap.h create mode 100644 src/FastLED/chipsets.h create mode 100644 src/FastLED/clockless_arm_stm32.h create mode 100644 src/FastLED/color.h create mode 100644 src/FastLED/colorpalettes.h create mode 100644 src/FastLED/colorutils.h create mode 100644 src/FastLED/controller.h create mode 100644 src/FastLED/delay.h create mode 100644 src/FastLED/dmx.h create mode 100644 src/FastLED/fastled_arm_stm32.h create mode 100644 src/FastLED/fastled_config.h create mode 100644 src/FastLED/fastpin.h create mode 100644 src/FastLED/fastpin_arm_stm32.h create mode 100644 src/FastLED/fastspi.h create mode 100644 src/FastLED/fastspi_bitbang.h create mode 100644 src/FastLED/fastspi_dma.h create mode 100644 src/FastLED/fastspi_nop.h create mode 100644 src/FastLED/fastspi_ref.h create mode 100644 src/FastLED/fastspi_types.h create mode 100644 src/FastLED/hsv2rgb.h create mode 100644 src/FastLED/led_sysdefs.h create mode 100644 src/FastLED/led_sysdefs_arm_stm32.h create mode 100644 src/FastLED/lib8tion.h create mode 100644 src/FastLED/noise.h create mode 100644 src/FastLED/pixeltypes.h create mode 100644 src/FastLED/platforms.h create mode 100644 src/FastLED/power_mgt.h rename {firmware => src}/FastSPI_LED2.h (100%) rename {firmware => src}/LICENSE (100%) rename {firmware => src}/PORTING.md (100%) rename {firmware => src}/README.md (99%) rename {firmware => src}/bitswap.h (100%) rename {firmware => src}/chipsets.h (100%) rename {firmware => src}/clockless_arm_stm32.h (100%) rename {firmware => src}/color.h (100%) rename {firmware => src}/colorpalettes.cpp (100%) rename {firmware => src}/colorpalettes.h (100%) rename {firmware => src}/colorutils.cpp (100%) rename {firmware => src}/colorutils.h (100%) rename {firmware => src}/controller.h (100%) rename {firmware => src}/delay.h (100%) rename {firmware => src}/dmx.h (100%) rename {firmware => src}/fastled_arm_stm32.h (100%) rename {firmware => src}/fastled_config.h (100%) rename {firmware => src}/fastpin.h (100%) rename {firmware => src}/fastpin_arm_stm32.h (100%) rename {firmware => src}/fastspi.h (100%) rename {firmware => src}/fastspi_bitbang.h (100%) rename {firmware => src}/fastspi_dma.h (100%) rename {firmware => src}/fastspi_nop.h (100%) rename {firmware => src}/fastspi_ref.h (100%) rename {firmware => src}/fastspi_types.h (100%) rename {firmware => src}/hsv2rgb.cpp (100%) rename {firmware => src}/hsv2rgb.h (100%) rename {firmware => src}/keywords.txt (100%) rename {firmware => src}/led_sysdefs.h (100%) rename {firmware => src}/led_sysdefs_arm_stm32.h (100%) rename {firmware => src}/lib8tion.cpp (100%) rename {firmware => src}/lib8tion.h (100%) rename {firmware => src}/noise.cpp (100%) rename {firmware => src}/noise.h (100%) rename {firmware => src}/pixeltypes.h (100%) rename {firmware => src}/platforms.h (100%) rename {firmware => src}/power_mgt.cpp (100%) rename {firmware => src}/power_mgt.h (100%) rename {firmware => src}/preview_changes.txt (100%) rename {firmware => src}/release_notes.md (100%) rename {firmware => src}/wiring.cpp (100%) diff --git a/firmware/examples/AnalogOutput/AnalogOutput.ino b/examples/AnalogOutput/AnalogOutput.ino similarity index 98% rename from firmware/examples/AnalogOutput/AnalogOutput.ino rename to examples/AnalogOutput/AnalogOutput.ino index df22700..57b7cc2 100644 --- a/firmware/examples/AnalogOutput/AnalogOutput.ino +++ b/examples/AnalogOutput/AnalogOutput.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; // Example showing how to use FastLED color functions diff --git a/firmware/examples/Multiple/ArrayOfLedArrays/ArrayOfLedArrays.ino b/examples/ArrayOfLedArrays/ArrayOfLedArrays.ino similarity index 97% rename from firmware/examples/Multiple/ArrayOfLedArrays/ArrayOfLedArrays.ino rename to examples/ArrayOfLedArrays/ArrayOfLedArrays.ino index ff157d1..78706a3 100644 --- a/firmware/examples/Multiple/ArrayOfLedArrays/ArrayOfLedArrays.ino +++ b/examples/ArrayOfLedArrays/ArrayOfLedArrays.ino @@ -3,7 +3,7 @@ // different pins, each strip getting its own CRGB array to be played with, only this time they're going // to be all parts of an array of arrays. -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define NUM_STRIPS 3 diff --git a/firmware/examples/Blink/Blink.ino b/examples/Blink/Blink.ino similarity index 98% rename from firmware/examples/Blink/Blink.ino rename to examples/Blink/Blink.ino index 5932fba..8e53292 100644 --- a/firmware/examples/Blink/Blink.ino +++ b/examples/Blink/Blink.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; // How many leds in your strip? diff --git a/firmware/examples/ColorPalette/ColorPalette.ino b/examples/ColorPalette/ColorPalette.ino similarity index 99% rename from firmware/examples/ColorPalette/ColorPalette.ino rename to examples/ColorPalette/ColorPalette.ino index de1d71f..346c0e6 100644 --- a/firmware/examples/ColorPalette/ColorPalette.ino +++ b/examples/ColorPalette/ColorPalette.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define LED_PIN 5 diff --git a/firmware/examples/ColorTemperature/ColorTemperature.ino b/examples/ColorTemperature/ColorTemperature.ino similarity index 99% rename from firmware/examples/ColorTemperature/ColorTemperature.ino rename to examples/ColorTemperature/ColorTemperature.ino index 7327fe2..11c7bc5 100644 --- a/firmware/examples/ColorTemperature/ColorTemperature.ino +++ b/examples/ColorTemperature/ColorTemperature.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define LED_PIN 3 diff --git a/firmware/examples/Cylon/Cylon.ino b/examples/Cylon/Cylon.ino similarity index 98% rename from firmware/examples/Cylon/Cylon.ino rename to examples/Cylon/Cylon.ino index f342518..862795b 100644 --- a/firmware/examples/Cylon/Cylon.ino +++ b/examples/Cylon/Cylon.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; // How many leds in your strip? diff --git a/firmware/examples/DemoReel100/DemoReel100.ino b/examples/DemoReel100/DemoReel100.ino similarity index 99% rename from firmware/examples/DemoReel100/DemoReel100.ino rename to examples/DemoReel100/DemoReel100.ino index 92532c0..d25756d 100644 --- a/firmware/examples/DemoReel100/DemoReel100.ino +++ b/examples/DemoReel100/DemoReel100.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; // FastLED "100-lines-of-code" demo reel, showing just a few diff --git a/firmware/examples/Fire2012/Fire2012.ino b/examples/Fire2012/Fire2012.ino similarity index 99% rename from firmware/examples/Fire2012/Fire2012.ino rename to examples/Fire2012/Fire2012.ino index da13c2c..888df00 100644 --- a/firmware/examples/Fire2012/Fire2012.ino +++ b/examples/Fire2012/Fire2012.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define LED_PIN 5 diff --git a/firmware/examples/Fire2012WithPalette/Fire2012WithPalette.ino b/examples/Fire2012WithPalette/Fire2012WithPalette.ino similarity index 99% rename from firmware/examples/Fire2012WithPalette/Fire2012WithPalette.ino rename to examples/Fire2012WithPalette/Fire2012WithPalette.ino index 286eebc..2d1ab72 100644 --- a/firmware/examples/Fire2012WithPalette/Fire2012WithPalette.ino +++ b/examples/Fire2012WithPalette/Fire2012WithPalette.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define LED_PIN 5 diff --git a/firmware/examples/FirstLight/FirstLight.ino b/examples/FirstLight/FirstLight.ino similarity index 99% rename from firmware/examples/FirstLight/FirstLight.ino rename to examples/FirstLight/FirstLight.ino index fb7b794..c45aac3 100644 --- a/firmware/examples/FirstLight/FirstLight.ino +++ b/examples/FirstLight/FirstLight.ino @@ -3,7 +3,7 @@ // Use if you want to force non-accelerated pin access (hint: you really don't, it breaks lots of things) // #define FASTLED_FORCE_SOFTWARE_SPI // #define FASTLED_FORCE_SOFTWARE_PINS -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; /////////////////////////////////////////////////////////////////////////////////////////// diff --git a/firmware/examples/Multiple/MirroringSample/MirroringSample.ino b/examples/MirroringSample/MirroringSample.ino similarity index 98% rename from firmware/examples/Multiple/MirroringSample/MirroringSample.ino rename to examples/MirroringSample/MirroringSample.ino index db6b77d..ce1ad05 100644 --- a/firmware/examples/Multiple/MirroringSample/MirroringSample.ino +++ b/examples/MirroringSample/MirroringSample.ino @@ -2,7 +2,7 @@ // using multiple controllers. In this example, we're going to set up four NEOPIXEL strips on four // different pins, and show the same thing on all four of them, a simple bouncing dot/cyclon type pattern -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define NUM_LEDS_PER_STRIP 60 diff --git a/firmware/examples/Multiple/MultiArrays/MultiArrays.ino b/examples/MultiArrays/MultiArrays.ino similarity index 98% rename from firmware/examples/Multiple/MultiArrays/MultiArrays.ino rename to examples/MultiArrays/MultiArrays.ino index 9ce2764..ff00c10 100644 --- a/firmware/examples/Multiple/MultiArrays/MultiArrays.ino +++ b/examples/MultiArrays/MultiArrays.ino @@ -2,7 +2,7 @@ // using multiple controllers. In this example, we're going to set up four NEOPIXEL strips on three // different pins, each strip getting its own CRGB array to be played with -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define NUM_LEDS_PER_STRIP 60 diff --git a/firmware/examples/Multiple/MultipleStripsInOneArray/MultipleStripsInOneArray.ino b/examples/MultipleStripsInOneArray/MultipleStripsInOneArray.ino similarity index 97% rename from firmware/examples/Multiple/MultipleStripsInOneArray/MultipleStripsInOneArray.ino rename to examples/MultipleStripsInOneArray/MultipleStripsInOneArray.ino index 39600b8..fdebc9a 100644 --- a/firmware/examples/Multiple/MultipleStripsInOneArray/MultipleStripsInOneArray.ino +++ b/examples/MultipleStripsInOneArray/MultipleStripsInOneArray.ino @@ -2,7 +2,7 @@ // using multiple controllers. In this example, we're going to set up four NEOPIXEL strips on three // different pins, each strip will be referring to a different part of the single led array -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define NUM_STRIPS 3 diff --git a/firmware/examples/Noise/Noise.ino b/examples/Noise/Noise.ino similarity index 100% rename from firmware/examples/Noise/Noise.ino rename to examples/Noise/Noise.ino diff --git a/firmware/examples/NoisePlayground/NoisePlayground.ino b/examples/NoisePlayground/NoisePlayground.ino similarity index 98% rename from firmware/examples/NoisePlayground/NoisePlayground.ino rename to examples/NoisePlayground/NoisePlayground.ino index 875ad5a..b8807f2 100644 --- a/firmware/examples/NoisePlayground/NoisePlayground.ino +++ b/examples/NoisePlayground/NoisePlayground.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define kMatrixWidth 16 diff --git a/firmware/examples/NoisePlusPalette/NoisePlusPalette.ino b/examples/NoisePlusPalette/NoisePlusPalette.ino similarity index 100% rename from firmware/examples/NoisePlusPalette/NoisePlusPalette.ino rename to examples/NoisePlusPalette/NoisePlusPalette.ino diff --git a/firmware/examples/Multiple/OctoWS2811Demo/OctoWS2811Demo.ino b/examples/OctoWS2811Demo/OctoWS2811Demo.ino similarity index 100% rename from firmware/examples/Multiple/OctoWS2811Demo/OctoWS2811Demo.ino rename to examples/OctoWS2811Demo/OctoWS2811Demo.ino diff --git a/firmware/examples/Ports/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino b/examples/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino similarity index 99% rename from firmware/examples/Ports/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino rename to examples/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino index cf2a0fd..2946510 100644 --- a/firmware/examples/Ports/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino +++ b/examples/PJRCSpectrumAnalyzer/PJRCSpectrumAnalyzer.ino @@ -13,7 +13,7 @@ #define USE_OCTOWS2811 #include -#include "FastLED/FastLED.h" +#include "FastLED.h" #include #include #include diff --git a/firmware/examples/Multiple/ParallelOutputDemo/ParallelOutputDemo.ino b/examples/ParallelOutputDemo/ParallelOutputDemo.ino similarity index 100% rename from firmware/examples/Multiple/ParallelOutputDemo/ParallelOutputDemo.ino rename to examples/ParallelOutputDemo/ParallelOutputDemo.ino diff --git a/firmware/examples/Pintest/Pintest.ino b/examples/Pintest/Pintest.ino similarity index 100% rename from firmware/examples/Pintest/Pintest.ino rename to examples/Pintest/Pintest.ino diff --git a/firmware/examples/RGBCalibrate/RGBCalibrate.ino b/examples/RGBCalibrate/RGBCalibrate.ino similarity index 99% rename from firmware/examples/RGBCalibrate/RGBCalibrate.ino rename to examples/RGBCalibrate/RGBCalibrate.ino index f419ec5..d2e3a99 100644 --- a/firmware/examples/RGBCalibrate/RGBCalibrate.ino +++ b/examples/RGBCalibrate/RGBCalibrate.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; diff --git a/firmware/examples/SmartMatrix/SmartMatrix.ino b/examples/SmartMatrix/SmartMatrix.ino similarity index 100% rename from firmware/examples/SmartMatrix/SmartMatrix.ino rename to examples/SmartMatrix/SmartMatrix.ino diff --git a/firmware/examples/XYMatrix/XYMatrix.ino b/examples/XYMatrix/XYMatrix.ino similarity index 99% rename from firmware/examples/XYMatrix/XYMatrix.ino rename to examples/XYMatrix/XYMatrix.ino index c92e25f..b599eee 100644 --- a/firmware/examples/XYMatrix/XYMatrix.ino +++ b/examples/XYMatrix/XYMatrix.ino @@ -1,4 +1,4 @@ -#include "FastLED/FastLED.h" +#include "FastLED.h" FASTLED_USING_NAMESPACE; #define LED_PIN 3 diff --git a/firmware/docs/.Doxyfile.swp b/firmware/docs/.Doxyfile.swp deleted file mode 100644 index d223ba7d3880f3ba9ff14fdd3d329572109310e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126976 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
  • *z%=G` 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

    %bzq1Cb9xum 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 R(g?aXVTY!oZ)xAY{|`H!2>1X1 diff --git a/firmware/docs/Doxyfile b/firmware/docs/Doxyfile deleted file mode 100644 index 71d7b10..0000000 --- a/firmware/docs/Doxyfile +++ /dev/null @@ -1,2331 +0,0 @@ -# Doxyfile 1.8.8 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a double hash (##) is considered a comment and is placed in -# front of the TAG it is preceding. -# -# All text after a single hash (#) is considered a comment and will be ignored. -# The format is: -# TAG = value [value, ...] -# For lists, items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (\" \"). - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all text -# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv -# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv -# for the list of possible encodings. -# The default value is: UTF-8. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by -# double-quotes, unless you are using Doxywizard) that should identify the -# project for which the documentation is generated. This name is used in the -# title of most generated pages and in a few other places. -# The default value is: My Project. - -PROJECT_NAME = "FastLED" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -# could be handy for archiving the generated documentation or if some version -# control system is used. - -PROJECT_NUMBER = 3.1 - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer a -# quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = - -# With the PROJECT_LOGO tag one can specify an logo or icon that is included in -# the documentation. The maximum height of the logo should not exceed 55 pixels -# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo -# to the output directory. - -PROJECT_LOGO = - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path -# into which the generated documentation will be written. If a relative path is -# entered, it will be relative to the location where doxygen was started. If -# left blank the current directory will be used. - -OUTPUT_DIRECTORY = - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this -# option can be useful when feeding doxygen a huge amount of source files, where -# putting all generated files in the same directory would otherwise causes -# performance problems for the file system. -# The default value is: NO. - -CREATE_SUBDIRS = NO - -# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII -# characters to appear in the names of generated files. If set to NO, non-ASCII -# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode -# U+3044. -# The default value is: NO. - -ALLOW_UNICODE_NAMES = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. -# The default value is: English. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member -# descriptions after the members that are listed in the file and class -# documentation (similar to Javadoc). Set to NO to disable this. -# The default value is: YES. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief -# description of a member or function before the detailed description -# -# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. -# The default value is: YES. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator that is -# used to form the text in various listings. Each string in this list, if found -# as the leading text of the brief description, will be stripped from the text -# and the result, after processing the whole list, is used as the annotated -# text. Otherwise, the brief description is used as-is. If left blank, the -# following values are used ($name is automatically replaced with the name of -# the entity):The $name class, The $name widget, The $name file, is, provides, -# specifies, contains, represents, a, an and the. - -ABBREVIATE_BRIEF = - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# doxygen will generate a detailed section even if there is only a brief -# description. -# The default value is: NO. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. -# The default value is: NO. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path -# before files name in the file list and in the header files. If set to NO the -# shortest path that makes the file name unique will be used -# The default value is: YES. - -FULL_PATH_NAMES = YES - -# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. -# Stripping is only done if one of the specified strings matches the left-hand -# part of the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the path to -# strip. -# -# Note that you can specify absolute paths here, but also relative paths, which -# will be relative from the directory where doxygen is started. -# This tag requires that the tag FULL_PATH_NAMES is set to YES. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the -# path mentioned in the documentation of a class, which tells the reader which -# header file to include in order to use a class. If left blank only the name of -# the header file containing the class definition is used. Otherwise one should -# specify the list of include paths that are normally passed to the compiler -# using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -# less readable) file names. This can be useful is your file systems doesn't -# support long names like on DOS, Mac, or CD-ROM. -# The default value is: NO. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the -# first line (until the first dot) of a Javadoc-style comment as the brief -# description. If set to NO, the Javadoc-style will behave just like regular Qt- -# style comments (thus requiring an explicit @brief command for a brief -# description.) -# The default value is: NO. - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first -# line (until the first dot) of a Qt-style comment as the brief description. If -# set to NO, the Qt-style will behave just like regular Qt-style comments (thus -# requiring an explicit \brief command for a brief description.) -# The default value is: NO. - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a -# multi-line C++ special comment block (i.e. a block of //! or /// comments) as -# a brief description. This used to be the default behavior. The new default is -# to treat a multi-line C++ comment block as a detailed description. Set this -# tag to YES if you prefer the old behavior instead. -# -# Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. -# The default value is: NO. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -# documentation from any documented member that it re-implements. -# The default value is: YES. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a -# new page for each member. If set to NO, the documentation of a member will be -# part of the file/class/namespace that contains it. -# The default value is: NO. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen -# uses this value to replace tabs by spaces in code fragments. -# Minimum value: 1, maximum value: 16, default value: 4. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that act as commands in -# the documentation. An alias has the form: -# name=value -# For example adding -# "sideeffect=@par Side Effects:\n" -# will allow you to put the command \sideeffect (or @sideeffect) in the -# documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding "class=itcl::class" -# will allow you to use the command class in the itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. For -# instance, some of the names that are used will be different. The list of all -# members will be omitted, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or -# Python sources only. Doxygen will then generate output that is more tailored -# for that language. For instance, namespaces will be presented as packages, -# qualified scopes will look different, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources. Doxygen will then generate output that is tailored for Fortran. -# The default value is: NO. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for VHDL. -# The default value is: NO. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given -# extension. Doxygen has a built-in mapping, but you can override or extend it -# using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: -# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: -# Fortran. In the later case the parser tries to guess whether the code is fixed -# or free formatted code, this is the default for Fortran type files), VHDL. For -# instance to make doxygen treat .inc files as Fortran files (default is PHP), -# and .f files as C (default is Fortran), use: inc=Fortran f=C. -# -# Note For files without extension you can use no_extension as a placeholder. -# -# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments -# according to the Markdown format, which allows for more readable -# documentation. See http://daringfireball.net/projects/markdown/ for details. -# The output of markdown processing is further processed by doxygen, so you can -# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in -# case of backward compatibilities issues. -# The default value is: YES. - -MARKDOWN_SUPPORT = YES - -# When enabled doxygen tries to link words that correspond to documented -# classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by by putting a % sign in front of the word -# or globally by setting AUTOLINK_SUPPORT to NO. -# The default value is: YES. - -AUTOLINK_SUPPORT = YES - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should set this -# tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); -# versus func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. -# The default value is: NO. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. -# The default value is: NO. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen -# will parse them like normal C++ but will assume all classes use public instead -# of private inheritance when no explicit protection keyword is present. -# The default value is: NO. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate -# getter and setter methods for a property. Setting this option to YES will make -# doxygen to replace the get and set methods by a property in the documentation. -# This will only work if the methods are indeed getting or setting a simple -# type. If this is not the case, or you want to show the methods anyway, you -# should set this option to NO. -# The default value is: YES. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. -# The default value is: NO. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES to allow class member groups of the same type -# (for instance a group of public functions) to be put as a subgroup of that -# type (e.g. under the Public Functions section). Set it to NO to prevent -# subgrouping. Alternatively, this can be done per class using the -# \nosubgrouping command. -# The default value is: YES. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions -# are shown inside the group in which they are included (e.g. using \ingroup) -# instead of on a separate page (for HTML and Man pages) or section (for LaTeX -# and RTF). -# -# Note that this feature does not work in combination with -# SEPARATE_MEMBER_PAGES. -# The default value is: NO. - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions -# with only public data fields or simple typedef fields will be shown inline in -# the documentation of the scope in which they are defined (i.e. file, -# namespace, or group documentation), provided this scope is documented. If set -# to NO, structs, classes, and unions are shown on a separate page (for HTML and -# Man pages) or section (for LaTeX and RTF). -# The default value is: NO. - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or -# enum is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically be -# useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. -# The default value is: NO. - -TYPEDEF_HIDES_STRUCT = NO - -# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This -# cache is used to resolve symbols given their name and scope. Since this can be -# an expensive process and often the same symbol appears multiple times in the -# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small -# doxygen will become slower. If the cache is too large, memory is wasted. The -# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range -# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 -# symbols. At the end of a run doxygen will report the cache usage and suggest -# the optimal cache size from a speed point of view. -# Minimum value: 0, maximum value: 9, default value: 0. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. Private -# class members and static file members will be hidden unless the -# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. -# Note: This will also disable the warnings about undocumented members that are -# normally produced when WARNINGS is set to YES. -# The default value is: NO. - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will -# be included in the documentation. -# The default value is: NO. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal -# scope will be included in the documentation. -# The default value is: NO. - -EXTRACT_PACKAGE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file will be -# included in the documentation. -# The default value is: NO. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO -# only classes defined in header files are included. Does not have any effect -# for Java sources. -# The default value is: YES. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local methods, -# which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO only methods in the interface are -# included. -# The default value is: NO. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base name of -# the file that contains the anonymous namespace. By default anonymous namespace -# are hidden. -# The default value is: NO. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -# undocumented members inside documented classes or files. If set to NO these -# members will be included in the various overviews, but no documentation -# section is generated. This option has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. If set -# to NO these classes will be included in the various overviews. This option has -# no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO these declarations will be -# included in the documentation. -# The default value is: NO. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO these -# blocks will be appended to the function's detailed documentation block. -# The default value is: NO. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation that is typed after a -# \internal command is included. If the tag is set to NO then the documentation -# will be excluded. Set it to YES to include the internal documentation. -# The default value is: NO. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. -# The default value is: system dependent. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES the -# scope will be hidden. -# The default value is: NO. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -# the files that are included by a file in the documentation of that file. -# The default value is: YES. - -SHOW_INCLUDE_FILES = YES - -# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -# grouped member an include statement to the documentation, telling the reader -# which file to include in order to use the member. -# The default value is: NO. - -SHOW_GROUPED_MEMB_INC = NO - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include -# files with double quotes in the documentation rather than with sharp brackets. -# The default value is: NO. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -# documentation for inline members. -# The default value is: YES. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the -# (detailed) documentation of file and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. -# The default value is: YES. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -# descriptions of file, namespace and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. Note that -# this will also influence the order of the classes in the class list. -# The default value is: NO. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the -# (brief and detailed) documentation of class members so that constructors and -# destructors are listed first. If set to NO the constructors will appear in the -# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -# member documentation. -# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -# detailed member documentation. -# The default value is: NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy -# of group names into alphabetical order. If set to NO the group names will -# appear in their defined order. -# The default value is: NO. - -SORT_GROUP_NAMES = YES - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by -# fully-qualified names, including namespaces. If set to NO, the class list will -# be sorted only by class name, not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the alphabetical -# list. -# The default value is: NO. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper -# type resolution of all parameters of a function it will reject a match between -# the prototype and the implementation of a member function even if there is -# only one candidate or it is obvious which candidate to choose by doing a -# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still -# accept a match between prototype and implementation in such cases. -# The default value is: NO. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the -# todo list. This list is created by putting \todo commands in the -# documentation. -# The default value is: YES. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the -# test list. This list is created by putting \test commands in the -# documentation. -# The default value is: YES. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug -# list. This list is created by putting \bug commands in the documentation. -# The default value is: YES. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) -# the deprecated list. This list is created by putting \deprecated commands in -# the documentation. -# The default value is: YES. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional documentation -# sections, marked by \if ... \endif and \cond -# ... \endcond blocks. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the -# initial value of a variable or macro / define can have for it to appear in the -# documentation. If the initializer consists of more lines than specified here -# it will be hidden. Use a value of 0 to hide initializers completely. The -# appearance of the value of individual variables and macros / defines can be -# controlled using \showinitializer or \hideinitializer command in the -# documentation regardless of this setting. -# Minimum value: 0, maximum value: 10000, default value: 30. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES the list -# will mention the files that were used to generate the documentation. -# The default value is: YES. - -SHOW_USED_FILES = YES - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This -# will remove the Files entry from the Quick Index and from the Folder Tree View -# (if specified). -# The default value is: YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces -# page. This will remove the Namespaces entry from the Quick Index and from the -# Folder Tree View (if specified). -# The default value is: YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the -# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -# by doxygen. Whatever the program writes to standard output is used as the file -# version. For an example see the documentation. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. To create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. You can -# optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. -# -# Note that if you run doxygen from a directory containing a file called -# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -# tag is left empty. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -# the reference definitions. This must be a list of .bib files. The .bib -# extension is automatically appended if omitted. This requires the bibtex tool -# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. -# For LaTeX the style of the bibliography can be controlled using -# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. See also \cite for info how to create references. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# Configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated to -# standard output by doxygen. If QUIET is set to YES this implies that the -# messages are off. -# The default value is: NO. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES -# this implies that the warnings are on. -# -# Tip: Turn warnings on while writing the documentation. -# The default value is: YES. - -WARNINGS = YES - -# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate -# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag -# will automatically be disabled. -# The default value is: YES. - -WARN_IF_UNDOCUMENTED = YES - -# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. -# The default value is: YES. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that -# are documented, but have no documentation for their parameters or return -# value. If set to NO doxygen will only warn about wrong or incomplete parameter -# documentation, but not about the absence of documentation. -# The default value is: NO. - -WARN_NO_PARAMDOC = NO - -# The WARN_FORMAT tag determines the format of the warning messages that doxygen -# can produce. The string should contain the $file, $line, and $text tags, which -# will be replaced by the file and line number from which the warning originated -# and the warning text. Optionally the format may contain $version, which will -# be replaced by the version of the file (if it could be obtained via -# FILE_VERSION_FILTER) -# The default value is: $file:$line: $text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning and error -# messages should be written. If left blank the output is written to standard -# error (stderr). - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# Configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag is used to specify the files and/or directories that contain -# documented source files. You may enter file names like myfile.cpp or -# directories like /usr/src/myproject. Separate the files or directories with -# spaces. -# Note: If this tag is empty the current directory is searched. - -INPUT = - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: http://www.gnu.org/software/libiconv) for the list of -# possible encodings. -# The default value is: UTF-8. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank the -# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, -# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, -# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, -# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, -# *.qsf, *.as and *.js. - -FILE_PATTERNS = - -# The RECURSIVE tag can be used to specify whether or not subdirectories should -# be searched for input files as well. -# The default value is: NO. - -RECURSIVE = NO - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. -# The default value is: NO. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or directories -# that contain example code fragments that are included (see the \include -# command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank all -# files are included. - -EXAMPLE_PATTERNS = - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude commands -# irrespective of the value of the RECURSIVE tag. -# The default value is: NO. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or directories -# that contain images that are to be included in the documentation (see the -# \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command: -# -# -# -# where is the value of the INPUT_FILTER tag, and is the -# name of an input file. Doxygen will then use the output that the filter -# program writes to standard output. If FILTER_PATTERNS is specified, this tag -# will be ignored. -# -# Note that the filter must not add or remove lines; it is applied before the -# code is scanned, but not when the output code is generated. If lines are added -# or removed, the anchors will not be placed correctly. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: pattern=filter -# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how -# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -# patterns match the file name, INPUT_FILTER is applied. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER ) will also be used to filter the input files that are used for -# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -# The default value is: NO. - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and -# it is also possible to disable source filtering for a specific pattern using -# *.ext= (so without naming a filter). -# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. - -FILTER_SOURCE_PATTERNS = - -# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that -# is part of the input, its contents will be placed on the main page -# (index.html). This can be useful if you have a project on for instance GitHub -# and want to reuse the introduction page also for the doxygen output. - -USE_MDFILE_AS_MAINPAGE = - -#--------------------------------------------------------------------------- -# Configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will be -# generated. Documented entities will be cross-referenced with these sources. -# -# Note: To get rid of all source code in the generated output, make sure that -# also VERBATIM_HEADERS is set to NO. -# The default value is: NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. -# The default value is: NO. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any -# special comment blocks from generated source code fragments. Normal C, C++ and -# Fortran comments will always remain visible. -# The default value is: YES. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -# function all documented functions referencing it will be listed. -# The default value is: NO. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES then for each documented function -# all documented entities called/used by that function will be listed. -# The default value is: NO. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES, then the hyperlinks from functions in REFERENCES_RELATION and -# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will -# link to the documentation. -# The default value is: YES. - -REFERENCES_LINK_SOURCE = YES - -# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the -# source code will show a tooltip with additional information such as prototype, -# brief description and links to the definition and documentation. Since this -# will make the HTML file larger and loading of large files a bit slower, you -# can opt to disable this feature. -# The default value is: YES. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -SOURCE_TOOLTIPS = YES - -# If the USE_HTAGS tag is set to YES then the references to source code will -# point to the HTML generated by the htags(1) tool instead of doxygen built-in -# source browser. The htags tool is part of GNU's global source tagging system -# (see http://www.gnu.org/software/global/global.html). You will need version -# 4.8.6 or higher. -# -# To use it do the following: -# - Install the latest version of global -# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -# - Make sure the INPUT points to the root of the source tree -# - Run doxygen as normal -# -# Doxygen will invoke htags (and that will in turn invoke gtags), so these -# tools must be available from the command line (i.e. in the search path). -# -# The result: instead of the source browser generated by doxygen, the links to -# source code will now point to the output of htags. -# The default value is: NO. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a -# verbatim copy of the header file for each class for which an include is -# specified. Set to NO to disable this. -# See also: Section \class. -# The default value is: YES. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# Configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all -# compounds will be generated. Enable this if the project contains a lot of -# classes, structs, unions or interfaces. -# The default value is: YES. - -ALPHABETICAL_INDEX = YES - -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output -# The default value is: YES. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a -# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of -# it. -# The default directory is: html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_OUTPUT = html/docs/3.1 - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -# generated HTML page (for example: .htm, .php, .asp). -# The default value is: .html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a user-defined HTML header file for -# each generated HTML page. If the tag is left blank doxygen will generate a -# standard header. -# -# To get valid HTML the header file that includes any scripts and style sheets -# that doxygen needs, which is dependent on the configuration options used (e.g. -# the setting GENERATE_TREEVIEW). It is highly recommended to start with a -# default header using -# doxygen -w html new_header.html new_footer.html new_stylesheet.css -# YourConfigFile -# and then modify the file new_header.html. See also section "Doxygen usage" -# for information on how to generate the default header that doxygen normally -# uses. -# Note: The header is subject to change so you typically have to regenerate the -# default header when upgrading to a newer version of doxygen. For a description -# of the possible markers and block names see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each -# generated HTML page. If the tag is left blank doxygen will generate a standard -# footer. See HTML_HEADER for more information on how to generate a default -# footer and what special commands can be used inside the footer. See also -# section "Doxygen usage" for information on how to generate the default footer -# that doxygen normally uses. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style -# sheet that is used by each HTML page. It can be used to fine-tune the look of -# the HTML output. If left blank doxygen will generate a default style sheet. -# See also section "Doxygen usage" for information on how to generate the style -# sheet that doxygen normally uses. -# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -# it is more robust and this tag (HTML_STYLESHEET) will in the future become -# obsolete. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_STYLESHEET = - -# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined -# cascading style sheets that are included after the standard style sheets -# created by doxygen. Using this option one can overrule certain style aspects. -# This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefor more robust against future updates. -# Doxygen will copy the style sheet files to the output directory. -# Note: The order of the extra stylesheet files is of importance (e.g. the last -# stylesheet in the list overrules the setting of the previous ones in the -# list). For an example see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_STYLESHEET = - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that the -# files will be copied as-is; there are no commands or markers available. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the stylesheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see -# http://en.wikipedia.org/wiki/Hue for more information. For instance the value -# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 -# purple, and 360 is red again. -# Minimum value: 0, maximum value: 359, default value: 220. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A -# value of 255 will produce the most vivid colors. -# Minimum value: 0, maximum value: 255, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the -# luminance component of the colors in the HTML output. Values below 100 -# gradually make the output lighter, whereas values above 100 make the output -# darker. The value divided by 100 is the actual gamma applied, so 80 represents -# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not -# change the gamma. -# Minimum value: 40, maximum value: 240, default value: 80. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_SECTIONS = NO - -# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries -# shown in the various tree structured indices initially; the user can expand -# and collapse entries dynamically later on. Doxygen will expand the tree to -# such a level that at most the specified number of entries are visible (unless -# a fully collapsed tree already exceeds this amount). So setting the number of -# entries 1 will produce a full collapsed tree by default. 0 is a special value -# representing an infinite number of entries and will result in a full expanded -# tree by default. -# Minimum value: 0, maximum value: 9999, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_INDEX_NUM_ENTRIES = 100 - -# If the GENERATE_DOCSET tag is set to YES, additional index files will be -# generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: http://developer.apple.com/tools/xcode/), introduced with -# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_DOCSET = NO - -# This tag determines the name of the docset feed. A documentation feed provides -# an umbrella under which multiple documentation sets from a single provider -# (such as a company or product suite) can be grouped. -# The default value is: Doxygen generated docs. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# This tag specifies a string that should uniquely identify the documentation -# set bundle. This should be a reverse domain-name style string, e.g. -# com.mycompany.MyDocSet. Doxygen will append .docset to the name. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. -# The default value is: org.doxygen.Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -# The default value is: Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. -# -# The HTML Help Workshop contains a compiler that can convert all HTML output -# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML -# files are now used as the Windows 98 help format, and will replace the old -# Windows help format (.hlp) on all Windows platforms in the future. Compressed -# HTML files also contain an index, a table of contents, and you can search for -# words in the documentation. The HTML workshop also contains a viewer for -# compressed HTML files. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_HTMLHELP = NO - -# The CHM_FILE tag can be used to specify the file name of the resulting .chm -# file. You can add a path in front of the file if the result should not be -# written to the html output directory. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_FILE = - -# The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler ( hhc.exe). If non-empty -# doxygen will try to run the HTML help compiler on the generated index.hhp. -# The file has to be specified with full path. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -HHC_LOCATION = - -# The GENERATE_CHI flag controls if a separate .chi index file is generated ( -# YES) or that it should be included in the master .chm file ( NO). -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -GENERATE_CHI = NO - -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) -# and project file content. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_INDEX_ENCODING = - -# The BINARY_TOC flag controls whether a binary table of contents is generated ( -# YES) or a normal table of contents ( NO) in the .chm file. Furthermore it -# enables the Previous and Next buttons. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members to -# the table of contents of the HTML help documentation and to the tree view. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that -# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help -# (.qch) of the generated HTML documentation. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify -# the file name of the resulting .qch file. The path specified is relative to -# the HTML output folder. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -# Project output. For more information please see Qt Help Project / Namespace -# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -# Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- -# folders). -# The default value is: doc. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_VIRTUAL_FOLDER = doc - -# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -# filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -# filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's filter section matches. Qt Help Project / Filter Attributes (see: -# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_SECT_FILTER_ATTRS = - -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be -# generated, together with the HTML files, they form an Eclipse help plugin. To -# install this plugin and make it available under the help contents menu in -# Eclipse, the contents of the directory containing the HTML and XML files needs -# to be copied into the plugins directory of eclipse. The name of the directory -# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. -# After copying Eclipse needs to be restarted before the help appears. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the Eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have this -# name. Each documentation set should have its own identifier. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# If you want full control over the layout of the generated HTML pages it might -# be necessary to disable the index and replace it with your own. The -# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -# of each HTML page. A value of NO enables the index and the value YES disables -# it. Since the tabs in the index contain the same information as the navigation -# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -DISABLE_INDEX = NO - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. If the tag -# value is set to YES, a side panel will be generated containing a tree-like -# index structure (just like the one that is generated for HTML Help). For this -# to work a browser that supports JavaScript, DHTML, CSS and frames is required -# (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_TREEVIEW = NO - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that -# doxygen will group on one line in the generated HTML documentation. -# -# Note that a value of 0 will completely suppress the enum values from appearing -# in the overview section. -# Minimum value: 0, maximum value: 20, default value: 4. -# This tag requires that the tag GENERATE_HTML is set to YES. - -ENUM_VALUES_PER_LINE = 4 - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used -# to set the initial width (in pixels) of the frame in which the tree is shown. -# Minimum value: 0, maximum value: 1500, default value: 250. -# This tag requires that the tag GENERATE_HTML is set to YES. - -TREEVIEW_WIDTH = 250 - -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to -# external symbols imported via tag files in a separate window. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of LaTeX formulas included as images in -# the HTML documentation. When you change the font size after a successful -# doxygen run you need to manually remove any form_*.png images from the HTML -# output directory to force them to be regenerated. -# Minimum value: 8, maximum value: 50, default value: 10. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using prerendered bitmaps. Use this if you do not have LaTeX -# installed or if you want to formulas look prettier in the HTML output. When -# enabled you may also need to install MathJax separately and configure the path -# to it using the MATHJAX_RELPATH option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -USE_MATHJAX = NO - -# When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. -# Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. -# The default value is: HTML-CSS. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_FORMAT = HTML-CSS - -# When MathJax is enabled you need to specify the location relative to the HTML -# output directory using the MATHJAX_RELPATH option. The destination directory -# should contain the MathJax.js script. For instance, if the mathjax directory -# is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax -# Content Delivery Network so you can quickly see the result without installing -# MathJax. However, it is strongly recommended to install a local copy of -# MathJax from http://www.mathjax.org before deployment. -# The default value is: http://cdn.mathjax.org/mathjax/latest. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest - -# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -# extension names that should be enabled during MathJax rendering. For example -# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_EXTENSIONS = - -# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces -# of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -# example see the documentation. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_CODEFILE = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for -# the HTML output. The underlying search engine uses javascript and DHTML and -# should work on any modern browser. Note that when using HTML help -# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) -# there is already a search function so this one should typically be disabled. -# For large projects the javascript based search engine can be slow, then -# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to -# search using the keyboard; to jump to the search box use + S -# (what the is depends on the OS and browser, but it is typically -# , /