From 423647e4afb7bc2421056412ae62342c3a306fa2 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 14:33:28 -0700 Subject: [PATCH 1/6] Use gz-cmake Signed-off-by: Louise Poubel --- .github/ci/packages.apt | 1 + CMakeLists.txt | 243 +---- README.md | 133 +-- cmake/DissectVersion.cmake | 5 - cmake/SearchForStuff.cmake | 2 - cmake/Utils.cmake | 88 -- cmake/cmake_uninstall.cmake.in | 21 - cmake/cpack.cmake | 24 - cmake/cpack_options.cmake.in | 28 - cmake/ignition-config.cmake.in | 17 - cmake/pkgconfig/ignition.in | 4 - configure.bat | 23 - doc/CMakeLists.txt | 21 - doc/doxygen.css | 775 -------------- doc/footer.html | 1 - doc/header.html | 64 -- doc/ignition.in | 1810 -------------------------------- doc/ignition_logo.png | Bin 3478 -> 0 bytes doc/ignition_logo.svg | 75 -- doc/mainpage.html | 16 - doc/search.js | 817 -------------- doc/style.css | 86 -- src/CMakeLists.txt | 21 +- src/backward.cc | 17 + tools/.rubocop.yml | 2 +- tools/code_check.sh | 4 - tutorials.md.in | 15 + tutorials/install.md | 242 +++++ 28 files changed, 345 insertions(+), 4210 deletions(-) delete mode 100644 cmake/DissectVersion.cmake delete mode 100644 cmake/SearchForStuff.cmake delete mode 100644 cmake/Utils.cmake delete mode 100644 cmake/cmake_uninstall.cmake.in delete mode 100644 cmake/cpack.cmake delete mode 100644 cmake/cpack_options.cmake.in delete mode 100644 cmake/ignition-config.cmake.in delete mode 100644 cmake/pkgconfig/ignition.in delete mode 100644 configure.bat delete mode 100644 doc/CMakeLists.txt delete mode 100644 doc/doxygen.css delete mode 100644 doc/footer.html delete mode 100644 doc/header.html delete mode 100644 doc/ignition.in delete mode 100644 doc/ignition_logo.png delete mode 100644 doc/ignition_logo.svg delete mode 100644 doc/mainpage.html delete mode 100644 doc/search.js delete mode 100644 doc/style.css delete mode 100644 tools/code_check.sh create mode 100644 tutorials.md.in create mode 100644 tutorials/install.md diff --git a/.github/ci/packages.apt b/.github/ci/packages.apt index 31ab376..551016b 100644 --- a/.github/ci/packages.apt +++ b/.github/ci/packages.apt @@ -1 +1,2 @@ +libignition-cmake3-dev rubocop diff --git a/CMakeLists.txt b/CMakeLists.txt index d520830..4a27b81 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,136 +1,35 @@ -cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) +cmake_minimum_required(VERSION 3.10.2 FATAL_ERROR) -project (ignition-tools2) +#============================================================================ +# Initialize the project +#============================================================================ +project(ignition-tools2 VERSION 2.0.0) -# Note about ignition-cmake: -# ------------------------- -# The project is not using ignition-cmake2 due to problems -# with compatibility when mixed with projects using ignition-cmake0 -# When ignition-cmake0 will be EOL the code to implement -# ignition-cmake2 back to this project can be found at: -# https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-tools/pull-requests/6 +#============================================================================ +# Find gz-cmake +#============================================================================ +find_package(ignition-cmake3 REQUIRED) +set(GZ_CMAKE_VER ${ignition-cmake3_VERSION_MAJOR}) -string (SUBSTRING ${PROJECT_NAME} 9 -1 IGN_PROJECT_NAME) -string (TOLOWER ${PROJECT_NAME} PROJECT_NAME_LOWER) -string (TOUPPER ${PROJECT_NAME} PROJECT_NAME_UPPER) +#============================================================================ +# Configure the project +#============================================================================ +gz_configure_project( + VERSION_SUFFIX pre1) -set (PROJECT_MAJOR_VERSION 2) -set (PROJECT_MINOR_VERSION 0) -set (PROJECT_PATCH_VERSION 0~pre1) +#============================================================================ +# Set project-specific options +#============================================================================ -set (PROJECT_VERSION ${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}) -set (PROJECT_VERSION_FULL ${PROJECT_MAJOR_VERSION}.${PROJECT_MINOR_VERSION}.${PROJECT_PATCH_VERSION}) +# No project-specific options yet -message (STATUS "${PROJECT_NAME} version ${PROJECT_VERSION_FULL}") +#============================================================================ +# Search for project-specific dependencies +#============================================================================ +message(STATUS "\n\n-- ====== Finding Dependencies ======") -set (project_cmake_dir ${PROJECT_SOURCE_DIR}/cmake - CACHE PATH "Location of CMake scripts") - -include (${project_cmake_dir}/Utils.cmake) - -######################################## -# Package Creation: -include (${project_cmake_dir}/cpack.cmake) -set (CPACK_PACKAGE_VERSION "${PROJECT_VERSION_FULL}") -set (CPACK_PACKAGE_VERSION_MAJOR "${PROJECT_MAJOR_VERSION}") -set (CPACK_PACKAGE_VERSION_MINOR "${PROJECT_MINOR_VERSION}") -set (CPACK_PACKAGE_VERSION_PATCH "${PROJECT_PATCH_VERSION}") - -if (CPACK_GENERATOR) - message(STATUS "Found CPack generators: ${CPACK_GENERATOR}") - - configure_file("${project_cmake_dir}/cpack_options.cmake.in" - ${PROJECT_CPACK_CFG_FILE} @ONLY) - - set(CPACK_PROJECT_CONFIG_FILE ${PROJECT_CPACK_CFG_FILE}) - include (CPack) -endif() - -# If we're configuring only to package source, stop here -if (PACKAGE_SOURCE_ONLY) - message(WARNING "Configuration was done in PACKAGE_SOURCE_ONLY mode." - "You can build a tarball (make package_source), but nothing else.") - return() -endif() - -################################################# -# Documentation: -add_subdirectory(doc) - -# If we're configuring only to build docs, stop here -if (DOC_ONLY) - message(WARNING "Configuration was done in DOC_ONLY mode." - " You can build documentation (make doc), but nothing else.") - return() -endif() - -enable_testing() - -# Use GNUInstallDirst to get canonical paths -include(GNUInstallDirs) - -# with -fPIC -if(UNIX AND NOT WIN32) - set (CMAKE_INSTALL_PREFIX "/usr" CACHE STRING "Install Prefix") - find_program(CMAKE_UNAME uname /bin /usr/bin /usr/local/bin ) - if(CMAKE_UNAME) - exec_program(uname ARGS -m OUTPUT_VARIABLE CMAKE_SYSTEM_PROCESSOR) - set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR} CACHE INTERNAL - "processor type (i386 and x86_64)") - if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64") - ADD_DEFINITIONS(-fPIC) - endif(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64") - endif(CMAKE_UNAME) -endif() - -set (CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON) - -# developer's option to cache PKG_CONFIG_PATH and -# LD_LIBRARY_PATH for local installs -if(PKG_CONFIG_PATH) - set (ENV{PKG_CONFIG_PATH} ${PKG_CONFIG_PATH}:$ENV{PKG_CONFIG_PATH}) -endif() -if(LD_LIBRARY_PATH) - set (ENV{LD_LIBRARY_PATH} ${LD_LIBRARY_PATH}:$ENV{LD_LIBRARY_PATH}) -endif() - - -set (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/ignition") -set (LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}) -set (BIN_INSTALL_DIR ${CMAKE_INSTALL_BINDIR}) - -set (USE_FULL_RPATH OFF CACHE BOOL "Set to true to enable full rpath") - -if (USE_FULL_RPATH) - # use, i.e. don't skip the full RPATH for the build tree - set(CMAKE_SKIP_BUILD_RPATH FALSE) - - # when building, don't use the install RPATH already - # (but later on when installing) - set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) - - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}") - - # add the automatically determined parts of the RPATH - # which point to directories outside the build tree to the install RPATH - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) - - # the RPATH to be used when installing, but only if its not a system directory - list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}" isSystemDir) - if("${isSystemDir}" STREQUAL "-1") - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}") - endif("${isSystemDir}" STREQUAL "-1") -endif() - -set (BUILD_IGNITION ON CACHE INTERNAL - "Build Ignition ${IGN_PROJECT_NAME}" FORCE) -set (build_errors "" CACHE INTERNAL "build errors" FORCE) -set (build_warnings "" CACHE INTERNAL "build warnings" FORCE) - -include (${project_cmake_dir}/DissectVersion.cmake) - -message (STATUS "\n\n====== Finding 3rd Party Packages ======") -include (${project_cmake_dir}/SearchForStuff.cmake) +# Rubocop for Ruby linting +find_program(RUBOCOP_PROGRAM rubocop) # Backtrace # There appears to be a bug that causes pretty printing backtrace to fail in @@ -143,84 +42,20 @@ if (NOT USE_SYSTEM_BACKWARDCPP) endif() find_package(Backward) -message (STATUS "----------------------------------------\n") - -################################################# -# Print warnings and errors -if ( build_warnings ) - message(WARNING "BUILD WARNINGS") - foreach (msg ${build_warnings}) - message(WARNING ${msg}) - endforeach () - message(WARNING "END BUILD WARNINGS\n") -endif (build_warnings) - -########### Add uninstall target ############### -configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake" - IMMEDIATE @ONLY) -add_custom_target(uninstall - "${CMAKE_COMMAND}" -P - "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake") - -if (build_errors) - message(SEND_ERROR "BUILD ERRORS: These must be resolved before compiling.") - foreach (msg ${build_errors}) - message(SEND_ERROR ${msg}) - endforeach () - message(SEND_ERROR "END BUILD ERRORS\n") - message (FATAL_ERROR "Errors encountered in build. " - "Please see the BUILD ERRORS above.") -else (build_errors) - - message (STATUS "Install path: ${CMAKE_INSTALL_PREFIX}") - - ######################################## - # Make the package config files - set(PC_CONFIG_INSTALL_DIR ${LIB_INSTALL_DIR}/pkgconfig) - file(RELATIVE_PATH - PC_CONFIG_RELATIVE_PATH_TO_PREFIX - "${CMAKE_INSTALL_PREFIX}/${PC_CONFIG_INSTALL_DIR}" - "${CMAKE_INSTALL_PREFIX}" - ) - configure_file( - ${CMAKE_SOURCE_DIR}/cmake/pkgconfig/ignition.in - ${CMAKE_CURRENT_BINARY_DIR}/cmake/pkgconfig/${PROJECT_NAME_LOWER}.pc @ONLY) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cmake/pkgconfig/${PROJECT_NAME_LOWER}.pc - DESTINATION ${PC_CONFIG_INSTALL_DIR} - COMPONENT pkgconfig) - - ######################################## - # Make the cmake config files - set(PKG_NAME ${PROJECT_NAME_UPPER}) - set(PKG_LIBRARIES ${PROJECT_NAME_LOWER}) - set(PKG_DEPENDS) - - include(CMakePackageConfigHelpers) - configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/cmake/ignition-config.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME_LOWER}-config.cmake" - INSTALL_DESTINATION ${LIB_INSTALL_DIR}/cmake/${PROJECT_NAME_LOWER} - ) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME_LOWER}-config.cmake - DESTINATION ${LIB_INSTALL_DIR}/cmake/${PROJECT_NAME_LOWER} - COMPONENT cmake) - - ######################################## - # If present, load platform-specific build hooks. This system is used, - # for example, by the Ubuntu overlay, to arrange for installation of - # Ubuntu-specific application-launching configuration. - if (EXISTS ${PROJECT_SOURCE_DIR}/cmake/packager-hooks/CMakeLists.txt) - message(STATUS "Loading packager build hooks from cmake/packager-hooks") - add_subdirectory(cmake/packager-hooks) - endif() +#============================================================================ +# Configure the build +#============================================================================ +gz_configure_build(QUIT_IF_BUILD_ERRORS) - message(STATUS "Configuration successful. Type make to compile - ${PROJECT_NAME_LOWER}") -endif(build_errors) +#============================================================================ +# Create package information +#============================================================================ +gz_create_packages() -include(CTest) +#============================================================================ +# Configure documentation +#============================================================================ +configure_file(${CMAKE_SOURCE_DIR}/tutorials.md.in ${CMAKE_BINARY_DIR}/tutorials.md) -add_subdirectory(src) -add_subdirectory(etc) +gz_create_docs( + TUTORIALS_MAINPAGE_MD "${CMAKE_BINARY_DIR}/tutorials.md") diff --git a/README.md b/README.md index 8607cb7..3e68818 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Ignition tools: Ignition entry point for using all the suite of ignition tools +# Gazebo Tools: Entrypoint to Gazebo's command line interface **Maintainer:** caguero AT openrobotics DOT org @@ -10,133 +10,36 @@ Build | Status -- | -- Test coverage | [![codecov](https://codecov.io/gh/gazebosim/gz-tools/branch/ign-tools2/graph/badge.svg)](https://codecov.io/gh/gazebosim/gz-tools) -Ubuntu Bionic | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_tools-ci-ign-tools2-bionic-amd64)](https://build.osrfoundation.org/job/ignition_tools-ci-ign-tools2-bionic-amd64) +Ubuntu Focal | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_tools-ci-ign-tools2-focal-amd64)](https://build.osrfoundation.org/job/ignition_tools-ci-ign-tools2-focal-amd64) Homebrew | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_tools-ci-ign-tools2-homebrew-amd64)](https://build.osrfoundation.org/job/ignition_tools-ci-ign-tools2-homebrew-amd64) -Windows | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ign_tools-ign-1-win)](https://build.osrfoundation.org/job/ign_tools-ign-1-win) +Windows | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ign_tools-ign-2-win)](https://build.osrfoundation.org/job/ign_tools-ign-2-win) -Ignition tools provide the `gz` command line tool that accepts multiple +Gazebo Tools provide the `gz` command line tool that accepts multiple subcommands. Each subcommand is implemented in a plugin that belongs to a -specific Ignition project. For example, all the commands that start with -`gz topic ...` will be implemented by the Gazebo Transport library. +specific Gazebo project. For example, all the commands that start with +`gz topic ...` are implemented by the Gazebo Transport library. -[http://gazebosim.org](http://gazebosim.org) +# Table of Contents -**Note** While `ign-tools` is currently building on Windows 10, the command line utilities are not yet supported. +[Features](#features) -# Installation +[Install](#install) -These instructions are for installing only Gazebo Tools. -If you're interested in using all the Ignition libraries, check out this [Ignition installation](https://gazebosim.org/docs/latest/install). +[Contributing](#contributing) -We recommend following the Binary Installation instructions to get up and running as quickly and painlessly as possible. +[Code of Conduct](#code-of-conduct) -The Source Installation instructions should be used if you need the very latest software improvements, you need to modify the code, or you plan to make a contribution. +[Versioning](#versioning) -Windows support: Currently, the library builds on Windows, but the `gz` command-line tool is not readily functional. We are investigating this. +[License](#license) -## Binary Installation +# Features -### Ubuntu +Gazebo Tools provides the `gz` CLI for the entire Gazebo project. -On Ubuntu systems, `apt-get` can be used to install `ignition-tools`: -``` -sudo apt install libignition-tools<#>-dev -``` +# Install -Be sure to replace `<#>` with a number value, such as 2 or 3, depending on -which version you need, or leave it empty for version 1. - -### Windows - -Install [Conda package management system](https://docs.conda.io/projects/conda/en/latest/user-guide/install/download.html). -Miniconda suffices. - -Create if necessary, and activate a Conda environment: -``` -conda create -n gz-ws -conda activate gz-ws -``` - -Install `ignition-tools`: -``` -conda install libignition-tools<#> --channel conda-forge -``` - -Be sure to replace `<#>` with a number value, such as 2 or 3, depending on -which version you need, or leave it empty for version 1. - -## Source Installation - -## UNIX - -### Prerequisites - -The following dependencies are required to compile ignition-tools from -source: - - - cmake - - git - -### Build from Source - -Standard installation can be performed in UNIX systems using the following -steps: -``` -mkdir build -cd build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr -sudo make install -``` - -### Bash auto-completion - -Source the [etc/gz.bash_completion.sh](etc/gz.bash_completion.sh) script in your bash terminal window to enable auto-complete: -~~~ -. etc/gz.bash_completion.sh -~~~ - -### Uninstallation - -To uninstall the software installed with the previous steps: -``` -cd build -sudo make uninstall -``` - -## Windows - -### Prerequisites - -Install [Conda package management system](https://docs.conda.io/projects/conda/en/latest/user-guide/install/download.html). -Miniconda suffices. - -Create if necessary, and activate a Conda environment: -``` -conda create -n gz-ws -conda activate gz-ws -``` - -Install prerequisites: -``` -conda install ruby git cmake --channel conda-forge -``` - -### Build from Source - -This assumes you have created and activated a Conda environment while installing the Prerequisites. - -1. Configure and build - ``` - mkdir build - cd build - cmake .. -DBUILD_TESTING=OFF # Optionally, -DCMAKE_INSTALL_PREFIX=path\to\install - cmake --build . --config Release - ``` - -2. Optionally, install - ``` - cmake --install . --config Release - ``` +See the [installation tutorial](https://gazebosim.org/api/tools/2.0/install.html). # Contributing @@ -153,4 +56,4 @@ This library uses [Semantic Versioning](https://semver.org/). Additionally, this # License -This library is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). See also the [LICENSE](https://github.com/gazebosim/gz-sim/blob/main/LICENSE) file. +This library is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). See also the [LICENSE](https://github.com/gazebosim/gz-tools/blob/main/LICENSE) file. diff --git a/cmake/DissectVersion.cmake b/cmake/DissectVersion.cmake deleted file mode 100644 index a90157e..0000000 --- a/cmake/DissectVersion.cmake +++ /dev/null @@ -1,5 +0,0 @@ -# Find version components -STRING (REGEX REPLACE "^([0-9]+).*" "\\1" PROJECT_MAJOR_VERSION "${PROJECT_VERSION_FULL}") -STRING (REGEX REPLACE "^[0-9]+\\.([0-9]+).*" "\\1" PROJECT_MINOR_VERSION "${PROJECT_VERSION_FULL}") -STRING (REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" IGNITION_REVISION_VERSION ${PROJECT_VERSION_FULL}) -STRING (REGEX REPLACE "^[0-9]+\\.[0-9]+\\.[0-9]+(.*)" "\\1" IGNITION_CANDIDATE_VERSION ${PROJECT_VERSION_FULL}) diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake deleted file mode 100644 index 6f13a25..0000000 --- a/cmake/SearchForStuff.cmake +++ /dev/null @@ -1,2 +0,0 @@ -include (${project_cmake_dir}/Utils.cmake) -include (FindPkgConfig) diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake deleted file mode 100644 index 93214da..0000000 --- a/cmake/Utils.cmake +++ /dev/null @@ -1,88 +0,0 @@ -################################################################################ -#APPEND_TO_CACHED_STRING(_string _cacheDesc [items...]) -# Appends items to a cached list. -MACRO (APPEND_TO_CACHED_STRING _string _cacheDesc) - FOREACH (newItem ${ARGN}) - SET (${_string} "${${_string}} ${newItem}" CACHE INTERNAL ${_cacheDesc} FORCE) - ENDFOREACH (newItem ${ARGN}) - #STRING(STRIP ${${_string}} ${_string}) -ENDMACRO (APPEND_TO_CACHED_STRING) - -################################################################################ -# APPEND_TO_CACHED_LIST (_list _cacheDesc [items...] -# Appends items to a cached list. -MACRO (APPEND_TO_CACHED_LIST _list _cacheDesc) - SET (tempList ${${_list}}) - FOREACH (newItem ${ARGN}) - LIST (APPEND tempList ${newItem}) - ENDFOREACH (newItem ${newItem}) - SET (${_list} ${tempList} CACHE INTERNAL ${_cacheDesc} FORCE) -ENDMACRO(APPEND_TO_CACHED_LIST) - -################################################# -# Macro to turn a list into a string (why doesn't CMake have this built-in?) -MACRO (LIST_TO_STRING _string _list) - SET (${_string}) - FOREACH (_item ${_list}) - SET (${_string} "${${_string}} ${_item}") - ENDFOREACH (_item) - #STRING(STRIP ${${_string}} ${_string}) -ENDMACRO (LIST_TO_STRING) - -################################################# -# BUILD ERROR macro -macro (BUILD_ERROR) - foreach (str ${ARGN}) - SET (msg "\t${str}") - MESSAGE (STATUS ${msg}) - APPEND_TO_CACHED_LIST(build_errors "build errors" ${msg}) - endforeach () -endmacro (BUILD_ERROR) - -################################################# -# BUILD WARNING macro -macro (BUILD_WARNING) - foreach (str ${ARGN}) - SET (msg "\t${str}" ) - MESSAGE (STATUS ${msg} ) - APPEND_TO_CACHED_LIST(build_warnings "build warning" ${msg}) - endforeach (str ${ARGN}) -endmacro (BUILD_WARNING) - -################################################# -macro (ign_add_library _name) - add_library(${_name} SHARED ${ARGN}) - target_link_libraries (${_name} ${general_libraries}) -endmacro () - -################################################# -macro (ign_add_static_library _name) - add_library(${_name} STATIC ${ARGN}) - target_link_libraries (${_name} ${general_libraries}) -endmacro () - -################################################# -macro (ign_add_executable _name) - add_executable(${_name} ${ARGN}) - target_link_libraries (${_name} ${general_libraries}) -endmacro () - - -################################################# -macro (ign_install_includes _subdir) - install(FILES ${ARGN} DESTINATION ${INCLUDE_INSTALL_DIR}/${_subdir} COMPONENT headers) -endmacro() - -################################################# -macro (ign_install_library _name) - set_target_properties(${_name} PROPERTIES SOVERSION ${PROJECT_MAJOR_VERSION} VERSION ${PROJECT_VERSION_FULL}) - install (TARGETS ${_name} DESTINATION ${LIB_INSTALL_DIR} COMPONENT shlib) -endmacro () - -################################################# -macro (ign_install_executable _name) - set_target_properties(${_name} PROPERTIES VERSION ${PROJECT_VERSION_FULL}) - install (TARGETS ${_name} DESTINATION ${BIN_INSTALL_DIR}) - manpage(${_name} 1) -endmacro () - diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in deleted file mode 100644 index efcb24a..0000000 --- a/cmake/cmake_uninstall.cmake.in +++ /dev/null @@ -1,21 +0,0 @@ -if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") - message(FATAL_ERROR "Cannot find install manifest: "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt"") -endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") - -file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) -string(REGEX REPLACE "\n" ";" files "${files}") -foreach(file ${files}) - message(STATUS "Uninstalling "$ENV{DESTDIR}${file}"") - if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") - exec_program( - "@CMAKE_COMMAND@" ARGS "-E remove "$ENV{DESTDIR}${file}"" - OUTPUT_VARIABLE rm_out - RETURN_VALUE rm_retval - ) - if(NOT "${rm_retval}" STREQUAL 0) - message(FATAL_ERROR "Problem when removing "$ENV{DESTDIR}${file}"") - endif(NOT "${rm_retval}" STREQUAL 0) - else(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") - message(STATUS "File "$ENV{DESTDIR}${file}" does not exist.") - endif(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}") -endforeach(file) diff --git a/cmake/cpack.cmake b/cmake/cpack.cmake deleted file mode 100644 index 448e94e..0000000 --- a/cmake/cpack.cmake +++ /dev/null @@ -1,24 +0,0 @@ -################################################################################ -#Find available package generators - -# DEB -if ("${CMAKE_SYSTEM}" MATCHES "Linux") - find_program(DPKG_PROGRAM dpkg) - if (EXISTS ${DPKG_PROGRAM}) - list (APPEND CPACK_GENERATOR "DEB") - endif(EXISTS ${DPKG_PROGRAM}) - - find_program(RPMBUILD_PROGRAM rpmbuild) -endif() - -list (APPEND CPACK_SOURCE_GENERATOR "TBZ2") -list (APPEND CPACK_SOURCE_GENERATOR "ZIP") -list (APPEND CPACK_SOURCE_IGNORE_FILES "TODO;/.hg/;.swp$;/build/;.hgtags") - -include (InstallRequiredSystemLibraries) - -set (DEBIAN_PACKAGE_DEPENDS "") - -set (RPM_PACKAGE_DEPENDS "") - -set (PROJECT_CPACK_CFG_FILE "${PROJECT_BINARY_DIR}/cpack_options.cmake") diff --git a/cmake/cpack_options.cmake.in b/cmake/cpack_options.cmake.in deleted file mode 100644 index af17b97..0000000 --- a/cmake/cpack_options.cmake.in +++ /dev/null @@ -1,28 +0,0 @@ -set(CPACK_PACKAGE_NAME "@PROJECT_NAME@") -set(CPACK_PACKAGE_VENDOR "osrfoundation.org") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY - "A set of @IGN_PROJECT_NAME@ classes for robot applications.") -set(CPACK_PACKAGE_INSTALL_DIRECTORY "@PROJECT_NAME_LOWER@") -set(CPACK_RESOURCE_FILE_LICENSE "@CMAKE_CURRENT_SOURCE_DIR@/LICENSE") -set(CPACK_RESOURCE_FILE_README "@CMAKE_CURRENT_SOURCE_DIR@/README.md") -set(CPACK_PACKAGE_DESCRIPTION_FILE "@CMAKE_CURRENT_SOURCE_DIR@/README.md") -set(CPACK_PACKAGE_MAINTAINER "OSR Foundation ") -set(CPACK_PACKAGE_CONTACT "OSR Foundation ") - -set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "@DPKG_ARCH@") -set(CPACK_DEBIAN_PACKAGE_DEPENDS "@DEBIAN_PACKAGE_DEPENDS@") -set(CPACK_DEBIAN_PACKAGE_SECTION "devel") -set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional") -set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) -set(CPACK_DEBIAN_PACKAGE_DESCRIPTION - "A set of @IGN_PROJECT_NAME@ classes for robot applications.") - -set(CPACK_RPM_PACKAGE_ARCHITECTURE "@DPKG_ARCH@") -set(CPACK_RPM_PACKAGE_REQUIRES "@DEBIAN_PACKAGE_DEPENDS@") -set(CPACK_RPM_PACKAGE_DESCRIPTION - "A set of @IGN_PROJECT_NAME@ classes for robot applications.") - -set (CPACK_PACKAGE_FILE_NAME - "@PROJECT_NAME_LOWER@-@PROJECT_VERSION_FULL@") -set (CPACK_SOURCE_PACKAGE_FILE_NAME - "@PROJECT_NAME_LOWER@-@PROJECT_VERSION_FULL@") diff --git a/cmake/ignition-config.cmake.in b/cmake/ignition-config.cmake.in deleted file mode 100644 index ba3e111..0000000 --- a/cmake/ignition-config.cmake.in +++ /dev/null @@ -1,17 +0,0 @@ -if (@PKG_NAME@_CONFIG_INCLUDED) - return() -endif() -set(@PKG_NAME@_CONFIG_INCLUDED TRUE) - -@PACKAGE_INIT@ - -list(APPEND @PKG_NAME@_BINARY_DIRS ${PACKAGE_PREFIX_DIR}/bin) - -foreach(dep @PKG_DEPENDS@) - if(NOT ${dep}_FOUND) - find_package(${dep} REQUIRED) - endif() - string(TOUPPER ${dep} dep_upper) - list(APPEND @PKG_NAME@_INCLUDE_DIRS ${${dep_upper}_INCLUDE_DIRS}) - list(APPEND @PKG_NAME@_LIBRARIES ${${dep_upper}_LIBRARIES}) -endforeach() diff --git a/cmake/pkgconfig/ignition.in b/cmake/pkgconfig/ignition.in deleted file mode 100644 index ad40634..0000000 --- a/cmake/pkgconfig/ignition.in +++ /dev/null @@ -1,4 +0,0 @@ -# This packages provides no headers or libraries, so those fields are omitted -Name: Ignition @IGN_PROJECT_NAME@ -Description: A set of @IGN_PROJECT_NAME@ classes for robot applications -Version: @PROJECT_VERSION_FULL@ diff --git a/configure.bat b/configure.bat deleted file mode 100644 index 606abb9..0000000 --- a/configure.bat +++ /dev/null @@ -1,23 +0,0 @@ - -:: NOTE: This script is only meant to be used as part of the ignition developers' CI system -:: Users and developers should build and install this library using cmake and Visual Studio - -:: Set configuration variables -@set build_type=Release -@if not "%1"=="" set build_type=%1 -@echo Configuring for build type %build_type% - -:: Use legacy install location if unset -@if "%WORKSPACE_INSTALL_DIR%"=="" set WORKSPACE_INSTALL_DIR="install\%build_type%" - -:: Go to the directory that this configure.bat file exists in -cd /d %~dp0 - -:: Create a build directory and configure -md build -cd build -cmake .. -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX="%WORKSPACE_INSTALL_DIR%" -DCMAKE_BUILD_TYPE="%build_type%" -DBUILD_TESTING:BOOL=False -:: Note: We disable testing by default. If the intention is for the CI to build and test -:: this project, then the CI script will turn it back on. - -:: If the caller wants to build and/or install, they should do so after calling this script diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt deleted file mode 100644 index b127c70..0000000 --- a/doc/CMakeLists.txt +++ /dev/null @@ -1,21 +0,0 @@ -find_package(Doxygen) - -if (DOXYGEN_FOUND) - configure_file(${CMAKE_SOURCE_DIR}/doc/ignition.in - ${CMAKE_BINARY_DIR}/ignition.dox @ONLY) - - add_custom_target(doc - - # Generate the API documentation - ${DOXYGEN_EXECUTABLE} ${CMAKE_BINARY_DIR}/ignition.dox - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - COMMAND cp ${CMAKE_SOURCE_DIR}/doc/ignition_logo.png - ${CMAKE_BINARY_DIR}/doxygen/html - COMMAND cp ${CMAKE_SOURCE_DIR}/doc/search.js - ${CMAKE_BINARY_DIR}/doxygen/html/search - COMMAND make -C ${CMAKE_BINARY_DIR}/doxygen/latex - COMMAND mv ${CMAKE_BINARY_DIR}/doxygen/latex/refman.pdf - ${CMAKE_BINARY_DIR}/doxygen/latex/${PROJECT_NAME_LOWER}-${PROJECT_VERSION_FULL}.pdf - - COMMENT "Generating API documentation with Doxygen" VERBATIM) -endif() diff --git a/doc/doxygen.css b/doc/doxygen.css deleted file mode 100644 index 5588342..0000000 --- a/doc/doxygen.css +++ /dev/null @@ -1,775 +0,0 @@ -/* The standard CSS for doxygen */ - -body, table, div, p, dl { - font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; - font-size: 12px; -} - -/* @group Heading Levels */ - -h1 { - font-size: 150%; -} - -h2 { - font-size: 120%; -} - -h3 { - font-size: 100%; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd, p.starttd { - margin-top: 2px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - padding: 2px; -} - -div.qindex -{ - width: 100%; - line-height: 140%; -} - -div.navpath -{ - margin-left: 20em; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code { - color: #4665A2; -} - -a.codeRef { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -.fragment { - font-family: monospace, fixed; - font-size: 105%; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 20em; - margin-right: 10px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memItemLeft, .memItemRight, .memTemplParams { - border-top: 1px solid #C4CFE5; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 3px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.memitem { - padding: 0; - margin-bottom: 10px; -} - -.memname { - white-space: nowrap; - font-weight: bold; - margin-left: 6px; -} - -.memproto { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 8px; - -moz-border-radius-topleft: 8px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 8px; - -webkit-border-top-left-radius: 8px; - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - -} - -.memdoc { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 2px 5px; - background-color: #FBFCFD; - border-top-width: 0; - /* firefox specific markup */ - -moz-border-radius-bottomleft: 8px; - -moz-border-radius-bottomright: 8px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7); - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 8px; - -webkit-border-bottom-right-radius: 8px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7)); -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} - -/* @end */ - -/* @group Directory (tree) */ - -/* for the tree view */ - -.ftvtree { - font-family: sans-serif; - margin: 0px; -} - -/* these are for tree view when used as main index */ - -.directory { - font-size: 9pt; - font-weight: bold; - margin: 5px; -} - -.directory h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -/* -The following two styles can be used to replace the root node title -with an image of your choice. Simply uncomment the next two styles, -specify the name of your image and be sure to set 'height' to the -proper pixel height of your image. -*/ - -/* -.directory h3.swap { - height: 61px; - background-repeat: no-repeat; - background-image: url("yourimage.gif"); -} -.directory h3.swap span { - display: none; -} -*/ - -.directory > h3 { - margin-top: 0; -} - -.directory p { - margin: 0px; - white-space: nowrap; -} - -.directory div { - display: none; - margin: 0px; -} - -.directory img { - vertical-align: -30%; -} - -/* these are for tree view when not used as main index */ - -.directory-alt { - font-size: 100%; - font-weight: bold; -} - -.directory-alt h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -.directory-alt > h3 { - margin-top: 0; -} - -.directory-alt p { - margin: 0px; - white-space: nowrap; -} - -.directory-alt div { - display: none; - margin: 0px; -} - -.directory-alt img { - vertical-align: -30%; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable { - border-collapse:collapse; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; -} - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right: 15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; -} - -.navpath a:hover -{ - color:#6884BD; -} - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - margin-left: 20em; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -#content { - /*position: absolute; */ - left:12em; - top:0em; - padding-left:3em; - padding-right:3em; - padding-bottom:2em; - margin-top:1em; - margin-right:2em; -} - -.floatright -{ - float: right; - margin: 0 0 1em 1em; -} - -.timestamp { - text-align:right; - background-color: #DDD; - font-size:75%; -} - - -#MSearchBox -{ - border: 1px solid black; - position: static; - margin: 10px; - display: block; - height: 20px; -} - -#MSearchField -{ - background:none; -} - -/*iframe#MSearchResults -{ - height: 500px; - text-wrap: unrestricted; - border: none; -} -*/ -/* -#MSearchResultsWindow -{ - display: block; - position: fixed; -}*/ - -div.leftbar -{ - text-align:left; - float: left; - border-right: 1px solid #dddddd; - width: 18em; - margin: 5 5 5 5; - padding: 4 4 4 4; - background-color: #ffffff; - position: fixed; - height: 100%; -} - -div.menu { - #display:block; - background:#ffffff; - font-size: 90%; - /*border-top: 2px solid #000000; - border-bottom: 2px solid #000000; -*/ - margin: 0 0 10px 0; -} - -div.menu dl { - margin-top: 0px; - margin-bottom: 5px; -} - -div.menu dt { - font-weight:bold; - padding:0 4px 4px 4px; - font-size: 110%; - text-align: left; - text-decoration:none; -} - -div.menu dd { - font-weight: bold; - margin-left: 0px; - padding-left: 20px; - padding-bottom: 2px; - font-size: 100%; -} - - -div.leftbar img { - border:0; -} - -div.submenu dd { - font-size: 70%; - margin-left: 8px; - padding-left: 10px; - padding-bottom: 3px; -} - -div.submenu dd .secondline { - margin-left: 12px; -} diff --git a/doc/footer.html b/doc/footer.html deleted file mode 100644 index 71d71c4..0000000 --- a/doc/footer.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/doc/header.html b/doc/header.html deleted file mode 100644 index 1474951..0000000 --- a/doc/header.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - Ignition: $title - - - - - - - - - - - - -
-

