Changes in / [fa7c03a:fb7db6b]


Ignore:
Files:
5 added
1 deleted
19 edited

Legend:

Unmodified
Added
Removed
  • Makefile

    rfa7c03a rfb7db6b  
    11WAFCMD=python waf
     2WAFURL=https://waf.io/waf-1.8.22
    23
    34SOX=sox
     
    1213
    1314getwaf:
    14         curl https://waf.io/waf-1.8.20 > waf
     15        @( which wget > /dev/null && wget -qO waf $(WAFURL) ) || ( which curl > /dev/null && curl $(WAFURL) > waf )
    1516        @chmod +x waf
    1617
  • appveyor.yml

    rfa7c03a rfb7db6b  
    5050
    5151before_build:
    52   - curl -fsS -o waf https://waf.io/waf-1.8.20
     52  - curl -fsS -o waf https://waf.io/waf-1.8.22
    5353  - curl -fsS -o waf.bat https://raw.githubusercontent.com/waf-project/waf/master/utils/waf.bat
    5454
  • doc/full.cfg

    rfa7c03a rfb7db6b  
    1 # Doxyfile 1.8.5
     1# Doxyfile 1.8.8
    22
    33# This file describes the settings to be used by the documentation system
     
    7171CREATE_SUBDIRS         = NO
    7272
     73# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
     74# characters to appear in the names of generated files. If set to NO, non-ASCII
     75# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
     76# U+3044.
     77# The default value is: NO.
     78
     79ALLOW_UNICODE_NAMES    = NO
     80
    7381# The OUTPUT_LANGUAGE tag is used to specify the language in which all
    7482# documentation generated by doxygen is written. Doxygen will use this
    7583# information to generate all constant output in the proper language.
    76 # Possible values are: Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-
    77 # Traditional, Croatian, Czech, Danish, Dutch, English, Esperanto, Farsi,
    78 # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en,
    79 # Korean, Korean-en, Latvian, Norwegian, Macedonian, Persian, Polish,
    80 # Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish,
    81 # Turkish, Ukrainian and Vietnamese.
     84# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
     85# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
     86# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
     87# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
     88# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
     89# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
     90# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
     91# Ukrainian and Vietnamese.
    8292# The default value is: English.
    8393
     
    260270# using this tag. The format is ext=language, where ext is a file extension, and
    261271# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
    262 # C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make
    263 # doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
    264 # (default is Fortran), use: inc=Fortran f=C.
     272# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
     273# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
     274# Fortran. In the later case the parser tries to guess whether the code is fixed
     275# or free formatted code, this is the default for Fortran type files), VHDL. For
     276# instance to make doxygen treat .inc files as Fortran files (default is PHP),
     277# and .f files as C (default is Fortran), use: inc=Fortran f=C.
    265278#
    266279# Note For files without extension you can use no_extension as a placeholder.
     
    501514SHOW_INCLUDE_FILES     = YES
    502515
     516# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
     517# grouped member an include statement to the documentation, telling the reader
     518# which file to include in order to use the member.
     519# The default value is: NO.
     520
     521SHOW_GROUPED_MEMB_INC  = NO
     522
    503523# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
    504524# files with double quotes in the documentation rather than with sharp brackets.
     
    522542# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
    523543# descriptions of file, namespace and class members alphabetically by member
    524 # name. If set to NO the members will appear in declaration order.
     544# name. If set to NO the members will appear in declaration order. Note that
     545# this will also influence the order of the classes in the class list.
    525546# The default value is: NO.
    526547
     
    660681# For LaTeX the style of the bibliography can be controlled using
    661682# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
    662 # search path. Do not use file names with spaces, bibtex cannot handle them. See
    663 # also \cite for info how to create references.
     683# search path. See also \cite for info how to create references.
    664684
    665685CITE_BIB_FILES         =
     
    959979
    960980VERBATIM_HEADERS       = YES
     981
     982# If the CLANG_ASSISTED_PARSING tag is set to YES, then doxygen will use the
     983# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
     984# cost of reduced performance. This can be particularly helpful with template
     985# rich C++ code for which doxygen's built-in parser lacks the necessary type
     986# information.
     987# Note: The availability of this option depends on whether or not doxygen was
     988# compiled with the --with-libclang option.
     989# The default value is: NO.
     990
     991CLANG_ASSISTED_PARSING = NO
     992
     993# If clang assisted parsing is enabled you can provide the compiler with command
     994# line options that you would normally use when invoking the compiler. Note that
     995# the include paths will already be set by doxygen for the files and directories
     996# specified with INPUT and INCLUDE_PATH.
     997# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
     998
     999CLANG_OPTIONS          =
    9611000
    9621001#---------------------------------------------------------------------------
     
    10521091HTML_STYLESHEET        =
    10531092
    1054 # The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-
    1055 # defined cascading style sheet that is included after the standard style sheets
     1093# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
     1094# cascading style sheets that are included after the standard style sheets
    10561095# created by doxygen. Using this option one can overrule certain style aspects.
    10571096# This is preferred over using HTML_STYLESHEET since it does not replace the
    10581097# standard style sheet and is therefor more robust against future updates.
    1059 # Doxygen will copy the style sheet file to the output directory. For an example
    1060 # see the documentation.
     1098# Doxygen will copy the style sheet files to the output directory.
     1099# Note: The order of the extra stylesheet files is of importance (e.g. the last
     1100# stylesheet in the list overrules the setting of the previous ones in the
     1101# list). For an example see the documentation.
    10611102# This tag requires that the tag GENERATE_HTML is set to YES.
    10621103
     
    12231264
    12241265# The BINARY_TOC flag controls whether a binary table of contents is generated (
    1225 # YES) or a normal table of contents ( NO) in the .chm file.
     1266# YES) or a normal table of contents ( NO) in the .chm file. Furthermore it
     1267# enables the Previous and Next buttons.
    12261268# The default value is: NO.
    12271269# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
     
    14631505# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
    14641506# implemented using a web server instead of a web client using Javascript. There
    1465 # are two flavours of web server based searching depending on the
    1466 # EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for
    1467 # searching and an index file used by the script. When EXTERNAL_SEARCH is
    1468 # enabled the indexing and searching needs to be provided by external tools. See
    1469 # the section "External Indexing and Searching" for details.
     1507# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
     1508# setting. When disabled, doxygen will generate a PHP script for searching and
     1509# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
     1510# and searching needs to be provided by external tools. See the section
     1511# "External Indexing and Searching" for details.
    14701512# The default value is: NO.
    14711513# This tag requires that the tag SEARCHENGINE is set to YES.
     
    15951637# Note: Only use a user-defined header if you know what you are doing! The
    15961638# following commands have a special meaning inside the header: $title,
    1597 # $datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will
    1598 # replace them by respectively the title of the page, the current date and time,
    1599 # only the current date, the version number of doxygen, the project name (see
    1600 # PROJECT_NAME), or the project number (see PROJECT_NUMBER).
     1639# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
     1640# $projectbrief, $projectlogo. Doxygen will replace $title with the empy string,
     1641# for the replacement values of the other commands the user is refered to
     1642# HTML_HEADER.
    16011643# This tag requires that the tag GENERATE_LATEX is set to YES.
    16021644
     
    16051647# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
    16061648# generated LaTeX document. The footer should contain everything after the last
    1607 # chapter. If it is left blank doxygen will generate a standard footer.
     1649# chapter. If it is left blank doxygen will generate a standard footer. See
     1650# LATEX_HEADER for more information on how to generate a default footer and what
     1651# special commands can be used inside the footer.
    16081652#
    16091653# Note: Only use a user-defined footer if you know what you are doing!
     
    16291673PDF_HYPERLINKS         = YES
    16301674
    1631 # If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
     1675# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
    16321676# the PDF file directly from the LaTeX files. Set this option to YES to get a
    16331677# higher quality PDF documentation.
     
    17551799MAN_EXTENSION          = .3
    17561800
     1801# The MAN_SUBDIR tag determines the name of the directory created within
     1802# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
     1803# MAN_EXTENSION with the initial . removed.
     1804# This tag requires that the tag GENERATE_MAN is set to YES.
     1805
     1806MAN_SUBDIR             =
     1807
    17571808# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
    17581809# will generate one additional man file for each entity documented in the real
     
    17821833XML_OUTPUT             = xml
    17831834
    1784 # The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a
    1785 # validating XML parser to check the syntax of the XML files.
    1786 # This tag requires that the tag GENERATE_XML is set to YES.
    1787 
    1788 XML_SCHEMA             =
    1789 
    1790 # The XML_DTD tag can be used to specify a XML DTD, which can be used by a
    1791 # validating XML parser to check the syntax of the XML files.
    1792 # This tag requires that the tag GENERATE_XML is set to YES.
    1793 
    1794 XML_DTD                =
    1795 
    17961835# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
    17971836# listings (including syntax highlighting and cross-referencing information) to
     
    18201859
    18211860DOCBOOK_OUTPUT         = docbook
     1861
     1862# If the DOCBOOK_PROGRAMLISTING tag is set to YES doxygen will include the
     1863# program listings (including syntax highlighting and cross-referencing
     1864# information) to the DOCBOOK output. Note that enabling this will significantly
     1865# increase the size of the DOCBOOK output.
     1866# The default value is: NO.
     1867# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
     1868
     1869DOCBOOK_PROGRAMLISTING = NO
    18221870
    18231871#---------------------------------------------------------------------------
     
    19401988
    19411989# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
    1942 # remove all refrences to function-like macros that are alone on a line, have an
    1943 # all uppercase name, and do not end with a semicolon. Such function macros are
    1944 # typically used for boiler-plate code, and will confuse the parser if not
     1990# remove all references to function-like macros that are alone on a line, have
     1991# an all uppercase name, and do not end with a semicolon. Such function macros
     1992# are typically used for boiler-plate code, and will confuse the parser if not
    19451993# removed.
    19461994# The default value is: YES.
     
    19622010# section "Linking to external documentation" for more information about the use
    19632011# of tag files.
    1964 # Note: Each tag file must have an unique name (where the name does NOT include
     2012# Note: Each tag file must have a unique name (where the name does NOT include
    19652013# the path). If a tag file is not located in the directory in which doxygen is
    19662014# run, you must also specify the path to the tagfile here.
     
    20222070MSCGEN_PATH            =
    20232071
     2072# You can include diagrams made with dia in doxygen documentation. Doxygen will
     2073# then run dia to produce the diagram and insert it in the documentation. The
     2074# DIA_PATH tag allows you to specify the directory where the dia binary resides.
     2075# If left empty dia is assumed to be found in the default search path.
     2076
     2077DIA_PATH               =
     2078
    20242079# If set to YES, the inheritance and collaboration graphs will hide inheritance
    20252080# and usage relations if the target is undocumented or is not a class.
     
    20332088# Bell Labs. The other options in this section have no effect if this option is
    20342089# set to NO
    2035 # The default value is: NO.
     2090# The default value is: YES.
    20362091
    20372092HAVE_DOT               = NO
     
    20472102DOT_NUM_THREADS        = 0
    20482103
    2049 # When you want a differently looking font n the dot files that doxygen
     2104# When you want a differently looking font in the dot files that doxygen
    20502105# generates you can specify the font name using DOT_FONTNAME. You need to make
    20512106# sure dot is able to find the font, which can be done by putting it in a
     
    21852240# to make the SVG files visible in IE 9+ (other browsers do not have this
    21862241# requirement).
    2187 # Possible values are: png, jpg, gif and svg.
     2242# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
     2243# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
     2244# gif:cairo:gd, gif:gd, gif:gd:gd and svg.
    21882245# The default value is: png.
    21892246# This tag requires that the tag HAVE_DOT is set to YES.
     
    22212278
    22222279MSCFILE_DIRS           =
     2280
     2281# The DIAFILE_DIRS tag can be used to specify one or more directories that
     2282# contain dia files that are included in the documentation (see the \diafile
     2283# command).
     2284
     2285DIAFILE_DIRS           =
     2286
     2287# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
     2288# path where java can find the plantuml.jar file. If left blank, it is assumed
     2289# PlantUML is not used or called during a preprocessing step. Doxygen will
     2290# generate a warning when it encounters a \startuml command in this case and
     2291# will not generate output for the diagram.
     2292# This tag requires that the tag HAVE_DOT is set to YES.
     2293
     2294PLANTUML_JAR_PATH      =
    22232295
    22242296# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
  • doc/web.cfg

    rfa7c03a rfb7db6b  
    1 # Doxyfile 1.8.5
     1# Doxyfile 1.8.8
    22
    33# This file describes the settings to be used by the documentation system
     
    7171CREATE_SUBDIRS         = NO
    7272
     73# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
     74# characters to appear in the names of generated files. If set to NO, non-ASCII
     75# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
     76# U+3044.
     77# The default value is: NO.
     78
     79ALLOW_UNICODE_NAMES    = NO
     80
    7381# The OUTPUT_LANGUAGE tag is used to specify the language in which all
    7482# documentation generated by doxygen is written. Doxygen will use this
    7583# information to generate all constant output in the proper language.
    76 # Possible values are: Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-
    77 # Traditional, Croatian, Czech, Danish, Dutch, English, Esperanto, Farsi,
    78 # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en,
    79 # Korean, Korean-en, Latvian, Norwegian, Macedonian, Persian, Polish,
    80 # Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish,
    81 # Turkish, Ukrainian and Vietnamese.
     84# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
     85# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
     86# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
     87# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
     88# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
     89# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
     90# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
     91# Ukrainian and Vietnamese.
    8292# The default value is: English.
    8393
     
    260270# using this tag. The format is ext=language, where ext is a file extension, and
    261271# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
    262 # C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make
    263 # doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
    264 # (default is Fortran), use: inc=Fortran f=C.
     272# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
     273# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
     274# Fortran. In the later case the parser tries to guess whether the code is fixed
     275# or free formatted code, this is the default for Fortran type files), VHDL. For
     276# instance to make doxygen treat .inc files as Fortran files (default is PHP),
     277# and .f files as C (default is Fortran), use: inc=Fortran f=C.
    265278#
    266279# Note For files without extension you can use no_extension as a placeholder.
     
    501514SHOW_INCLUDE_FILES     = YES
    502515
     516# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
     517# grouped member an include statement to the documentation, telling the reader
     518# which file to include in order to use the member.
     519# The default value is: NO.
     520
     521SHOW_GROUPED_MEMB_INC  = NO
     522
    503523# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
    504524# files with double quotes in the documentation rather than with sharp brackets.
     
    522542# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
    523543# descriptions of file, namespace and class members alphabetically by member
    524 # name. If set to NO the members will appear in declaration order.
     544# name. If set to NO the members will appear in declaration order. Note that
     545# this will also influence the order of the classes in the class list.
    525546# The default value is: NO.
    526547
     
    660681# For LaTeX the style of the bibliography can be controlled using
    661682# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
    662 # search path. Do not use file names with spaces, bibtex cannot handle them. See
    663 # also \cite for info how to create references.
     683# search path. See also \cite for info how to create references.
    664684
    665685CITE_BIB_FILES         =
     
    979999VERBATIM_HEADERS       = YES
    9801000
     1001# If the CLANG_ASSISTED_PARSING tag is set to YES, then doxygen will use the
     1002# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
     1003# cost of reduced performance. This can be particularly helpful with template
     1004# rich C++ code for which doxygen's built-in parser lacks the necessary type
     1005# information.
     1006# Note: The availability of this option depends on whether or not doxygen was
     1007# compiled with the --with-libclang option.
     1008# The default value is: NO.
     1009
     1010CLANG_ASSISTED_PARSING = NO
     1011
     1012# If clang assisted parsing is enabled you can provide the compiler with command
     1013# line options that you would normally use when invoking the compiler. Note that
     1014# the include paths will already be set by doxygen for the files and directories
     1015# specified with INPUT and INCLUDE_PATH.
     1016# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
     1017
     1018CLANG_OPTIONS          =
     1019
    9811020#---------------------------------------------------------------------------
    9821021# Configuration options related to the alphabetical class index
     
    10711110HTML_STYLESHEET        =
    10721111
    1073 # The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-
    1074 # defined cascading style sheet that is included after the standard style sheets
     1112# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
     1113# cascading style sheets that are included after the standard style sheets
    10751114# created by doxygen. Using this option one can overrule certain style aspects.
    10761115# This is preferred over using HTML_STYLESHEET since it does not replace the
    10771116# standard style sheet and is therefor more robust against future updates.
    1078 # Doxygen will copy the style sheet file to the output directory. For an example
    1079 # see the documentation.
     1117# Doxygen will copy the style sheet files to the output directory.
     1118# Note: The order of the extra stylesheet files is of importance (e.g. the last
     1119# stylesheet in the list overrules the setting of the previous ones in the
     1120# list). For an example see the documentation.
    10801121# This tag requires that the tag GENERATE_HTML is set to YES.
    10811122
     
    12421283
    12431284# The BINARY_TOC flag controls whether a binary table of contents is generated (
    1244 # YES) or a normal table of contents ( NO) in the .chm file.
     1285# YES) or a normal table of contents ( NO) in the .chm file. Furthermore it
     1286# enables the Previous and Next buttons.
    12451287# The default value is: NO.
    12461288# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
     
    14821524# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
    14831525# implemented using a web server instead of a web client using Javascript. There
    1484 # are two flavours of web server based searching depending on the
    1485 # EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for
    1486 # searching and an index file used by the script. When EXTERNAL_SEARCH is
    1487 # enabled the indexing and searching needs to be provided by external tools. See
    1488 # the section "External Indexing and Searching" for details.
     1526# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
     1527# setting. When disabled, doxygen will generate a PHP script for searching and
     1528# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
     1529# and searching needs to be provided by external tools. See the section
     1530# "External Indexing and Searching" for details.
    14891531# The default value is: NO.
    14901532# This tag requires that the tag SEARCHENGINE is set to YES.
     
    16141656# Note: Only use a user-defined header if you know what you are doing! The
    16151657# following commands have a special meaning inside the header: $title,
    1616 # $datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will
    1617 # replace them by respectively the title of the page, the current date and time,
    1618 # only the current date, the version number of doxygen, the project name (see
    1619 # PROJECT_NAME), or the project number (see PROJECT_NUMBER).
     1658# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
     1659# $projectbrief, $projectlogo. Doxygen will replace $title with the empy string,
     1660# for the replacement values of the other commands the user is refered to
     1661# HTML_HEADER.
    16201662# This tag requires that the tag GENERATE_LATEX is set to YES.
    16211663
     
    16241666# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
    16251667# generated LaTeX document. The footer should contain everything after the last
    1626 # chapter. If it is left blank doxygen will generate a standard footer.
     1668# chapter. If it is left blank doxygen will generate a standard footer. See
     1669# LATEX_HEADER for more information on how to generate a default footer and what
     1670# special commands can be used inside the footer.
    16271671#
    16281672# Note: Only use a user-defined footer if you know what you are doing!
     
    16481692PDF_HYPERLINKS         = YES
    16491693
    1650 # If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
     1694# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
    16511695# the PDF file directly from the LaTeX files. Set this option to YES to get a
    16521696# higher quality PDF documentation.
     
    17741818MAN_EXTENSION          = .3
    17751819
     1820# The MAN_SUBDIR tag determines the name of the directory created within
     1821# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
     1822# MAN_EXTENSION with the initial . removed.
     1823# This tag requires that the tag GENERATE_MAN is set to YES.
     1824
     1825MAN_SUBDIR             =
     1826
    17761827# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
    17771828# will generate one additional man file for each entity documented in the real
     
    18011852XML_OUTPUT             = xml
    18021853
    1803 # The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a
    1804 # validating XML parser to check the syntax of the XML files.
    1805 # This tag requires that the tag GENERATE_XML is set to YES.
    1806 
    1807 XML_SCHEMA             =
    1808 
    1809 # The XML_DTD tag can be used to specify a XML DTD, which can be used by a
    1810 # validating XML parser to check the syntax of the XML files.
    1811 # This tag requires that the tag GENERATE_XML is set to YES.
    1812 
    1813 XML_DTD                =
    1814 
    18151854# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
    18161855# listings (including syntax highlighting and cross-referencing information) to
     
    18391878
    18401879DOCBOOK_OUTPUT         = docbook
     1880
     1881# If the DOCBOOK_PROGRAMLISTING tag is set to YES doxygen will include the
     1882# program listings (including syntax highlighting and cross-referencing
     1883# information) to the DOCBOOK output. Note that enabling this will significantly
     1884# increase the size of the DOCBOOK output.
     1885# The default value is: NO.
     1886# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
     1887
     1888DOCBOOK_PROGRAMLISTING = NO
    18411889
    18421890#---------------------------------------------------------------------------
     
    19592007
    19602008# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
    1961 # remove all refrences to function-like macros that are alone on a line, have an
    1962 # all uppercase name, and do not end with a semicolon. Such function macros are
    1963 # typically used for boiler-plate code, and will confuse the parser if not
     2009# remove all references to function-like macros that are alone on a line, have
     2010# an all uppercase name, and do not end with a semicolon. Such function macros
     2011# are typically used for boiler-plate code, and will confuse the parser if not
    19642012# removed.
    19652013# The default value is: YES.
     
    19812029# section "Linking to external documentation" for more information about the use
    19822030# of tag files.
    1983 # Note: Each tag file must have an unique name (where the name does NOT include
     2031# Note: Each tag file must have a unique name (where the name does NOT include
    19842032# the path). If a tag file is not located in the directory in which doxygen is
    19852033# run, you must also specify the path to the tagfile here.
     
    20412089MSCGEN_PATH            =
    20422090
     2091# You can include diagrams made with dia in doxygen documentation. Doxygen will
     2092# then run dia to produce the diagram and insert it in the documentation. The
     2093# DIA_PATH tag allows you to specify the directory where the dia binary resides.
     2094# If left empty dia is assumed to be found in the default search path.
     2095
     2096DIA_PATH               =
     2097
    20432098# If set to YES, the inheritance and collaboration graphs will hide inheritance
    20442099# and usage relations if the target is undocumented or is not a class.
     
    20522107# Bell Labs. The other options in this section have no effect if this option is
    20532108# set to NO
    2054 # The default value is: NO.
     2109# The default value is: YES.
    20552110
    20562111HAVE_DOT               = NO
     
    20662121DOT_NUM_THREADS        = 0
    20672122
    2068 # When you want a differently looking font n the dot files that doxygen
     2123# When you want a differently looking font in the dot files that doxygen
    20692124# generates you can specify the font name using DOT_FONTNAME. You need to make
    20702125# sure dot is able to find the font, which can be done by putting it in a
     
    22042259# to make the SVG files visible in IE 9+ (other browsers do not have this
    22052260# requirement).
    2206 # Possible values are: png, jpg, gif and svg.
     2261# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
     2262# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
     2263# gif:cairo:gd, gif:gd, gif:gd:gd and svg.
    22072264# The default value is: png.
    22082265# This tag requires that the tag HAVE_DOT is set to YES.
     
    22402297
    22412298MSCFILE_DIRS           =
     2299
     2300# The DIAFILE_DIRS tag can be used to specify one or more directories that
     2301# contain dia files that are included in the documentation (see the \diafile
     2302# command).
     2303
     2304DIAFILE_DIRS           =
     2305
     2306# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
     2307# path where java can find the plantuml.jar file. If left blank, it is assumed
     2308# PlantUML is not used or called during a preprocessing step. Doxygen will
     2309# generate a warning when it encounters a \startuml command in this case and
     2310# will not generate output for the diagram.
     2311# This tag requires that the tag HAVE_DOT is set to YES.
     2312
     2313PLANTUML_JAR_PATH      =
    22422314
    22432315# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
  • examples/aubionotes.c

    rfa7c03a rfb7db6b  
    1919*/
    2020
    21 #define AUBIO_UNSTABLE 1 // for fvec_median
    2221#include "utils.h"
    2322#define PROG_HAS_PITCH 1
     
    2726#include "parse_args.h"
    2827
    29 uint_t median = 6;
    30 
    31 fvec_t *note_buffer;
    32 fvec_t *note_buffer2;
    33 
    34 smpl_t curnote = 0.;
    35 smpl_t newnote = 0.;
    36 uint_t isready = 0;
    37 
    38 aubio_pitch_t *pitch;
    39 aubio_onset_t *o;
    40 fvec_t *onset;
    41 fvec_t *pitch_obuf;
    42 
    43 /** append new note candidate to the note_buffer and return filtered value. we
    44  * need to copy the input array as fvec_median destroy its input data.*/
    45 void note_append (fvec_t * note_buffer, smpl_t curnote);
    46 uint_t get_note (fvec_t * note_buffer, fvec_t * note_buffer2);
     28aubio_notes_t *notes;
     29uint_t lastnote = 0;
    4730
    4831void process_block (fvec_t *ibuf, fvec_t *obuf)
    4932{
    50   smpl_t new_pitch, curlevel;
    51   fvec_zeros(obuf);
    52   aubio_onset_do(o, ibuf, onset);
    53 
    54   aubio_pitch_do (pitch, ibuf, pitch_obuf);
    55   new_pitch = fvec_get_sample(pitch_obuf, 0);
    56   if(median){
    57     note_append(note_buffer, new_pitch);
     33  aubio_notes_do (notes, ibuf, obuf);
     34  // did we get a note off?
     35  if (obuf->data[2] != 0) {
     36    send_noteon(obuf->data[2], 0);
    5837  }
    59 
    60   /* curlevel is negatif or 1 if silence */
    61   curlevel = aubio_level_detection(ibuf, silence_threshold);
    62   if (fvec_get_sample(onset, 0)) {
    63     /* test for silence */
    64     if (curlevel == 1.) {
    65       if (median) isready = 0;
    66       /* send note off */
    67       send_noteon(curnote,0);
    68     } else {
    69       if (median) {
    70         isready = 1;
    71       } else {
    72         /* kill old note */
    73         send_noteon(curnote,0);
    74         /* get and send new one */
    75         send_noteon(new_pitch,127+(int)floor(curlevel));
    76         curnote = new_pitch;
    77       }
    78     }
    79   } else {
    80     if (median) {
    81       if (isready > 0)
    82         isready++;
    83       if (isready == median)
    84       {
    85         /* kill old note */
    86         send_noteon(curnote,0);
    87         newnote = get_note(note_buffer, note_buffer2);
    88         curnote = newnote;
    89         /* get and send new one */
    90         if (curnote>45){
    91           send_noteon(curnote,127+(int)floor(curlevel));
    92         }
    93       }
    94     } // if median
     38  // did we get a note on?
     39  if (obuf->data[0] != 0) {
     40    send_noteon(obuf->data[0], obuf->data[1]);
     41    lastnote = (uint_t) floor(obuf->data[0]);
    9542  }
    9643}
     
    9946{
    10047  //if (verbose) outmsg("%f\n",pitch_obuf->data[0]);
    101 }
    102 
    103 void
    104 note_append (fvec_t * note_buffer, smpl_t curnote)
    105 {
    106   uint_t i = 0;
    107   for (i = 0; i < note_buffer->length - 1; i++) {
    108     note_buffer->data[i] = note_buffer->data[i + 1];
    109   }
    110   note_buffer->data[note_buffer->length - 1] = curnote;
    111   return;
    112 }
    113 
    114 uint_t
    115 get_note (fvec_t * note_buffer, fvec_t * note_buffer2)
    116 {
    117   uint_t i;
    118   for (i = 0; i < note_buffer->length; i++) {
    119     note_buffer2->data[i] = note_buffer->data[i];
    120   }
    121   return fvec_median (note_buffer2);
    12248}
    12349
     
    13763  verbmsg ("tolerance: %f\n", pitch_tolerance);
    13864
    139   o = new_aubio_onset (onset_method, buffer_size, hop_size, samplerate);
    140   if (onset_threshold != 0.) aubio_onset_set_threshold (o, onset_threshold);
    141   onset = new_fvec (1);
    142 
    143   pitch = new_aubio_pitch (pitch_method, buffer_size * 4, hop_size, samplerate);
    144   if (pitch_tolerance != 0.) aubio_pitch_set_tolerance (pitch, pitch_tolerance);
    145   pitch_obuf = new_fvec (1);
    146 
    147   if (median) {
    148       note_buffer = new_fvec (median);
    149       note_buffer2 = new_fvec (median);
    150   }
     65  notes = new_aubio_notes ("default", buffer_size, hop_size, samplerate);
    15166
    15267  examples_common_process((aubio_process_func_t)process_block, process_print);
    15368
    15469  // send a last note off
    155   send_noteon (curnote, 0);
     70  send_noteon (lastnote, 0);
    15671
    157   del_aubio_pitch (pitch);
    158   if (median) {
    159       del_fvec (note_buffer);
    160       del_fvec (note_buffer2);
    161   }
    162   del_fvec (pitch_obuf);
     72  del_aubio_notes (notes);
    16373
    16474  examples_common_del();
  • examples/wscript_build

    rfa7c03a rfb7db6b  
    11# vim:set syntax=python:
     2
     3import os.path
    24
    35uselib = ['aubio']
     
    1719# loop over all *.c filenames in examples to build them all
    1820for source_file in programs_source:
     21    target = os.path.basename(os.path.splitext(str(source_file))[0])
    1922    bld(features = 'c cprogram',
    2023            source = source_file,
    21             target = str(source_file).split('.')[0],
     24            target = target,
    2225            includes = includes,
    2326            use = uselib + ['utilsio'],
  • python/README

    rfa7c03a rfb7db6b  
    5757And to try out the demos:
    5858
    59     $ ./demos/demo_source.wav /path/to/sound/sample.wav
     59    $ ./demos/demo_source.py /path/to/sound/sample.wav
    6060
    6161You need to install additional modules to run some of the demos. For
  • python/lib/gen_code.py

    rfa7c03a rfb7db6b  
    7575        'onset': '1',
    7676        'pitch': '1',
     77        'notes': '3',
    7778        'wavetable': 'self->hop_size',
    7879        'sampler': 'self->hop_size',
     
    8283        'filterbank': 'self->n_filters',
    8384        'tss': 'self->hop_size',
     85        }
     86
     87objinputsize = {
     88        'mfcc': 'self->buf_size / 2 + 1',
     89        'notes': 'self->hop_size',
     90        'onset': 'self->hop_size',
     91        'pitch': 'self->hop_size',
     92        'sampler': 'self->hop_size',
     93        'specdesc': 'self->buf_size / 2 + 1',
     94        'tempo': 'self->hop_size',
     95        'wavetable': 'self->hop_size',
    8496        }
    8597
     
    377389        return NULL;
    378390    }}""".format(input_param, pytoaubio = pytoaubio_fn[input_param['type']])
    379         out += """
     391        if self.shortname in objinputsize:
     392            out += """
     393
     394    if (self->{0[name]}.length != {expected_size}) {{
     395        PyErr_Format (PyExc_ValueError,
     396            "input size of {shortname} should be %d, not %d",
     397            {expected_size}, self->{0[name]}.length);
     398        return NULL;
     399    }}""".format(input_param, expected_size = objinputsize[self.shortname], **self.__dict__)
     400        else:
     401            out += """
    380402
    381403    // TODO: check input sizes"""
  • python/tests/test_mfcc.py

    rfa7c03a rfb7db6b  
    5757            mfcc(samplerate = -1)
    5858
     59    def test_wrong_input_size(self):
     60        m = mfcc(buf_size = 1024)
     61        with self.assertRaises(ValueError):
     62            m(cvec(512))
     63
    5964class aubio_mfcc_compute(TestCase):
    6065
  • python/tests/test_specdesc.py

    rfa7c03a rfb7db6b  
    127127    def test_spread(self):
    128128        o = specdesc("spread")
    129         c = cvec(2048)
     129        c = cvec(1024)
    130130        ramp = arange(c.length, dtype=float_type)
    131131        assert_equal( 0., o(c))
  • scripts/setenv_local.sh

    rfa7c03a rfb7db6b  
    1313AUBIODIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
    1414AUBIOLIB=$AUBIODIR/build/src
    15 AUBIOPYTHON=$AUBIODIR/python/build/lib.$PYTHON_PLATFORM
     15AUBIOPYTHON=$AUBIODIR/build/lib.$PYTHON_PLATFORM
    1616
    1717if [ "$(dirname $PWD)" == "scripts" ]; then
  • src/aubio.h

    rfa7c03a rfb7db6b  
    183183#include "onset/onset.h"
    184184#include "tempo/tempo.h"
     185#include "notes/notes.h"
    185186#include "io/source.h"
    186187#include "io/sink.h"
  • src/fmat.h

    rfa7c03a rfb7db6b  
    157157void fmat_copy(const fmat_t *s, fmat_t *t);
    158158
    159 /* compute the product of a matrix by a vector
     159/** compute the product of a matrix by a vector
    160160
    161161   \param s matrix to compute product with
  • src/io/source_avcodec.c

    rfa7c03a rfb7db6b  
    7373void aubio_source_avcodec_readframe(aubio_source_avcodec_t *s, uint_t * read_samples);
    7474
     75uint_t aubio_source_avcodec_has_network_url(aubio_source_avcodec_t *s);
     76
     77uint_t aubio_source_avcodec_has_network_url(aubio_source_avcodec_t *s) {
     78  char proto[20], authorization[256], hostname[128], uripath[256];
     79  int proto_size = 20, authorization_size = 256, hostname_size = 128,
     80      *port_ptr = 0, path_size = 256;
     81  av_url_split(proto, proto_size, authorization, authorization_size, hostname,
     82      hostname_size, port_ptr, uripath, path_size, s->path);
     83  if (strlen(proto)) {
     84    return 1;
     85  }
     86  return 0;
     87}
     88
     89
    7590aubio_source_avcodec_t * new_aubio_source_avcodec(const char_t * path, uint_t samplerate, uint_t hop_size) {
    7691  aubio_source_avcodec_t * s = AUBIO_NEW(aubio_source_avcodec_t);
     
    99114  av_register_all();
    100115
    101   // if path[0] != '/'
    102   //avformat_network_init();
     116  if (aubio_source_avcodec_has_network_url(s)) {
     117    avformat_network_init();
     118  }
    103119
    104120  // try opening the file and get some info about it
  • src/mathutils.c

    rfa7c03a rfb7db6b  
    565565
    566566smpl_t
    567 aubio_level_detection (fvec_t * o, smpl_t threshold)
     567aubio_level_detection (const fvec_t * o, smpl_t threshold)
    568568{
    569569  smpl_t db_spl = aubio_db_spl (o);
  • src/musicutils.h

    rfa7c03a rfb7db6b  
    155155
    156156*/
    157 smpl_t aubio_level_detection (fvec_t * v, smpl_t threshold);
     157smpl_t aubio_level_detection (const fvec_t * v, smpl_t threshold);
    158158
    159159#ifdef __cplusplus
  • src/tempo/tempo.h

    rfa7c03a rfb7db6b  
    161161smpl_t aubio_tempo_get_confidence(aubio_tempo_t * o);
    162162
    163 /* set number of tatum per beat
     163/** set number of tatum per beat
    164164
    165165   \param o beat tracking object
     
    169169uint_t aubio_tempo_set_tatum_signature(aubio_tempo_t *o, uint_t signature);
    170170
    171 /* check whether a tatum was detected in the current frame
     171/** check whether a tatum was detected in the current frame
    172172
    173173   \param o beat tracking object
     
    178178uint_t aubio_tempo_was_tatum(aubio_tempo_t *o);
    179179
    180 /* get position of last_tatum, in samples
     180/** get position of last_tatum, in samples
    181181
    182182   \param o beat tracking object
  • tests/wscript_build

    rfa7c03a rfb7db6b  
    11# vim:set syntax=python:
     2
     3import os.path
    24
    35uselib = ['aubio']
     
    79
    810for source_file in programs_sources:
     11    target = os.path.basename(os.path.splitext(str(source_file))[0])
    912    bld(features = 'c cprogram test',
    1013            source = source_file,
    11             target = str(source_file).split('.')[0],
     14            target = target,
    1215            includes = includes,
    1316            use = uselib,
  • wscript

    rfa7c03a rfb7db6b  
    1010# have Python installed, you do *not* need to install anything to build aubio.
    1111# For more info about waf, see http://code.google.com/p/waf/ .
     12
     13import sys
    1214
    1315APPNAME = 'aubio'
     
    112114    ctx.check(header_name='unistd.h', mandatory = False)
    113115
    114     target_platform = Options.platform
     116    target_platform = sys.platform
    115117    if ctx.options.target_platform:
    116118        target_platform = ctx.options.target_platform
Note: See TracChangeset for help on using the changeset viewer.