summaryrefslogtreecommitdiffstats
path: root/doxygen
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2022-05-13 23:01:39 (GMT)
committerGitHub <noreply@github.com>2022-05-13 23:01:39 (GMT)
commit436d6910ec95e4f0191387931b1ca01ff29aff85 (patch)
tree53c7a30c16d064b5312cbffcc2a5941a20657754 /doxygen
parentea27e1380cf02e5f92d61cf9509596914c14e4df (diff)
downloadhdf5-436d6910ec95e4f0191387931b1ca01ff29aff85.zip
hdf5-436d6910ec95e4f0191387931b1ca01ff29aff85.tar.gz
hdf5-436d6910ec95e4f0191387931b1ca01ff29aff85.tar.bz2
INITIAL attempt at User Guide in doxygen (#1678)
* HDFFV-10865 - merge from dev, HDFArray perf fix. * Remove duplicate setting * Whitespace changes after clang format * Undo version 11 clang format changes * Merge CMake changes from develop * test testing script merge from develop * Update supported platforms * PR#3 merge from develop * Merge gcc 10 diagnostics option from develop * Merge #318 OSX changes from develop * Merge small changes from develop * Minor non-space formatting changes * #386 copyright corrections for java folder * Merges from develop #358 patches from vtk #361 fix header guard spelling * Merge updates #358 patches from vtk #361 fix header guard spelling * format fix * Fix missing underscore and make H5public.h closer to dev * Merges from develop #340 clang -Wformat-security warnings #360 Fixed uninitialized warnings header guard underscore cleanup JNI cleanup * format alignment * Add missing test ref file * Merge #380 from develop * Finish java merges from develop * Fix java issues with tests and javadoc * Correct use of attribute access plist * Remove debug code * Remove unused variable * Change file access to read only for java tests * Split clang format operations. * More javadoc comments * Remove pre-split setting * format source * Change windows TS to use older VS. * Mostly all javadoc fixes, one argument rename. * synch file * Merge of long double fix and compiler flags * HDFFV-11229 merge changes from develop * HDFFV-11229 correct test script * HDFFV-11229 update autotools test script for two ref files * HDFFV-11229 merge dev changes for long double display in tools * Committing clang-format changes * minor whitespace * remove unneeded macro * Committing clang-format changes * Add "option" command for clang options * Rework CMake add_custom to use the BYPRODUCTS argument Update pkgconfig scripts for parallel builds. Fix install COPYING file reference. Remove unused round defines. Change CMake default setting of BUILD_CPP to off. * Fortran target depends * Remove incorrect source attribute * Revert define removal * printf specifiers and VS2015 min changes * Committing clang-format changes * Add time struct * TRILAB-227 and tools debug merges from develop * Merge various changes from dev * Issue #669 remove version from pkgcfg filename * remove version from h5cc script * doxygen changes merged from develop * Committing clang-format changes * Merge CMake fortran ninja changes from dev * Enable fortran to gcc yaml * Refactor Fortran CMake config tests and CMake test args * Merge warnings files fixes from develop * Fix cmake configure path * Update missing release note info. * Update code owners * Add known problem * Use only core library for testing dynamic plugins. CMake uses H5_HAVE_DIRECT instead of DIRECT_VFD * INITIAL attempt at User Guide in doxygen * Add quick H5E to show actual UG header sections * Add Error Handling chapter * Cleanup format changes * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'doxygen')
-rw-r--r--doxygen/CMakeLists.txt2
-rw-r--r--doxygen/Doxyfile.in2
-rw-r--r--doxygen/dox/Overview.dox6
-rw-r--r--doxygen/dox/UsersGuide.dox145
-rw-r--r--doxygen/hdf5doxy_layout.xml1
-rw-r--r--doxygen/img/Shared_Attribute.jpgbin0 -> 37209 bytes
-rw-r--r--doxygen/img/UML_Attribute.jpgbin0 -> 36134 bytes
7 files changed, 149 insertions, 7 deletions
diff --git a/doxygen/CMakeLists.txt b/doxygen/CMakeLists.txt
index 920fafa..38c2fad 100644
--- a/doxygen/CMakeLists.txt
+++ b/doxygen/CMakeLists.txt
@@ -21,7 +21,7 @@ if (DOXYGEN_FOUND)
set (DOXYGEN_HTML_HEADER ${HDF5_DOXYGEN_DIR}/hdf5_header.html)
set (DOXYGEN_HTML_FOOTER ${HDF5_DOXYGEN_DIR}/hdf5_footer.html)
set (DOXYGEN_HTML_EXTRA_STYLESHEET ${HDF5_DOXYGEN_DIR}/hdf5doxy.css)
- set (DOXYGEN_HTML_EXTRA_FILES "${HDF5_DOXYGEN_DIR}/hdf5_navtree_hacks.js ${HDF5_DOXYGEN_DIR}/img/FF-IH_FileGroup.gif ${HDF5_DOXYGEN_DIR}/img/FF-IH_FileObject.gif ${HDF5_DOXYGEN_DIR}/img/FileFormatSpecChunkDiagram.jpg ${HDF5_DOXYGEN_DIR}/img/ftv2node.png ${HDF5_DOXYGEN_DIR}/img/ftv2pnode.png ${HDF5_DOXYGEN_DIR}/img/HDFG-logo.png ${HDF5_DOXYGEN_DIR}/img/IOFlow2.gif ${HDF5_DOXYGEN_DIR}/img/IOFlow3.gif ${HDF5_DOXYGEN_DIR}/img/IOFlow.gif ${HDF5_DOXYGEN_DIR}/img/PaletteExample1.gif ${HDF5_DOXYGEN_DIR}/img/Palettes.fm.anc.gif")
+ set (DOXYGEN_HTML_EXTRA_FILES "${HDF5_DOXYGEN_DIR}/hdf5_navtree_hacks.js ${HDF5_DOXYGEN_DIR}/img/FF-IH_FileGroup.gif ${HDF5_DOXYGEN_DIR}/img/FF-IH_FileObject.gif ${HDF5_DOXYGEN_DIR}/img/FileFormatSpecChunkDiagram.jpg ${HDF5_DOXYGEN_DIR}/img/ftv2node.png ${HDF5_DOXYGEN_DIR}/img/ftv2pnode.png ${HDF5_DOXYGEN_DIR}/img/HDFG-logo.png ${HDF5_DOXYGEN_DIR}/img/IOFlow2.gif ${HDF5_DOXYGEN_DIR}/img/IOFlow3.gif ${HDF5_DOXYGEN_DIR}/img/IOFlow.gif ${HDF5_DOXYGEN_DIR}/img/PaletteExample1.gif ${HDF5_DOXYGEN_DIR}/img/Palettes.fm.anc.gif ${HDF5_DOXYGEN_DIR}/img/UML_Attribute.jpg ${HDF5_DOXYGEN_DIR}/img/Shared_Attribute.jpg")
set (DOXYGEN_TAG_FILE ${HDF5_BINARY_DIR}/hdf5.tag)
set (DOXYGEN_SERVER_BASED_SEARCH NO)
set (DOXYGEN_EXTERNAL_SEARCH NO)
diff --git a/doxygen/Doxyfile.in b/doxygen/Doxyfile.in
index 7958767..e391422 100644
--- a/doxygen/Doxyfile.in
+++ b/doxygen/Doxyfile.in
@@ -938,7 +938,7 @@ EXAMPLE_RECURSIVE = NO
# that contain images that are to be included in the documentation (see the
# \image command).
-IMAGE_PATH =
+IMAGE_PATH = @HDF5_DOXYGEN_DIR@/img
# 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
diff --git a/doxygen/dox/Overview.dox b/doxygen/dox/Overview.dox
index 040769c..8f428b5 100644
--- a/doxygen/dox/Overview.dox
+++ b/doxygen/dox/Overview.dox
@@ -23,7 +23,7 @@ documents cover a mix of tasks, concepts, and reference, to help a specific
\par Versions
Version-specific documentation (see the version in the title area) can be found
here:
- - HDF5 <code>develop</code> branch (this site)
+ - HDF5 <code>1.10</code> branch (this site)
- <a href="https://docs.hdfgroup.org/hdf5/v1_12/index.html">HDF5 1.12.x</a>
- <a href="https://docs.hdfgroup.org/hdf5/v1_10/index.html">HDF5 1.10.x</a>
- <a href="https://docs.hdfgroup.org/hdf5/v1_8/index.html">HDF5 1.8.x</a>
@@ -36,10 +36,6 @@ documents cover a mix of tasks, concepts, and reference, to help a specific
\par Offline reading
You can <a href="hdf5-doc.tgz">download</a> it as a tgz archive for offline reading.
-\par History
- A snapshot (~April 2017) of the pre-Doxygen HDF5 documentation can be found
- <a href="https://docs.hdfgroup.org/archive/support/HDF5/doc/index.html">here</a>.
-
\par ToDo List
There is plenty of <a href="./todo.html">unfinished business</a>.
diff --git a/doxygen/dox/UsersGuide.dox b/doxygen/dox/UsersGuide.dox
new file mode 100644
index 0000000..22fe5c6
--- /dev/null
+++ b/doxygen/dox/UsersGuide.dox
@@ -0,0 +1,145 @@
+/** \page UG HDF5 User’s Guide
+
+<center>
+HDF5 Release 1.10
+
+\image html HDFG-logo.png "The HDF Group"
+
+</center>
+
+\section sec_data_model The HDF5 Data Model and File Structure
+ - <!-- @ref subsec_data_model_intro --> Introduction
+ - <!-- @ref subsec_data_model_abstract --> The Abstract Data Model
+ - <!-- @ref subsec_data_model_storage --> The HDF5 Storage Model
+ - <!-- @ref subsec_data_model_structure --> The Structure of an HDF5 File
+
+\section sec_program The HDF5 Library and Programming Model
+ - <!-- @ref subsec_program_intro --> Introduction
+ - <!-- @ref subsec_program_model --> The HDF5 Programming Model
+ - <!-- @ref subsec_program_transfer_pipeline --> The Data Transfer Pipeline
+
+\section sec_file The HDF5 File
+ - <!-- @ref subsec_file_intro --> Introduction
+ - <!-- @ref subsec_file_access_modes --> File Access Modes
+ - <!-- @ref subsec_file_creation_access --> File Creation and File Access Properties
+ - <!-- @ref subsec_file_drivers --> Low-level File Drivers
+ - <!-- @ref subsec_file_program_model --> "Programming Model for Files
+ - <!-- @ref subsec_file_h5dump --> Using h5dump to View a File
+ - <!-- @ref subsec_file_summary --> File Function Summaries
+ - <!-- @ref subsec_file_create --> Creating or Opening an HDF5 File
+ - <!-- @ref subsec_file_closes --> Closing an HDF5 File
+ - <!-- @ref subsec_file_property_lists --> File Property Lists
+ - <!-- @ref subsec_file_alternate_drivers --> Alternate File Storage Layouts and Low-level File Drivers
+ - <!-- @ref subsec_file_examples --> Code Examples for Opening and Closing Files
+ - <!-- @ref subsec_file_multiple --> Working with Multiple HDF5 Files
+
+\section sec_group HDF5 Groups
+ - <!-- @ref subsec_group_intro --> Introduction
+ - <!-- @ref subsec_group_descr --> Description of the Group Object
+ - <!-- @ref subsec_group_h5dump --> Using h5dump
+ - <!-- @ref subsec_group_function --> Group Function Summaries
+ - <!-- @ref subsec_group_program --> Programming Model for Groups
+ - <!-- @ref subsec_group_examples --> Examples of File Structures
+
+\section sec_dataset HDF5 Datasets
+ - <!-- @ref subsec_dataset_intro --> Introduction
+ - <!-- @ref subsec_dataset_function --> Dataset Function Summaries
+ - <!-- @ref subsec_dataset_program --> Programming Model for Datasets
+ - <!-- @ref subsec_dataset_transfer --> Data Transfer
+ - <!-- @ref subsec_dataset_allocation --> Allocation of Space in the File
+ - <!-- @ref subsec_dataset_filters --> Using HDF5 Filters
+
+\section sec_datatype HDF5 Datatypes
+
+\section sec_dataspace HDF5 Dataspaces and Partial I/O
+
+\ref sec_attribute
+\li \ref subsec_attribute_intro
+\li \ref subsec_attribute_program
+ <ul>
+ <li> <!-- @ref subsubsec_attribute_program_exist --> To Open and Read or Write an Existing Attribute
+ </ul>
+\li \ref subsec_error_H5A
+\li \ref subsec_attribute_work
+ <ul>
+ <li> \ref subsubsec_attribute_work_struct
+ <li> \ref subsubsec_attribute_work_create
+ <li> \ref subsubsec_attribute_work_access
+ <li> \ref subsubsec_attribute_work_info
+ <li> \ref subsubsec_attribute_work_iterate
+ <li> \ref subsubsec_attribute_work_delete
+ <li> \ref subsubsec_attribute_work_close
+ </ul>
+\li \ref subsec_attribute_special
+
+\ref sec_error
+\li \ref subsec_error_intro
+\li \ref subsec_error_program
+\li \ref subsec_error_H5E
+\li \ref subsec_error_ops
+ <ul>
+ <li> \ref subsubsec_error_ops_stack
+ <li> \ref subsubsec_error_ops_print
+ <li> \ref subsubsec_error_ops_mute
+ <li> \ref subsubsec_error_ops_custom_print
+ <li> \ref subsubsec_error_ops_walk
+ <li> \ref subsubsec_error_ops_travers
+ </ul>
+\li \ref subsec_error_adv
+ <ul>
+ <li> \ref subsubsec_error_adv_more
+ <li> \ref subsubsec_error_adv_app
+ </ul>
+
+\section sec_plist Properties and Property Lists in HDF5
+
+\section sec_addition Additional Resources
+
+<!--
+<table>
+<tr><td style="border: none;">
+\li \ref H5A "Attributes (H5A)"
+\li \ref H5D "Datasets (H5D)"
+\li \ref H5S "Dataspaces (H5S)"
+\li \ref H5T "Datatypes (H5T)"
+\li \ref H5E "Error Handling (H5E)"
+\li \ref H5F "Files (H5F)"
+\li \ref H5Z "Filters (H5Z)"
+\li \ref H5G "Groups (H5G)"
+</td><td style="border: none;">
+\li \ref H5I "Identifiers (H5I)"
+\li \ref H5 "Library General (H5)"
+\li \ref H5L "Links (H5L)"
+\li \ref H5O "Objects (H5O)"
+\li \ref H5P "Property Lists (H5P)"
+\li \ref H5PL "Dynamically-loaded Plugins (H5PL)"
+\li \ref H5R "References (H5R)"
+</td><td style="border: none;vertical-align: top;">
+\li \ref api-compat-macros
+\li <a href="./deprecated.html">Deprecated functions</a>
+\li High-level Extensions
+ <ul>
+ <li><a href="https://portal.hdfgroup.org/display/HDF5/Lite">\Bold{HDF5 Lite} (H5LT)</a></li>
+ <li><a href="https://portal.hdfgroup.org/display/HDF5/Images">\Bold{HDF5 Image} (H5IM)</a></li>
+ <li><a href="https://portal.hdfgroup.org/display/HDF5/Tables">\Bold{HDF5 Table} (H5TB)</a></li>
+ <li><a href="https://portal.hdfgroup.org/display/HDF5/Packet+Tables">\Bold{HDF5 Packet Table} (H5TB)</a></li>
+ <li><a href="https://portal.hdfgroup.org/display/HDF5/Dimension+Scales">\Bold{HDF5 Dimension Scale} (H5DS)</a></li>
+ </ul>
+</td></tr>
+<tr><td colspan="3" style="border: none;">
+\ref H5 \ref H5A \ref H5D \ref H5E \ref H5F \ref H5G \ref H5I \ref H5L
+\ref H5O \ref H5P \ref H5PL \ref H5R \ref H5S \ref H5T \ref H5Z
+</td></tr>
+</table>
+
+</td></tr>
+</table>
+ -->
+
+\par Don't like what you see? - You can help to improve this User’s Guide
+ Complete the survey linked near the top of this page!\n
+ We treat documentation like code: Fork the
+ <a href="https://github.com/HDFGroup/hdf5">HDF5 repo</a>, make changes, and create a
+ <a href="https://github.com/HDFGroup/hdf5/pulls">pull request</a> !\n
+
+*/ \ No newline at end of file
diff --git a/doxygen/hdf5doxy_layout.xml b/doxygen/hdf5doxy_layout.xml
index 24642b5..20e0123 100644
--- a/doxygen/hdf5doxy_layout.xml
+++ b/doxygen/hdf5doxy_layout.xml
@@ -5,6 +5,7 @@
<tab type="user" url="index.html" title="Overview" />
<tab type="user" url="https://portal.hdfgroup.org/display/HDF5/Learning+HDF5" title="Getting started" />
<tab type="user" url="@ref Cookbook" title="Cookbook" />
+ <tab type="user" url="@ref UG" title="User Guide" />
<tab type="user" url="https://portal.hdfgroup.org/display/HDF5/HDF5+User+Guides" title="User Guides" />
<tab type="user" url="https://portal.hdfgroup.org/display/HDF5/HDF5+Application+Developer%27s+Guide" title="Application Developer's Guide" />
<tab type="user" url="@ref GLS" title="Glossary" />
diff --git a/doxygen/img/Shared_Attribute.jpg b/doxygen/img/Shared_Attribute.jpg
new file mode 100644
index 0000000..058eeec
--- /dev/null
+++ b/doxygen/img/Shared_Attribute.jpg
Binary files differ
diff --git a/doxygen/img/UML_Attribute.jpg b/doxygen/img/UML_Attribute.jpg
new file mode 100644
index 0000000..5b3db7d
--- /dev/null
+++ b/doxygen/img/UML_Attribute.jpg
Binary files differ