mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-06-05 20:30:41 +02:00
added documentation
This commit is contained in:
parent
b1b020ad60
commit
54dd88f070
@ -21,11 +21,16 @@ include(FetchContent)
|
|||||||
include(cmake/helpers.cmake)
|
include(cmake/helpers.cmake)
|
||||||
default_build_type("Release")
|
default_build_type("Release")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
|
||||||
|
|
||||||
option(AARE_USE_WARNINGS "Enable warnings" ON)
|
option(AARE_USE_WARNINGS "Enable warnings" ON)
|
||||||
option(AARE_PYTHON_BINDINGS "Build python bindings" ON)
|
option(AARE_PYTHON_BINDINGS "Build python bindings" ON)
|
||||||
option(AARE_TESTS "Build tests" ON)
|
option(AARE_TESTS "Build tests" ON)
|
||||||
option(AARE_EXAMPLES "Build examples" ON)
|
option(AARE_EXAMPLES "Build examples" ON)
|
||||||
option(AARE_IN_GITHUB_ACTIONS "Running in Github Actions" OFF)
|
option(AARE_IN_GITHUB_ACTIONS "Running in Github Actions" OFF)
|
||||||
|
option(AARE_DOCS "Build documentation" OFF)
|
||||||
|
|
||||||
option(AARE_FETCH_FMT "Use FetchContent to download fmt" ON)
|
option(AARE_FETCH_FMT "Use FetchContent to download fmt" ON)
|
||||||
option(AARE_FETCH_PYBIND11 "Use FetchContent to download pybind11" ON)
|
option(AARE_FETCH_PYBIND11 "Use FetchContent to download pybind11" ON)
|
||||||
@ -217,7 +222,9 @@ target_include_directories(aare INTERFACE
|
|||||||
|
|
||||||
# add_subdirectory(examples)
|
# add_subdirectory(examples)
|
||||||
|
|
||||||
|
if(AARE_DOCS)
|
||||||
|
add_subdirectory(docs)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# custom target to run check formatting with clang-format
|
# custom target to run check formatting with clang-format
|
||||||
|
11
cmake/FindSphinx.cmake
Normal file
11
cmake/FindSphinx.cmake
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#Look for an executable called sphinx-build
|
||||||
|
find_program(SPHINX_EXECUTABLE
|
||||||
|
NAMES sphinx-build sphinx-build-3.6
|
||||||
|
DOC "Path to sphinx-build executable")
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
#Handle standard arguments to find_package like REQUIRED and QUIET
|
||||||
|
find_package_handle_standard_args(Sphinx
|
||||||
|
"Failed to find sphinx-build executable"
|
||||||
|
SPHINX_EXECUTABLE)
|
58
docs/CMakeLists.txt
Normal file
58
docs/CMakeLists.txt
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
find_package(Doxygen REQUIRED)
|
||||||
|
find_package(Sphinx REQUIRED)
|
||||||
|
|
||||||
|
#Doxygen
|
||||||
|
set(DOXYGEN_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in)
|
||||||
|
set(DOXYGEN_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
|
||||||
|
configure_file(${DOXYGEN_IN} ${DOXYGEN_OUT} @ONLY)
|
||||||
|
|
||||||
|
#Sphinx
|
||||||
|
set(SPHINX_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||||
|
set(SPHINX_BUILD ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
|
set(SPHINX_SOURCE_FILES
|
||||||
|
src/index.rst
|
||||||
|
src/NDArray.rst
|
||||||
|
src/NDView.rst
|
||||||
|
src/Frame.rst
|
||||||
|
src/Dtype.rst
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(filename ${SPHINX_SOURCE_FILES})
|
||||||
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${filename}
|
||||||
|
"${SPHINX_BUILD}/${filename}")
|
||||||
|
endforeach(filename ${SPHINX_SOURCE_FILES})
|
||||||
|
|
||||||
|
configure_file(
|
||||||
|
"${CMAKE_CURRENT_SOURCE_DIR}/conf.py.in"
|
||||||
|
"${SPHINX_BUILD}/conf.py"
|
||||||
|
@ONLY
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
configure_file(
|
||||||
|
"${CMAKE_CURRENT_SOURCE_DIR}/static/extra.css"
|
||||||
|
"${SPHINX_BUILD}/static/css/extra.css"
|
||||||
|
@ONLY
|
||||||
|
)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
docs
|
||||||
|
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_OUT}
|
||||||
|
COMMAND ${SPHINX_EXECUTABLE} -a -b html
|
||||||
|
-Dbreathe_projects.aare=${CMAKE_CURRENT_BINARY_DIR}/xml
|
||||||
|
-c "${SPHINX_BUILD}"
|
||||||
|
${SPHINX_BUILD}/src
|
||||||
|
${SPHINX_BUILD}/html
|
||||||
|
COMMENT "Generating documentation with Sphinx"
|
||||||
|
)
|
||||||
|
|
||||||
|
add_custom_target(
|
||||||
|
rst
|
||||||
|
COMMAND ${SPHINX_EXECUTABLE} -a -b html
|
||||||
|
-Dbreathe_projects.aare=${CMAKE_CURRENT_BINARY_DIR}/xml
|
||||||
|
-c "${SPHINX_BUILD}"
|
||||||
|
${SPHINX_BUILD}/src
|
||||||
|
${SPHINX_BUILD}/html
|
||||||
|
COMMENT "Generating documentation with Sphinx"
|
||||||
|
)
|
2482
docs/Doxyfile.in
Normal file
2482
docs/Doxyfile.in
Normal file
File diff suppressed because it is too large
Load Diff
66
docs/conf.py.in
Normal file
66
docs/conf.py.in
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
# Configuration file for the Sphinx documentation builder.
|
||||||
|
#
|
||||||
|
# This file only contains a selection of the most common options. For a full
|
||||||
|
# list see the documentation:
|
||||||
|
# http://www.sphinx-doc.org/en/master/config
|
||||||
|
|
||||||
|
# -- Path setup --------------------------------------------------------------
|
||||||
|
|
||||||
|
# If extensions (or modules to document with autodoc) are in another directory,
|
||||||
|
# add these directories to sys.path here. If the directory is relative to the
|
||||||
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||||
|
#
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
# sys.path.insert(0, os.path.abspath('.'))
|
||||||
|
sys.path.insert(0, os.path.abspath('../bin/'))
|
||||||
|
#sys.path.insert(0, '/home/l_frojdh/sls/build/bin')
|
||||||
|
#sys.path.insert(0, @CMAKE_CURRENT_BINARY_DIR@)
|
||||||
|
print(sys.path)
|
||||||
|
|
||||||
|
# -- Project information -----------------------------------------------------
|
||||||
|
|
||||||
|
project = 'aare'
|
||||||
|
copyright = '2024, CPS Detector Group'
|
||||||
|
author = 'CPS Detector Group'
|
||||||
|
version = '@PROJECT_VERSION@'
|
||||||
|
|
||||||
|
# -- General configuration ---------------------------------------------------
|
||||||
|
|
||||||
|
# Add any Sphinx extension module names here, as strings. They can be
|
||||||
|
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
||||||
|
# ones.
|
||||||
|
extensions = ['breathe',
|
||||||
|
'sphinx_rtd_theme',
|
||||||
|
'sphinx.ext.autodoc',
|
||||||
|
'sphinx.ext.napoleon',
|
||||||
|
]
|
||||||
|
|
||||||
|
breathe_default_project = "aare"
|
||||||
|
napoleon_use_ivar = True
|
||||||
|
|
||||||
|
|
||||||
|
# Add any paths that contain templates here, relative to this directory.
|
||||||
|
templates_path = ['_templates']
|
||||||
|
|
||||||
|
# List of patterns, relative to source directory, that match files and
|
||||||
|
# directories to ignore when looking for source files.
|
||||||
|
# This pattern also affects html_static_path and html_extra_path.
|
||||||
|
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
|
||||||
|
|
||||||
|
|
||||||
|
# -- Options for HTML output -------------------------------------------------
|
||||||
|
|
||||||
|
# The theme to use for HTML and HTML Help pages. See the documentation for
|
||||||
|
# a list of builtin themes.
|
||||||
|
#
|
||||||
|
html_theme = "furo"
|
||||||
|
|
||||||
|
# Add any paths that contain custom static files (such as style sheets) here,
|
||||||
|
# relative to this directory. They are copied after the builtin static files,
|
||||||
|
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||||
|
html_static_path = ['static']
|
||||||
|
|
||||||
|
|
||||||
|
def setup(app):
|
||||||
|
app.add_css_file('css/extra.css') # may also be an URL
|
5
docs/src/Dtype.rst
Normal file
5
docs/src/Dtype.rst
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Dtype
|
||||||
|
=============
|
||||||
|
|
||||||
|
|
||||||
|
.. doxygenfile:: Dtype.hpp
|
5
docs/src/Frame.rst
Normal file
5
docs/src/Frame.rst
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Frame
|
||||||
|
=============
|
||||||
|
|
||||||
|
|
||||||
|
.. doxygenfile:: Frame.hpp
|
5
docs/src/NDArray.rst
Normal file
5
docs/src/NDArray.rst
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
NDArray
|
||||||
|
=============
|
||||||
|
|
||||||
|
|
||||||
|
.. doxygenfile:: NDArray.hpp
|
5
docs/src/NDView.rst
Normal file
5
docs/src/NDView.rst
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
NDView
|
||||||
|
=============
|
||||||
|
|
||||||
|
|
||||||
|
.. doxygenfile:: NDView.hpp
|
15
docs/src/index.rst
Normal file
15
docs/src/index.rst
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
AARE
|
||||||
|
==============================================
|
||||||
|
|
||||||
|
.. note ::
|
||||||
|
|
||||||
|
Hello
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:caption: C++ API
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
NDArray
|
||||||
|
NDView
|
||||||
|
Frame
|
||||||
|
Dtype
|
4
docs/static/extra.css
vendored
Normal file
4
docs/static/extra.css
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
/* override table no-wrap */
|
||||||
|
.wy-table-responsive table td, .wy-table-responsive table th {
|
||||||
|
white-space: normal;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user