vtk-m/docs/users-guide
Kenneth Moreland 310579b9a7 Load options from environment variables
Some common VTK-m options such as the device and log level could be
specified on the command line but not through environment variables. It is
not always possible to set VTK-m command line options, so environment
variables are added.

Also added documentation to the user's guide about what options are
available and how to set them.
2024-07-02 12:47:34 -04:00
..
_ext Update the developing algorithms section of the user's guide 2023-12-08 08:50:18 -05:00
examples Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
images Add reference documentation for Worklet types 2024-01-29 12:26:08 -05:00
acknowledgements.rst Update version, acknowledgements, and other meta information 2024-06-28 13:42:23 -04:00
advanced-types.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
base-types.rst Add advanced types chapter to user's guide 2023-12-18 14:22:40 -07:00
basic-array-handles.rst Add user guide chapter on memory layout in ArrayHandles 2024-05-13 08:12:22 -06:00
basic-filter-impl.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
building.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
CMakeLists.txt Allow turning off todo notes in user's guide 2023-10-24 15:47:17 +11:00
color-table-presets.rst Continue transfer of Users' Guide text 2023-11-21 10:33:45 -07:00
conf.py Update version, acknowledgements, and other meta information 2024-06-28 13:42:23 -04:00
dataset.rst Add guide chapter on fancy array handles 2024-06-05 17:51:14 -04:00
error-handling.rst Add worklet error handling section to users guide 2024-02-13 08:42:04 +09:00
extended-filter-impl.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
fancy-array-handles.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
general-approach.rst Update the developing algorithms section of the user's guide 2023-12-08 08:50:18 -05:00
genindex.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
implicit-functions.rst Update the developing algorithms section of the user's guide 2023-12-08 08:50:18 -05:00
index.rst Update version, acknowledgements, and other meta information 2024-06-28 13:42:23 -04:00
initialization.rst Load options from environment variables 2024-07-02 12:47:34 -04:00
introduction.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
io.rst Add advanced types chapter to user's guide 2023-12-18 14:22:40 -07:00
license.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
logging.rst Add documentation of logging 2024-01-04 15:25:07 -05:00
managing-devices.rst Update the developing algorithms section of the user's guide 2023-12-08 08:50:18 -05:00
math.rst Add math section to users guide 2024-02-20 11:03:04 +09:00
memory-layout.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
part-advanced.rst Add guide chapter on fancy array handles 2024-06-05 17:51:14 -04:00
part-appendix.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
part-core.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
part-developing.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
part-getting-started.rst Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
part-using.rst Continue transfer of Users' Guide text 2023-11-21 10:33:45 -07:00
provided-filters.rst Add continued filter implementation chapter 2024-02-28 12:51:07 -05:00
quick-start.rst Update the developing algorithms section of the user's guide 2023-12-08 08:50:18 -05:00
README.md Add VTK-m User's Guide to source 2023-10-17 11:31:27 -04:00
rendering.rst Add advanced types chapter to user's guide 2023-12-18 14:22:40 -07:00
requirements.in update readthedocs-sphinx-search 2024-02-14 12:03:42 -05:00
requirements.txt update readthedocs-sphinx-search 2024-02-14 12:03:42 -05:00
running-filters.rst Add continued filter implementation chapter 2024-02-28 12:51:07 -05:00
simple-worklets.rst Add reference documentation for Worklet types 2024-01-29 12:26:08 -05:00
timer.rst Continue transfer of Users' Guide text 2023-11-21 10:33:45 -07:00
unknown-array-handle.rst Add guide chapter on unknown array handle 2024-06-28 13:42:23 -04:00
version.rst Continue transfer of Users' Guide text 2023-11-21 10:33:45 -07:00
vtkm.module Continue transfer of Users' Guide text 2023-11-21 10:33:45 -07:00
working-with-cells.rst Add guide chapter on working with cells 2024-03-13 09:18:33 -04:00
worklet-error-handling.rst Add worklet error handling section to users guide 2024-02-13 08:42:04 +09:00
worklet-types.rst Add guide chapter on working with cells 2024-03-13 09:18:33 -04:00

VTK-m User's Guide Source

This directory contains the source for building the VTK-m User's Guide. The document is written for the Sphinx document generator.

Building the documentation

To build the document, you will need the following installed on your system.

  • Doxygen - Processes source code to pull out documentation.
  • Sphinx - Processes reStructuredText to build HTML and LaTeX formatted documents.
  • RTD Theme - We use the Sphinx Read the Docs theme for formatting the generated HTML. The build will fail without this installed.
  • Sphinx CMake Domain Sphinx does not support documenting CMake elements out of the box. This extension provides that support.
  • Breathe - Forms a bridge betweein Doxygen and Sphinx to allow the Sphinx reStructuredTest to include documentation extracted by Doxygen.

To enable document generation, you first must turn on the CMake option VTKm_ENABLE_DOCUMENTATION, which turns on the Doxygen documentation. With that on, you can then turn on the VTKm_ENABLE_USERS_GUIDE CMake option.

The documentation will be built into HTML format in the docs/users-guide/html directory in the build. It will also build LaTeX files in docs/users-guide/latex. It will come with a Makefile that can be used to generate a pdf form (given the proper LaTeX compiler).

Features of the documents

The VTK-m User's Guide is built as a standard Sphinx project. However, there are some features that writers should be aware of.

Writing credit

Kenneth Moreland is the main author of this document. If you have made a contribution, you can credit yourself in the Contributors section of [acknowledgements.rst].

Provided substitutions

The Sphinx configuration provides some convenient substitutions that can be used throughout the document.

  • |VTKm| This should be used whenever VTK-m is referenced. The substitution contains formatting for the word.

Expanded directives

This reStructuredText is build with some extended directives.

Info boxes

Two new "admonition" boxes are supported: didyouknow and commonerrors. It is encouraged to use these boxes to highlight interesting features or common gotchas. These are use like other tip boxes.

.. didyouknow::
   In this guide we periodically use these **Did you know?** boxes to
   provide additional information related to the topic at hand.

.. commonerrors::
   **Common Errors** blocks are used to highlight some of the common
   problems or complications you might encounter when dealing with the
   topic of discussion.

Section references

It is desired for the VTK-m User's Guide to be available both online as web pages and as a self-contained document (e.g. pdf). One issue is that traditional paper documents work best with numbered references to parts, chapters, and sections whereas html documents prefer descriptive links.

To service both, this document has extensions to automatically provide references to document parts. Three roles are created: :partref:, :chapref:, and :secref: to create cross references to parts, chapters, and sections, respectively. They each take a label, and Sphinx is configured with numfig and autosection labels. These labels take the form :