- -

- - - -
-
- - - - -
- -
- -
-
-
-
diff --git a/doc/ignition.in b/doc/ignition.in deleted file mode 100644 index 18d1254..0000000 --- a/doc/ignition.in +++ /dev/null @@ -1,1810 +0,0 @@ -# Doxyfile 1.8.2 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a 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. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or sequence of words) that should -# identify the project. Note that if you do not use Doxywizard you need -# to put quotes around the project name if it contains spaces. - -PROJECT_NAME = Ignition @IGN_PROJECT_NAME@ - -# 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 = @PROJECT_VERSION_FULL@ - -# 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) -# base path where the generated documentation will be put. -# 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 = doxygen - -# 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 cause performance problems for the file system. - -CREATE_SUBDIRS = 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. -# The default language is English, other supported languages are: -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, -# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English -# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, -# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, -# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) 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. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) 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. - -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" "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. - -ALWAYS_DETAILED_SEC = YES - -# 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. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then 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. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then 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 specify absolute paths here, but also -# relative paths, which will be relative from the directory where doxygen is -# started. - -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 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 if your file system -# doesn't support long names like on DOS, Mac, or CD-ROM. - -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 -# comments will behave just like regular Qt-style comments -# (thus requiring an explicit @brief command for a brief description.) - -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 comments -# will behave just like regular Qt-style comments (thus requiring -# an explicit \brief command for a brief description.) - -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 behaviour. -# 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 behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -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. - -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. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that acts -# 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. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for -# Java. For instance, namespaces will be presented as packages, qualified -# scopes will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources only. Doxygen will then generate output that is more tailored for -# Fortran. - -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. - -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, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, -# C++. 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 -# that for custom extensions you also need to set FILE_PATTERNS otherwise the -# files are not read by doxygen. - -EXTENSION_MAPPING = - -# If MARKDOWN_SUPPORT is enabled (the default) 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. - -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. - -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); v.s. -# func(std::string) {}). This also makes the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. - -BUILTIN_STL_SUPPORT = YES - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip 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. - -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 (the default) will make doxygen 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. - -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. - -DISTRIBUTE_GROUP_DOC = YES - -# Set the SUBGROUPING tag to YES (the default) 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. - -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). - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and -# unions with only public data 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 (the default), -# structs, classes, and unions are shown on a separate page (for HTML and Man -# pages) or section (for LaTeX and RTF). - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT 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. - -TYPEDEF_HIDES_STRUCT = NO - -# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to -# determine which symbols to keep in memory and which to flush to disk. -# When the cache is full, less often used symbols will be written to disk. -# For small to medium size projects (<1000 input files) the default value is -# probably good enough. For larger projects a too small cache size can cause -# doxygen to be busy swapping symbols to and from disk most of the time -# causing a significant performance penalty. -# If the system has enough physical memory increasing the cache will improve the -# performance by keeping more symbols in memory. Note that the value works on -# a logarithmic scale so increasing the size by one will roughly double the -# memory usage. The cache size is given by this formula: -# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, -# corresponding to a cache size of 2^16 = 65536 symbols. - -SYMBOL_CACHE_SIZE = 0 - -# Similar to the SYMBOL_CACHE_SIZE 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 appear 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. - -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 and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -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. - -EXTRACT_PACKAGE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = YES - -# 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. - -EXTRACT_LOCAL_CLASSES = NO - -# 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 (the default) only methods in the interface are included. - -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 namespaces are hidden. - -EXTRACT_ANON_NSPACES = YES - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) 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. - -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 (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -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 (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = YES - -# 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 (the default) these blocks will be appended to the -# function's detailed documentation block. - -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 (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -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. - -CASE_SENSE_NAMES = YES - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# 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. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) 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. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = YES - -# 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 default) -# the constructors will appear in the respective orders defined by -# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. -# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO -# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. - -SORT_MEMBERS_CTORS_1ST = YES - -# 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 default) -# the group names will appear in their defined order. - -SORT_GROUP_NAMES = NO - -# 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 default), 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. - -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. - -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. - -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. - -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. - -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. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or macro consists of 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 initializer of individual variables and macros in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -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. - -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 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 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 , where is the value of -# the FILE_VERSION_FILTER tag, and is the name of an input file -# provided by doxygen. Whatever the program writes to standard output -# is used as the file version. See the manual for examples. - -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. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files -# containing the references data. This must be a list of .bib files. The -# .bib extension is automatically appended if omitted. Using this command -# 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. - -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 -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED 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. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR 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. - -WARN_IF_DOC_ERROR = YES - -# The 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 (the default) doxygen will only warn about -# wrong or incomplete parameter documentation, but not about the absence of -# documentation. - -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) - -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 stderr. - -WARN_LOGFILE = /tmp/@PROJECT_NAME_LOWER@_dox.warn - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be 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. - -INPUT = @CMAKE_SOURCE_DIR@/doc/mainpage.html \ - @CMAKE_SOURCE_DIR@/ignition/@IGN_PROJECT_NAME@ - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is -# also the default input encoding. 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. - -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 pattern (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++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh -# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py -# *.f90 *.f *.for *.vhd *.vhdl - -FILE_PATTERNS = *.hh \ - *.h - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = YES - -# 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. - -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 - -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 = examples - -# 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 = *.cc *.hh - -# 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. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = YES - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are 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. - -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 -# info on how filters are used. If FILTER_PATTERNS is empty or if -# non 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 be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -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 option only has effect when -# FILTER_SOURCE_FILES is enabled. - -FILTER_SOURCE_PATTERNS = - -#--------------------------------------------------------------------------- -# 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 also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C, C++ and Fortran comments will always remain visible. - -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. - -REFERENCED_BY_RELATION = YES - -# 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. - -REFERENCES_RELATION = YES - -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) -# 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. - -REFERENCES_LINK_SOURCE = 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. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set to YES (the default) 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. - -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. - -ALPHABETICAL_INDEX = YES - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 3 - -# 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 one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -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. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. Note that when using a custom header you are responsible -# for the proper inclusion of any scripts and style sheets that doxygen -# needs, which is dependent on the configuration options used. -# It is advised to generate a default header using "doxygen -w html -# header.html footer.html stylesheet.css YourConfigFile" and then modify -# that header. Note that the header is subject to change so you typically -# have to redo this when upgrading to a newer version of doxygen or when -# changing the value of configuration settings such as GENERATE_TREEVIEW! - -HTML_HEADER = "@CMAKE_SOURCE_DIR@/doc/header.html" - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = "@CMAKE_SOURCE_DIR@/doc/footer.html" - -# 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. Note that it is recommended to use -# HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this -# tag will in the future become obsolete. - -HTML_STYLESHEET = "@CMAKE_SOURCE_DIR@/doc/doxygen.css" - -# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional -# user-defined cascading style sheet that is 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 file to -# the output directory. - -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. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. -# Doxygen will adjust the colors in the style sheet 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. -# The allowed range is 0 to 359. - -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. - -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. - -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. - -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. - -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. - -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, 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. - -GENERATE_DOCSET = NO - -# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the -# 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. - -DOCSET_FEEDNAME = "Ignition ${IGN_PROJECT_NAME} API Documentation" - -# When GENERATE_DOCSET tag is set to YES, 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. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# When GENERATE_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. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, 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. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, 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. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, 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). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING -# is used to encode HtmlHelp index (hhk), content (hhc) and project file -# content. - -CHM_INDEX_ENCODING = - -# If the GENERATE_HTMLHELP tag is set to YES, 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. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -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. - -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. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#namespace - -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 -# http://doc.trolltech.com/qthelpproject.html#virtual-folders - -QHP_VIRTUAL_FOLDER = doc - -# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to -# add. For more information please see -# http://doc.trolltech.com/qthelpproject.html#custom-filters - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see -# -# Qt Help Project / Custom Filters. - -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. - -QHP_SECT_FILTER_ATTRS = - -# If the GENERATE_QHP tag is set to YES, 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. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files -# will be generated, which together with the HTML files, 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. - -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. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) -# at top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. Since the tabs have the same information as the -# navigation tree you can set this option to NO if you already set -# GENERATE_TREEVIEW to YES. - -DISABLE_INDEX = YES - -# 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. -# Since the tree basically has the same information as the tab index you -# could consider to set DISABLE_INDEX to NO when enabling this option. - -GENERATE_TREEVIEW = NO - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values -# (range [0,1..20]) 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. - -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. - -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. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of Latex formulas included -# as images in the HTML documentation. The default is 10. Note that -# 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. - -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 before the changes have effect. - -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. - -USE_MATHJAX = NO - -# 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. - -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest - -# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension -# names that should be enabled during MathJax rendering. - -MATHJAX_EXTENSIONS = - -# 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. - -SEARCHENGINE = YES - -# When the SERVER_BASED_SEARCH tag is enabled the search engine will be -# implemented using a PHP enabled web server instead of at the web client -# using Javascript. Doxygen will generate the search PHP script and index -# file to put on the web server. The advantage of the server -# based approach is that it scales better to large projects and allows -# full text search. The disadvantages are that it is more difficult to setup -# and does not have live searching capabilities. - -SERVER_BASED_SEARCH = NO - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = YES - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. -# Note that when enabling USE_PDFLATEX this option is only used for -# generating bitmaps for formulas in the HTML output, but not in the -# Makefile that is written to the output directory. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = letter - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for -# the generated latex document. The footer should contain everything after -# the last chapter. If it is left blank doxygen will generate a -# standard footer. Notice: only use this tag if you know what you are doing! - -LATEX_FOOTER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = NO - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = YES - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -# If LATEX_SOURCE_CODE is set to YES then doxygen will include -# source code with syntax highlighting in the LaTeX output. -# Note that which sources are shown also depends on other settings -# such as SOURCE_BROWSER. - -LATEX_SOURCE_CODE = NO - -# The LATEX_BIB_STYLE tag can be used to specify the style to use for the -# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See -# http://en.wikipedia.org/wiki/BibTeX for more info. - -LATEX_BIB_STYLE = plain - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load style sheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. -# This is useful -# if you want to understand what is going on. -# On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = YES - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_DEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# pointed to by INCLUDE_PATH will be searched when a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = . - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. To prevent a macro definition from being -# undefined via #undef or recursively expanded use the := operator -# instead of the = operator. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition that -# overrules the definition found in the source code. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all references to function-like macros -# that are alone on a line, have an all uppercase name, and do not end with a -# semicolon, because these will confuse the parser if not removed. - -SKIP_FUNCTION_MACROS = NO - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. For each -# tag file the location of the external documentation should be added. The -# format of a tag file without this location is as follows: -# -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths -# or URLs. Note that each tag file must have a unique name (where the name does -# NOT include the path). If a tag file is not located in the directory in which -# doxygen is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = NO - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base -# or super classes. Setting the tag to NO turns the diagrams off. Note that -# this option also works with HAVE_DOT disabled, but it is recommended to -# install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see -# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the -# documentation. The MSCGEN_PATH tag allows you to specify the directory where -# the mscgen tool resides. If left empty the tool is assumed to be found in the -# default search path. - -MSCGEN_PATH = - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = YES - -# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is -# allowed to run in parallel. When set to 0 (the default) doxygen will -# base this on the number of processors available in the system. You can set it -# explicitly to a value larger than 0 to get control over the balance -# between CPU load and processing speed. - -DOT_NUM_THREADS = 0 - -# By default doxygen will use the Helvetica font for all dot files that -# doxygen generates. When you want a differently looking font you can specify -# the font name using DOT_FONTNAME. You need to make sure dot is able to find -# the font, which can be done by putting it in a standard location or by setting -# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the -# directory containing the font. - -DOT_FONTNAME = FreeSans.ttf - -# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. -# The default size is 10pt. - -DOT_FONTSIZE = 10 - -# By default doxygen will tell dot to use the Helvetica font. -# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to -# set the path where dot can find it. - -DOT_FONTPATH = - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = NO - -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for groups, showing the direct groups dependencies - -GROUP_GRAPHS = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If the UML_LOOK tag is enabled, the fields and methods are shown inside -# the class node. If there are many fields or methods and many nodes the -# graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS -# threshold limits the number of items for each type to make the size more -# managable. Set this to 0 for no limit. Note that the threshold may be -# exceeded by 50% before the limit is enforced. - -UML_LIMIT_NUM_FIELDS = 10 - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT options are set to YES then -# doxygen will generate a call dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable call graphs -# for selected functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then -# doxygen will generate a caller dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable caller -# graphs for selected functions only using the \callergraph command. - -CALLER_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will generate a graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# If the DIRECTORY_GRAPH and HAVE_DOT tags are set to YES -# then doxygen will show the dependencies a directory has on other directories -# in a graphical way. The dependency relations are determined by the #include -# relations between the files in the directories. - -DIRECTORY_GRAPH = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are svg, png, jpg, or gif. -# If left blank png will be used. If you choose svg you need to set -# HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible in IE 9+ (other browsers do not have this requirement). - -DOT_IMAGE_FORMAT = png - -# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to -# enable generation of interactive SVG images that allow zooming and panning. -# Note that this requires a modern browser other than Internet Explorer. -# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you -# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible. Older versions of IE do not have SVG support. - -INTERACTIVE_SVG = NO - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found in the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MSCFILE_DIRS tag can be used to specify one or more directories that -# contain msc files that are included in the documentation (see the -# \mscfile command). - -MSCFILE_DIRS = - -# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of -# nodes that will be shown in the graph. If the number of nodes in a graph -# becomes larger than this value, doxygen will truncate the graph, which is -# visualized by representing a node as a red box. Note that doxygen if the -# number of direct children of the root node in a graph is already larger than -# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note -# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. - -DOT_GRAPH_MAX_NODES = 50 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes -# that lay further from the root node will be omitted. Note that setting this -# option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that the size of a graph can be further restricted by -# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. - -MAX_DOT_GRAPH_DEPTH = 0 - -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, because dot on Windows does not -# seem to support this out of the box. Warning: Depending on the platform used, -# enabling this option may lead to badly anti-aliased labels on the edges of -# a graph (i.e. they become hard to read). - -DOT_TRANSPARENT = NO - -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output -# files in one run (i.e. multiple -o and -T options on the command line). This -# makes dot run faster, but since only newer versions of dot (>1.8.10) -# support this, this feature is disabled by default. - -DOT_MULTI_TARGETS = NO - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES diff --git a/doc/ignition_logo.png b/doc/ignition_logo.png deleted file mode 100644 index 3218631e1cb753320a2f23fb042d3b81b22be0d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3478 zcmV;H4QcX;P)qetS>D_=Mfg^wefl(0cb$2ImwdrqT>EjMAfkbAU5}t+Ohs zLoWmO1NQ+>TJP3It|uxPX0*sCy+3dPa1vqMTLilS-%pPFfaBtpBl6Z(n2pk#0}~0o zvFb`i*;pLA0Fl3z!)%m347df@rF-RMW?}3CME-^hvr&3e;0oY8ps(u{WkbSTL4$_b zC_Nmw7x+p(s>y# zHASHeG|adO_(q3jmLj9o-0HVCs(dMq$5|57p|VNPd`_3q%6t5PeVC2XdjaQX)b8EDmDao2Su|$7TLV0u96vTn zA3zB8Nx)7GZ48Kh*bJW_weaoWm1nQinL*tsg|NJB+Q~`qz&`CSrsBgT7AH_DLyZE+(cpY z0UxFK{C-&#B1Bq!g!#msk}!+H=mVCe`26n4BqbrDOWQN|0YA^E79mne8)krWlC|fA zh^mkDPiAZcOih+25F(mB;GqoK*&nz;0xe?dv)(NR=4a5>8Ngl1!s9~Zt~NRUfsEQa z4tUfky-h~#3DL5w!whf`FxMzu#-+VPiPggVIN@pMtn2{XYn1+DvQ>l-UDpSY%t^km z3+olYE`E+mb#CmT5R|8Y6cWGwsi6&BPo%SLyKI3w_VM*iqg-!PX zG)mt>e#_b}C4_p4_3p!*&e`)Sun*v6*1JpVUl?c`h_irMT`wmX3H%ax%_#i?qx7e8 zIW668fE)B!@7^ZtgPr9Kl~!oN7sZ#1(x=OO z57DYY_w}>heL(1;r{+^mKRW_911}n-%eLc{h+xP~Dy?^)SntjP3}OA{yzK$ZFiQWy zC_OU5`9(>zyyL3%?q*;g;IZzNGpJL51xD#}jM8PT}udg;rKTrRFKQDJd)9X0QHP$-^oNbi;1#mfVGN977+rx$f2P8+$$42S-gkV1b z+-<#kFGg`?*7SCE8b;~;2s>A$-SDT%)&h?LchX_7Q{2vepYRW==v7#I!w z*(m*-QTkg(Y58u_MAv&v>)itD-8f)Z!fk5#qSLv3fm;cavc7ASPW_#ym*n>2-+K4D z_3m84_Q2NwYw|jG4;lsh3V7BieMIbHiX!*1to3f0_3lT6>%=qiK7Wtd8<=U7{=HE; z&7$!=A=(!+>)lJ%yQ6^)k5r-Nl3-n~%n>r{pdq?9G^Fdyi5oM3`%=cP|4+5oi8%FF69ZBz6&b zD^!@F-~8zbgxPAMGnJcCP`EJHSnnnh0xd*K3LECc)xd+XixA~d=rAX9r%wZx4E0_i z3LRzu>)pSp;FlTEzQTt&aXVpZq7VZrMVOOiyM7b94pD5S2y^20*ae7UD^r;Bd>UJn zP-()Pd=dO0b{(R)N)zV9>#++E#Z|U2OV2C@RJJhh7`p&bT%`$fvIzNSV%H&xt2ALo zdSx+$GKKkoq2D5^tW04(BX$9z*h&#*qx9auVX^BF#a4s{*IX^qlH5^po3N~-UfPY0G6rSCUNf7>Yi=@)*5La1GTNr)@9V@I$(A3`(ecUZ>x;;+dvqlUm&b<--<=RY{GD0Ht=jKyCoT= zhXXqk79Ky8u$j+JZC9PW3CW@}U15~Il=3`bUfOLS8iyIJ+9f$oN&dXnD7_ST8+fPg zSdp~53n9RxDDV{&QEtNkjM7^WmPGB;#)M%?<4{G2+|+u>c6wzY3aJ)m=}|@L)yB+K z@0o`gr8iA}zdBjtE)}D6AK{7+WUv#i7@7<-g3EyqljER_+C03j&5JW?Qw&1FEP957 zS@euDg?Sw?9htl%22cz0Xy7}*U4$DQMe<)@60ocF?gZea$n}VV8U|p!TLRn!+>~rG zekgDZ@KwTgW_eo;JOSJb+-kkc^B>q%M(KWQL0j(z-7L~5eKO(Je7&;H!!GR|+6^ul zS?|^YGn3<@d7o!Ne+y^J_y;YqLk>*T;F zy%Vrc-LV&;7ut&dUsr8r4X_e$z{1AEdKY_T{Of_q9e#E)aK`|DcL8AtR~DZP{gz^C z`(L5;ZZWW!Fa+qwD7_gW)FTN0Q&tidJ6vhK`#43NX-x$F0Sq>?Z-Mo0K_`tTQ(~J= zi#1A5V(=ZaHU$m=zSqgQyI^hX0y>rHj}+_ODqt1xuPocmz~k1thhv=BdN&W4H`sfO z(omc*zZbiJPL+1BFS^FXE}&BqX3=PA>;gI^VHS-f%%W$=Fhlf=()P@yy+EE;@^I}j zbuV>%X>N$~>;>#z_tFE&jj5t4ZO>fUFcYqaPp|v)Wx%CfIL~RoMGfbTzG~DUO4~Eb zFhkT^5pfzpY7%Bque3u9kT8q>N;|{=3A5<$&DaH`Az>Evo{C*S8WLtv?{BdSNJGLb zYE}aOj9o+;RS5Gvz$;B&UkOajxt8l`KBxKx;DMZLX*A1vSK5jBP>nF(ZN1wd%+|Y= zz?7V8ncQsYU+diq!2LPb(&)*^=TEH)VHT~qFLnWGRpEB__++!3X130=5a3Fq^g!Eb z?2&6F{VlTIJrnW#nW#dT4^56D7<9>kh^ECZAPX|g5YQuGu0qe;s!NR0vj%$b)hK;F zaBaiO%dB@J2WrqLJ&WvC744Q+dSQqG(lZPARqO(?B4Mt!_kf#Y7m*bSbG1#e-hB|e zh^$DMt7|oIUF;&VBw?_TrC$^@1BcYM7Kzot7Dq=?uOV!bd!X+8WsWLV;9kF66W6b z4lp|B9lN5CF!#3Qz|q#bg|Q3CgM_(veFz+Dy?ZuxA$gH7_oh|A@z%T2Kcw0YnVjEy zmJ`OvrC!jb6B6d$@(y8)T$!OoJqdH~SOR>xDqr@Rkuh^`co;ai%0UL{nagek;TE-x zT}Tl~n9FMhFy4As>NSbI3R->YnA~& zwcg#7VVgZcd0(#CfJW&lz?m60yU=>KXN%|m2pCS7;6Aa1_n!>hp0YlG=YUDT?bf?B z8MN1Pq-QR+`Gloz@2=u?<911yi{({dF7O0l^UK#F*HbDI=KOsEyhYdyXE9;;Fc)~n zdROGlE(=e>+`d)7TAHtb-^?7~WI}k~09@Hus4uGj0k9gAV%_3Ji2wiq07*qoM6N<$ Ef?jK%Bme*a diff --git a/doc/ignition_logo.svg b/doc/ignition_logo.svg deleted file mode 100644 index d6cd824..0000000 --- a/doc/ignition_logo.svg +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/doc/mainpage.html b/doc/mainpage.html deleted file mode 100644 index 377051b..0000000 --- a/doc/mainpage.html +++ /dev/null @@ -1,16 +0,0 @@ -/** \mainpage Ignition: Tools Reference - -This documentation provides useful information about the Ingition tools. -Should you find problems with this documentation - typos, unclear phrases, -or insufficient detail - please create a new GitHub issue. -Include sufficient detail to quickly locate the problematic documentation, -and set the issue's fields accordingly: Assignee - blank; Kind - bug; -Priority - minor; Version - blank. - -
-
Class
-
List - Index of all classes, organized alphabetically
-
- -*/ diff --git a/doc/search.js b/doc/search.js deleted file mode 100644 index b01927e..0000000 --- a/doc/search.js +++ /dev/null @@ -1,817 +0,0 @@ -// Search script generated by doxygen -// Copyright (C) 2009 by Dimitri van Heesch. - -// The code in this file is loosly based on main.js, part of Natural Docs, -// which is Copyright (C) 2003-2008 Greg Valure -// Natural Docs is licensed under the GPL. - -var indexSectionsWithContent = -{ - 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111111110001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000101101110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111110000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101111111101110111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100010010000000101000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111010010101100101111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 9: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 10: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011010100000101001110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 11: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" -}; - -var indexSectionNames = -{ - 0: "all", - 1: "classes", - 2: "namespaces", - 3: "files", - 4: "functions", - 5: "variables", - 6: "typedefs", - 7: "enums", - 8: "enumvalues", - 9: "related", - 10: "groups", - 11: "pages" -}; - -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var hexCode; - if (code<16) - { - hexCode="0"+code.toString(16); - } - else - { - hexCode=code.toString(16); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') - { - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches.html'; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName == 'DIV' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName == 'DIV' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e/${executable_name}) configure_file(gz.in ${gz_script_configured}) file(GENERATE OUTPUT ${gz_script_generated} INPUT ${gz_script_configured}) -install (PROGRAMS ${gz_script_generated} DESTINATION ${BIN_INSTALL_DIR}) +install (PROGRAMS ${gz_script_generated} DESTINATION ${IGN_BIN_INSTALL_DIR}) if(WIN32) # On Windows also install the executable as gz # to permit to invoke gz via Git Bash # see https://github.com/gazebosim/gz-tools/issues/70 - install(PROGRAMS ${gz_script_generated} DESTINATION ${BIN_INSTALL_DIR} RENAME gz) + install(PROGRAMS ${gz_script_generated} DESTINATION ${IGN_BIN_INSTALL_DIR} RENAME gz) # On Windows also install the gz.bat wrapper script to permit to # invoke gz via Command Prompt or Powershell - install(PROGRAMS gz.bat DESTINATION ${BIN_INSTALL_DIR}) + install(PROGRAMS gz.bat DESTINATION ${IGN_BIN_INSTALL_DIR}) # TODO(chapulina) tick-tock ign on Windows if someone actually needs it. It's # complicated to symlink / copy files on Windows. @@ -73,9 +71,9 @@ else() # TODO(CH3): Deprecated. Tick-tock the ign executable with symlink # This is exceptionally scuffed install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink - ${CMAKE_INSTALL_PREFIX}/${BIN_INSTALL_DIR}/gz + ${CMAKE_INSTALL_PREFIX}/${IGN_BIN_INSTALL_DIR}/gz ${PROJECT_BINARY_DIR}/ign)") - install(PROGRAMS ${PROJECT_BINARY_DIR}/ign DESTINATION ${BIN_INSTALL_DIR}) + install(PROGRAMS ${PROJECT_BINARY_DIR}/ign DESTINATION ${IGN_BIN_INSTALL_DIR}) endif() #=============================================================================== @@ -116,7 +114,7 @@ if(BUILD_TESTING) "${CMAKE_CURRENT_BINARY_DIR}/${TEST_NAME}_fail.xml" @ONLY) - # This simply executes ign. The output will be tested in the check_* test + # This simply executes gz. The output will be tested in the check_* test add_test( NAME ${TEST_NAME} COMMAND ${CMAKE_COMMAND} @@ -130,6 +128,11 @@ if(BUILD_TESTING) PROPERTIES ENVIRONMENT "GZ_CONFIG_PATH=${yaml_output_dir}/$" ) + + if (RUBOCOP_PROGRAM) + add_test(NAME rubocop + COMMAND ${RUBOCOP_PROGRAM} -E -c ${CMAKE_CURRENT_SOURCE_DIR}/../tools/.rubocop.yml ${CMAKE_CURRENT_SOURCE_DIR}) + endif() endif() # END TEST #============================== diff --git a/src/backward.cc b/src/backward.cc index 240c0ff..e01acfd 100644 --- a/src/backward.cc +++ b/src/backward.cc @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2021 Open Source Robotics Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + #include "backward.hpp" namespace gz { diff --git a/tools/.rubocop.yml b/tools/.rubocop.yml index 9fb8955..4a9482c 100644 --- a/tools/.rubocop.yml +++ b/tools/.rubocop.yml @@ -1,6 +1,6 @@ AllCops: Include: - - '**/src/ign.in' + - '**/src/gz.in' Metrics/BlockLength: Max: 80 diff --git a/tools/code_check.sh b/tools/code_check.sh deleted file mode 100644 index d175ee4..0000000 --- a/tools/code_check.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -BASEDIR=$(dirname "$0") -rubocop -E -c $BASEDIR/.rubocop.yml $BASEDIR/../src diff --git a/tutorials.md.in b/tutorials.md.in new file mode 100644 index 0000000..d26cb01 --- /dev/null +++ b/tutorials.md.in @@ -0,0 +1,15 @@ +\page tutorials Tutorials + +Welcome to the Gazebo @IGN_DESIGNATION_CAP@ tutorials. These tutorials +will guide you through the process of understanding the capabilities of the +Gazebo @IGN_DESIGNATION_CAP@ library and how to use the library effectively. + +**The tutorials** + +1. \subpage install "Installation" + +## License + +The code associated with this documentation is licensed under an [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0). + +This documentation is licensed under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/). diff --git a/tutorials/install.md b/tutorials/install.md new file mode 100644 index 0000000..aeb7262 --- /dev/null +++ b/tutorials/install.md @@ -0,0 +1,242 @@ +\page install Installation + +## Overview + +These instructions are for installing only Gazebo Tools. +If you're interested in using all the Ignition libraries, check out this [Ignition installation](https://gazebosim.org/docs/latest/install). + +We recommend following the Binary Installation instructions to get up and running as quickly and painlessly as possible. + +The Source Installation instructions should be used if you need the very latest software improvements, you need to modify the code, or you plan to make a contribution. + +# Binary Installation + +## Ubuntu Linux + +Setup your computer to accept software from +*packages.osrfoundation.org*: +``` +sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list' +``` + +Setup keys: +``` +wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add - +``` + +Install Gazebo Tools: +``` +sudo apt-get update +sudo apt-get install libgz-tools<#>-dev +``` + +Be sure to replace `<#>` with a number value, such as 1 or 2, depending on +which version you need. + +### macOS + +On macOS, add OSRF packages: + ``` + ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" + brew tap osrf/simulation + ``` + +Install Gazebo Tools: + ``` + brew install gz-tools<#> + ``` + +Be sure to replace `<#>` with a number value, such as 1 or 2, depending on +which version you need. + +## Windows + +Install [Conda package management system](https://docs.conda.io/projects/conda/en/latest/user-guide/install/download.html). +Miniconda suffices. + +Create if necessary, and activate a Conda environment: +``` +conda create -n gz-ws +conda activate gz-ws +``` + +Install: +``` +conda install libgz-tools<#> --channel conda-forge +``` + +Be sure to replace `<#>` with a number value, such as 1 or 2, depending on +which version you need. + +# Source Installation + +Source installation can be performed by first installing the necessary +prerequisites followed by building from source. + +## Prerequisites + +Gazebo Tools requires: + +* [Gazebo CMake](https://gazebosim.org/libs/cmake) + +* [Ruby](https://www.ruby-lang.org/). Refer to the [Ruby Documentation](https://www.ruby-lang.org/downloads/) for installation instructions. On Ubuntu systems `apt-get` can be used to install Ubuntu Package `ruby-dev`: + +### Ubuntu Linux + +``` +sudo apt-get install ruby-dev libgz-cmake<#>-dev +``` + +### Windows 10 + +First, follow the [gz-cmake](https://github.com/gazebosim/gz-cmake) tutorial for installing Conda, Visual Studio, CMake, and other prerequisites, and also for creating a Conda environment. + +## Building from Source + +### Ubuntu + +1. Install tools + ``` + sudo apt install -y build-essential cmake git gnupg lsb-release wget + ``` + +2. Install dependencies + ``` + sudo apt -y install \ + $(sort -u $(find . -iname 'packages-'`lsb_release -cs`'.apt' -o -iname 'packages.apt' | tr '\n' ' ')) + ``` + +3. Clone the repository + ``` + git clone https://github.com/gazebosim/gz-tools -b gz-tools<#> + ``` + Be sure to replace `<#>` with a number value, such as 1 or 2, depending on + which version you need. + +4. Configure and build + ``` + cd gz-tools + mkdir build + cd build + cmake .. + make + ``` + +5. Optionally, install + ``` + sudo make install + ``` + +### macOS + +1. Clone the repository + ``` + git clone https://github.com/gazebosim/gz-tools -b gz-tools<#> + ``` + Be sure to replace `<#>` with a number value, such as 1 or 2, depending on + which version you need. + +2. Install dependencies + ``` + brew install --only-dependencies gz-tools<#> + ``` + Be sure to replace `<#>` with a number value, such as 1 or 2, depending on + which version you need. + +3. Configure and build + ``` + cd gz-tools + mkdir build + cd build + cmake .. + make + ``` + +4. Optionally, install + ``` + sudo make install + ``` + +### Windows + +1. Navigate to `condabin` if necessary to use the `conda` command (i.e., if Conda is not in your `PATH` environment variable. You can find the location of `condabin` in Anaconda Prompt, `where conda`). + Activate the Conda environment created in the prerequisites: + ``` + conda activate gz-ws + ``` + +2. Install dependencies + + You can view available versions and their dependencies: + ``` + conda search libgz-tools* --channel conda-forge --info + ``` + See the [Conda release repository](https://github.com/conda-forge/libgz-tools4-feedstock) for more information. + + Install dependencies, replacing `<#>` with the desired version: + ``` + conda install libgz-cmake<#> --channel conda-forge + ``` + +3. Navigate to where you would like to build the library, and clone the repository. + ``` + # Optionally, append `-b gz-tools#` (replace # with a number) to check out a specific version + git clone https://github.com/gazebosim/gz-tools.git + ``` + +4. Configure and build + ``` + cd gz-tools + mkdir build + cd build + cmake .. -DBUILD_TESTING=OFF # Optionally, -DCMAKE_INSTALL_PREFIX=path\to\install + cmake --build . --config Release + ``` + +5. Optionally, install + ``` + cmake --install . --config Release + ``` + +# Documentation + +API and tutorials can be found at [https://gazebosim.org/libs/tools](https://gazebosim.org/libs/tools). + +You can also generate the documentation from a clone of this repository by following these steps. + +1. You will need Doxygen. On Ubuntu Doxygen can be installed using + ``` + sudo apt-get install doxygen + ``` + +2. Clone the repository + ``` + git clone https://github.com/gazebosim/gz-tools + ``` + +3. Configure and build the documentation. + ``` + cd gz-tools; mkdir build; cd build; cmake ../; make doc + ``` + +4. View the documentation by running the following command from the build directory. + ``` + firefox doxygen/html/index.html + ``` + +# Testing + +Follow these steps to run tests and static code analysis in your clone of this repository. + +1. Follow the [source install instruction](https://gazebosim.org/libs/tools#source-install). + +2. Run tests. + ``` + make test + ``` + +3. Static code checker. + ``` + make codecheck + ``` + From 6d04d74155cdda78c5dc16c3ee963a3bb781e1ec Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 14:41:47 -0700 Subject: [PATCH 2/6] satisfy rubocop on Jammy Signed-off-by: Louise Poubel --- src/gz.in | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gz.in b/src/gz.in index 0ca0ff1..14f413c 100755 --- a/src/gz.in +++ b/src/gz.in @@ -1,4 +1,5 @@ #!/usr/bin/env ruby +# frozen_string_literal: true # Copyright (C) 2019 Open Source Robotics Foundation # From 00f94edc6529da8f9f903ec7118b02057bdabd1f Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 14:44:14 -0700 Subject: [PATCH 3/6] Migration Signed-off-by: Louise Poubel --- Migration.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Migration.md b/Migration.md index ca005cf..741883e 100644 --- a/Migration.md +++ b/Migration.md @@ -7,5 +7,6 @@ release will remove the deprecated code. ## Gazebo Tools 1.X to 2.X +* This package now depends on gz-cmake * The environment variable `IGN_CONFIG_PATH` is deprecated. Use `GZ_CONFIG_PATH` instead. * The `ign` command line executable is deprecated. Use `gz` instead. From 7c542ec0ff160440758b91defe8fd94b88ecf7f7 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 14:49:35 -0700 Subject: [PATCH 4/6] satisfy rubocop on Jammy Signed-off-by: Louise Poubel --- src/gz.in | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gz.in b/src/gz.in index 14f413c..eb1fc4f 100755 --- a/src/gz.in +++ b/src/gz.in @@ -50,9 +50,8 @@ yaml_found = false conf_dirs = '@CMAKE_INSTALL_PREFIX@/share/ignition/' conf_dirs = ENV['GZ_CONFIG_PATH'] if ENV.key?('GZ_CONFIG_PATH') -if ENV.key?('IGN_CONFIG_PATH') - conf_dirs = conf_dirs + '@ENV_PATH_DELIMITER@' + ENV['IGN_CONFIG_PATH'] -end +# Deprecated +conf_dirs = conf_dirs + '@ENV_PATH_DELIMITER@' + ENV['IGN_CONFIG_PATH'] if ENV.key?('IGN_CONFIG_PATH') conf_dirs = conf_dirs.split('@ENV_PATH_DELIMITER@') @@ -69,7 +68,7 @@ conf_dirs.each do |conf_directory| yml = YAML.load_file(conf_file) # Sanity check: Verify that the content of the file is YAML. - unless yml && yml.is_a?(Hash) + unless yml&.is_a?(Hash) puts "Configuration warning: File [#{conf_file}] does not contain a "\ 'valid YAML format. Ignoring this configuration file.' next @@ -93,6 +92,7 @@ conf_dirs.each do |conf_directory| # Verify that the value for this key is not empty. next if yml[tag] + puts "Configuration error: File [#{conf_file}] does not contain any "\ "value for the key '#{tag}'." exit(-1) @@ -263,6 +263,7 @@ if ARGV.include?('--force-version') version_arr = version.first.split('.') next unless required_arr.zip(version_arr).map \ { |required, current| required == current }.all? + found = true version_index = index break From 63c5a8ed9a276658850b994605edba99e06246c5 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 15:01:44 -0700 Subject: [PATCH 5/6] Fix Ruby on Focal Signed-off-by: Louise Poubel --- src/gz.in | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/gz.in b/src/gz.in index eb1fc4f..4b30fc1 100755 --- a/src/gz.in +++ b/src/gz.in @@ -50,11 +50,11 @@ yaml_found = false conf_dirs = '@CMAKE_INSTALL_PREFIX@/share/ignition/' conf_dirs = ENV['GZ_CONFIG_PATH'] if ENV.key?('GZ_CONFIG_PATH') -# Deprecated -conf_dirs = conf_dirs + '@ENV_PATH_DELIMITER@' + ENV['IGN_CONFIG_PATH'] if ENV.key?('IGN_CONFIG_PATH') - conf_dirs = conf_dirs.split('@ENV_PATH_DELIMITER@') +# Deprecated +conf_dirs.append(ENV['IGN_CONFIG_PATH']) if ENV.key?('IGN_CONFIG_PATH') + conf_dirs.each do |conf_directory| next if Dir.glob(conf_directory + '/*.yaml').empty? @@ -68,7 +68,9 @@ conf_dirs.each do |conf_directory| yml = YAML.load_file(conf_file) # Sanity check: Verify that the content of the file is YAML. - unless yml&.is_a?(Hash) + # safe navigation only available from Ubuntu Jammy + # rubocop:disable-next-line Style/SafeNavigation + unless yml && yml.is_a?(Hash) puts "Configuration warning: File [#{conf_file}] does not contain a "\ 'valid YAML format. Ignoring this configuration file.' next From 558b8818bb37f4458194f6973d9cb88a0797da34 Mon Sep 17 00:00:00 2001 From: Louise Poubel Date: Tue, 21 Jun 2022 15:05:55 -0700 Subject: [PATCH 6/6] Disable SafeNavigation at the top level Signed-off-by: Louise Poubel --- src/gz.in | 2 -- tools/.rubocop.yml | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gz.in b/src/gz.in index 4b30fc1..17dff2d 100755 --- a/src/gz.in +++ b/src/gz.in @@ -68,8 +68,6 @@ conf_dirs.each do |conf_directory| yml = YAML.load_file(conf_file) # Sanity check: Verify that the content of the file is YAML. - # safe navigation only available from Ubuntu Jammy - # rubocop:disable-next-line Style/SafeNavigation unless yml && yml.is_a?(Hash) puts "Configuration warning: File [#{conf_file}] does not contain a "\ 'valid YAML format. Ignoring this configuration file.' diff --git a/tools/.rubocop.yml b/tools/.rubocop.yml index 4a9482c..da72602 100644 --- a/tools/.rubocop.yml +++ b/tools/.rubocop.yml @@ -4,3 +4,6 @@ AllCops: Metrics/BlockLength: Max: 80 + +Style/SafeNavigation: + Enabled: false