From 198e4448dc6e1f2374b783d62ac834fa26c49971 Mon Sep 17 00:00:00 2001 From: Ian Bell <ian.bell@nist.gov> Date: Mon, 7 Nov 2022 10:46:29 -0500 Subject: [PATCH] Extract more things Closes #25 --- Doxyfile | 10 ++++++---- doc/source/cpp/index.rst | 9 +++++++++ doc/source/index.rst | 1 + 3 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 doc/source/cpp/index.rst diff --git a/Doxyfile b/Doxyfile index da05018..1569ea4 100644 --- a/Doxyfile +++ b/Doxyfile @@ -499,7 +499,7 @@ NUM_PROC_THREADS = 1 # normally produced when WARNINGS is set to YES. # The default value is: NO. -EXTRACT_ALL = NO +EXTRACT_ALL = YES # If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will # be included in the documentation. @@ -908,7 +908,8 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = include +INPUT = include \ + interface/CPP # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses @@ -993,7 +994,8 @@ FILE_PATTERNS = *.c \ *.vhdl \ *.ucf \ *.qsf \ - *.ice + *.ice \ + *.cxx # The RECURSIVE tag can be used to specify whether or not subdirectories should # be searched for input files as well. @@ -2322,7 +2324,7 @@ ENABLE_PREPROCESSING = YES # The default value is: NO. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -MACRO_EXPANSION = NO +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 diff --git a/doc/source/cpp/index.rst b/doc/source/cpp/index.rst new file mode 100644 index 0000000..1be428a --- /dev/null +++ b/doc/source/cpp/index.rst @@ -0,0 +1,9 @@ +C++ interface +=============== + +Introduction +------------ + +The abstract base class defining the public C++ interface of teqp is documented in :teqp:`AbstractModel`. This interface was developed because re-compilation of the core of ``teqp`` is VERY slow, due to the heavy use of templates, which makes the code very flexible, but difficult to work with when doing development. Especially users that would like to only use the library but not be forced to pay the price of recompilation benefit from this approach. + +The models that are allowed in this abstract interface are defined in :teqp:`AllowedModels`. A new model instance can be created by passing properly formatted JSON data structure to the :teqp:`make_model` function. \ No newline at end of file diff --git a/doc/source/index.rst b/doc/source/index.rst index 24647d1..3331d72 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -6,6 +6,7 @@ Welcome to teqp's documentation! :caption: Contents: getting_started/index + cpp/index models/index derivs/index algorithms/index -- GitLab