summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2023-03-01 01:08:47 (GMT)
committerGitHub <noreply@github.com>2023-03-01 01:08:47 (GMT)
commit91cf10156a65a96860cea965df74a5adecf3e4e8 (patch)
tree5466ea669b3c26ad27ad1b82d3bf4287df70a175 /src
parent4e645aeedf621b341c6b6d5665fecdd08314bda9 (diff)
downloadhdf5-91cf10156a65a96860cea965df74a5adecf3e4e8.zip
hdf5-91cf10156a65a96860cea965df74a5adecf3e4e8.tar.gz
hdf5-91cf10156a65a96860cea965df74a5adecf3e4e8.tar.bz2
1.12 Merge doxygen plist tables changes #2470 from develop (#2505)
* Merge doxygen plist tables changes #2470 from develop * Add new/moved files * More add new/moved files * Doxy corrections
Diffstat (limited to 'src')
-rw-r--r--src/H5Amodule.h2
-rw-r--r--src/H5Dmodule.h315
-rw-r--r--src/H5Dpublic.h6
-rw-r--r--src/H5ESpublic.h14
-rw-r--r--src/H5FDmpio.h6
-rw-r--r--src/H5FDpublic.h30
-rw-r--r--src/H5Fmodule.h298
-rw-r--r--src/H5Gmodule.h97
-rw-r--r--src/H5Gpublic.h20
-rw-r--r--src/H5Lpublic.h16
-rw-r--r--src/H5MMpublic.h2
-rw-r--r--src/H5Mpublic.h3
-rw-r--r--src/H5Opublic.h2
-rw-r--r--src/H5PLextern.h2
-rw-r--r--src/H5PLmodule.h2
-rw-r--r--src/H5PLpublic.h2
-rw-r--r--src/H5Pmodule.h155
-rw-r--r--src/H5Ppublic.h13
-rw-r--r--src/H5Tmodule.h34
-rw-r--r--src/H5Tpublic.h2
-rw-r--r--src/H5VLmodule.h24
21 files changed, 219 insertions, 826 deletions
diff --git a/src/H5Amodule.h b/src/H5Amodule.h
index e3bfe6f..0c31f71 100644
--- a/src/H5Amodule.h
+++ b/src/H5Amodule.h
@@ -364,7 +364,7 @@
* will be ignored by HDF5.
*
* The use of ASCII or UTF-8 characters is determined by the character encoding property. See
- * #H5Pset_char_encoding in the \ref RM.
+ * #H5Pset_char_encoding in the \ref RM.
*
* <h4>No Special I/O or Storage</h4>
*
diff --git a/src/H5Dmodule.h b/src/H5Dmodule.h
index 00751a9..8d2f23a 100644
--- a/src/H5Dmodule.h
+++ b/src/H5Dmodule.h
@@ -182,250 +182,11 @@
* </tr>
* </table>
*
- * <table>
- * <caption>Dataset creation property list functions (H5P)</caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_layout</td>
- * <td>Sets the type of storage used to store the raw data for a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_layout</td>
- * <td>Returns the layout of the raw data for a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_chunk</td>
- * <td>Sets the size of the chunks used to store a chunked layout dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_chunk</td>
- * <td>Retrieves the size of chunks for the raw data of a chunked layout dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_deflate</td>
- * <td>Sets compression method and compression level.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fill_value</td>
- * <td>Sets the fill value for a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_fill_value</td>
- * <td>Retrieves a dataset fill value.</td>
- * </tr>
- * <tr>
- * <td>#H5Pfill_value_defined</td>
- * <td>Determines whether the fill value is defined.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fill_time</td>
- * <td>Sets the time when fill values are written to a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_fill_time</td>
- * <td>Retrieves the time when fill value are written to a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_alloc_time</td>
- * <td>Sets the timing for storage space allocation.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_alloc_time</td>
- * <td>Retrieves the timing for storage space allocation.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_filter</td>
- * <td>Adds a filter to the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pall_filters_avail</td>
- * <td>Verifies that all required filters are available.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_nfilters</td>
- * <td>Returns the number of filters in the pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_filter</td>
- * <td>Returns information about a filter in a pipeline.
- * The C function is a macro: \see \ref api-compat-macros.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_filter_by_id</td>
- * <td>Returns information about the specified filter.
- * The C function is a macro: \see \ref api-compat-macros.</td>
- * </tr>
- * <tr>
- * <td>#H5Pmodify_filter</td>
- * <td>Modifies a filter in the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Premove_filter</td>
- * <td>Deletes one or more filters in the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fletcher32</td>
- * <td>Sets up use of the Fletcher32 checksum filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_nbit</td>
- * <td>Sets up use of the n-bit filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_scaleoffset</td>
- * <td>Sets up use of the scale-offset filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_shuffle</td>
- * <td>Sets up use of the shuffle filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_szip</td>
- * <td>Sets up use of the Szip compression filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_external</td>
- * <td>Adds an external file to the list of external files.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_external_count</td>
- * <td>Returns the number of external files for a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_external</td>
- * <td>Returns information about an external file.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_char_encoding</td>
- * <td>Sets the character encoding used to encode a string. Use to set ASCII or UTF-8 character
- * encoding for object names.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_char_encoding</td>
- * <td>Retrieves the character encoding used to create a string.</td>
- * </tr>
- * </table>
+ * \anchor dcpl_table_tag Dataset creation property list functions (H5P)
+ * \snippet{doc} tables/propertyLists.dox dcpl_table
*
- * <table>
- * <caption>Dataset access property list functions (H5P)</caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_buffer</td>
- * <td>Sets type conversion and background buffers.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_buffer</td>
- * <td>Reads buffer settings.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_chunk_cache</td>
- * <td>Sets the raw data chunk cache parameters.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_chunk_cache</td>
- * <td>Retrieves the raw data chunk cache parameters.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_edc_check</td>
- * <td>Sets whether to enable error-detection when reading a dataset.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_edc_check</td>
- * <td>Determines whether error-detection is enabled for dataset reads.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_filter_callback</td>
- * <td>Sets user-defined filter callback function.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_data_transform</td>
- * <td>Sets a data transform expression.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_data_transform</td>
- * <td>Retrieves a data transform expression.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_type_conv_cb</td>
- * <td>Sets user-defined datatype conversion callback function.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_type_conv_cb</td>
- * <td>Gets user-defined datatype conversion callback function.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_hyper_vector_size</td>
- * <td>Sets number of I/O vectors to be read/written in hyperslab I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_hyper_vector_size</td>
- * <td>Retrieves number of I/O vectors to be read/written in hyperslab I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_btree_ratios</td>
- * <td>Sets B-tree split ratios for a dataset transfer property list.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_btree_ratios</td>
- * <td>Gets B-tree split ratios for a dataset transfer property list.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_vlen_mem_manager</td>
- * <td>Sets the memory manager for variable-length datatype allocation in #H5Dread and
- * #H5Dvlen_reclaim.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_vlen_mem_manager</td>
- * <td>Gets the memory manager for variable-length datatype allocation in #H5Dread and
- * #H5Dvlen_reclaim.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_dxpl_mpio</td>
- * <td>Sets data transfer mode.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_dxpl_mpio</td>
- * <td>Returns the data transfer mode.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_dxpl_mpio_chunk_opt</td>
- * <td>Sets a flag specifying linked-chunk I/O or multi-chunk I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_dxpl_mpio_chunk_opt_num</td>
- * <td>Sets a numeric threshold for linked-chunk I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_dxpl_mpio_chunk_opt_ratio</td>
- * <td>Sets a ratio threshold for collective I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_dxpl_mpio_collective_opt</td>
- * <td>Sets a flag governing the use of independent versus collective I/O.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_multi_type</td>
- * <td>Sets the type of data property for the MULTI driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_multi_type</td>
- * <td>Retrieves the type of data property for the MULTI driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_small_data_block_size</td>
- * <td>Sets the size of a contiguous block reserved for small data.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_small_data_block_size</td>
- * <td>Retrieves the current small data block size setting.</td>
- * </tr>
- * </table>
+ * \anchor dapl_table_tag Dataset access property list functions (H5P)
+ * \snippet{doc} tables/propertyLists.dox dapl_table
*
* \subsection subsec_dataset_program Programming Model for Datasets
* This section explains the programming model for datasets.
@@ -1106,41 +867,7 @@
* the pipeline processing: the pipeline and filter operations are identical no matter what data access
* mechanism is used.
*
- * <table>
- * <caption>I/O file drivers</caption>
- * <tr>
- * <th>File Driver</th>
- * <th>Description</th>
- * </tr>
- * <tr>
- * <td>#H5FD_CORE</td>
- * <td>Store in memory (optional backing store to disk file).</td>
- * </tr>
- * <tr>
- * <td>#H5FD_FAMILY</td>
- * <td>Store in a set of files.</td>
- * </tr>
- * <tr>
- * <td>#H5FD_LOG</td>
- * <td>Store in logging file.</td>
- * </tr>
- * <tr>
- * <td>#H5FD_MPIO</td>
- * <td>Store using MPI/IO.</td>
- * </tr>
- * <tr>
- * <td>#H5FD_MULTI</td>
- * <td>Store in multiple files. There are several options to control layout.</td>
- * </tr>
- * <tr>
- * <td>#H5FD_SEC2</td>
- * <td>Serial I/O to file using Unix “section 2” functions.</td>
- * </tr>
- * <tr>
- * <td>#H5FD_STDIO</td>
- * <td>Serial I/O to file using Unix “stdio” functions.</td>
- * </tr>
- * </table>
+ * \snippet{doc} tables/propertyLists.dox lcpl_table
*
* Each file driver writes/reads contiguous blocks of bytes from a logically contiguous address
* space. The file driver is responsible for managing the details of the different physical storage
@@ -1157,29 +884,7 @@
* Data transfer properties set optional parameters that control parts of the data pipeline. The
* function listing below shows transfer properties that control the behavior of the library.
*
- * <table>
- * <caption>Data transfer property list functions</caption>
- * <tr>
- * <th>C Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_buffer</td>
- * <td>Maximum size for the type conversion buffer and the background buffer. May also supply
- * pointers to application-allocated buffers.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_hyper_vector_size</td>
- * <td>set the number of "I/O vectors" (offset and length pairs) which are to be
- * accumulated in memory before being issued to the lower levels
- * of the library for reading or writing the actual data.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_btree_ratios</td>
- * <td>Set the B-tree split ratios for a dataset transfer property list. The split ratios determine
- * what percent of children go in the first node when a node splits.</td>
- * </tr>
- * </table>
+ * \snippet{doc} tables/fileDriverLists.dox file_driver_table
*
* Some filters and file drivers require or use additional parameters from the application program.
* These can be passed in the data transfer property list. The table below shows file driver property
@@ -1897,10 +1602,10 @@ allocated if necessary.
* <th>byte 0</th>
* </tr>
* <tr>
- * <td> ???????? </td>
- * <td> ????SPPP </td>
- * <td> PPPPPPPP </td>
- * <td> PPPP???? </td>
+ * <td> ???????? </td>
+ * <td> ????SPPP </td>
+ * <td> PPPPPPPP </td>
+ * <td> PPPP???? </td>
* </tr>
* <tr>
* <td colspan="4">
diff --git a/src/H5Dpublic.h b/src/H5Dpublic.h
index db628a3..7cf4952 100644
--- a/src/H5Dpublic.h
+++ b/src/H5Dpublic.h
@@ -464,6 +464,9 @@ H5_DLL hid_t H5Dget_type(hid_t dset_id);
* a copy of the dataset creation property list associated with
* the dataset specified by \p dset_id.
*
+ * The creation property list identifier should be released with
+ * H5Pclose() to prevent resource leaks.
+ *
*/
H5_DLL hid_t H5Dget_create_plist(hid_t dset_id);
@@ -633,6 +636,7 @@ H5_DLL herr_t H5Dget_num_chunks(hid_t dset_id, hid_t fspace_id, hsize_t *nchunks
*/
H5_DLL herr_t H5Dget_chunk_info_by_coord(hid_t dset_id, const hsize_t *offset, unsigned *filter_mask,
haddr_t *addr, hsize_t *size);
+
/**
* --------------------------------------------------------------------------
* \ingroup H5D
@@ -656,7 +660,7 @@ H5_DLL herr_t H5Dget_chunk_info_by_coord(hid_t dset_id, const hsize_t *offset, u
* Iterate over all chunked datasets and chunks in a file.
* \snippet H5D_examples.c H5Ovisit_cb
*
- * \since 1.12.3, 1.13.0
+ * \since 1.12.3
*
*/
H5_DLL herr_t H5Dchunk_iter(hid_t dset_id, hid_t dxpl_id, H5D_chunk_iter_op_t cb, void *op_data);
diff --git a/src/H5ESpublic.h b/src/H5ESpublic.h
index 6b8b2a9..6180487 100644
--- a/src/H5ESpublic.h
+++ b/src/H5ESpublic.h
@@ -2,7 +2,7 @@
* Copyright by The HDF Group. *
* All rights reserved. *
* *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
@@ -28,12 +28,14 @@
/* Public Typedefs */
/*******************/
-/* Asynchronous operation status */
+/**
+ * Asynchronous operation status
+ */
typedef enum H5ES_status_t {
- H5ES_STATUS_IN_PROGRESS, /* Operation(s) have not yet completed */
- H5ES_STATUS_SUCCEED, /* Operation(s) have completed, successfully */
- H5ES_STATUS_FAIL, /* An operation has completed, but failed */
- H5ES_STATUS_CANCELED /* Operation(s) has been canceled */
+ H5ES_STATUS_IN_PROGRESS, /**< Operation(s) have not yet completed */
+ H5ES_STATUS_SUCCEED, /**< Operation(s) have completed, successfully */
+ H5ES_STATUS_CANCELED, /**< Operation(s) has been canceled */
+ H5ES_STATUS_FAIL /**< An operation has completed, but failed */
} H5ES_status_t;
/********************/
diff --git a/src/H5FDmpio.h b/src/H5FDmpio.h
index ba508eb..a70f34b 100644
--- a/src/H5FDmpio.h
+++ b/src/H5FDmpio.h
@@ -104,10 +104,10 @@ H5_DLL herr_t H5Pset_fapl_mpio(hid_t fapl_id, MPI_Comm comm, MPI_Info info);
* \param[out] info MPI-2 info object
* \returns \herr_t
*
- * \details H5Pget_fapl_mpio() returns duplicates of the stored MPI communicator
+ * \details If the file access property list is set to the #H5FD_MPIO driver,
+ * H5Pget_fapl_mpio() returns duplicates of the stored MPI communicator
* and Info object through the \p comm and \p info pointers, if those
- * values are non-null. The file access property list must be set to the
- * #H5FD_MPIO driver.
+ * values are non-null.
*
* Since the MPI communicator and Info object are duplicates of the
* stored information, future modifications to the access property list
diff --git a/src/H5FDpublic.h b/src/H5FDpublic.h
index c66a46c..cd476b9 100644
--- a/src/H5FDpublic.h
+++ b/src/H5FDpublic.h
@@ -18,8 +18,13 @@
#ifndef H5FDpublic_H
#define H5FDpublic_H
-#include "H5public.h"
-#include "H5Fpublic.h" /*for H5F_close_degree_t */
+/* Public headers needed by this file */
+#include "H5public.h" /* Generic Functions */
+#include "H5Fpublic.h" /* Files */
+
+/*****************/
+/* Public Macros */
+/*****************/
#define H5_HAVE_VFL 1 /*define a convenient app feature test*/
#define H5FD_VFD_DEFAULT 0 /* Default VFL driver value */
@@ -462,7 +467,26 @@ H5_DLL herr_t H5FDtruncate(H5FD_t *file, hid_t dxpl_id, hbool_t closing);
H5_DLL herr_t H5FDlock(H5FD_t *file, hbool_t rw);
H5_DLL herr_t H5FDunlock(H5FD_t *file);
-/* Allows querying a VFD ID for features before the file is opened */
+/**
+ * \ingroup H5FD
+ *
+ * \brief Allows querying a VFD ID for features before the file is opened
+ *
+ * \param[in] driver_id Virtual File Driver (VFD) ID
+ * \param[out] flags VFD flags supported
+ *
+ * \return \herr_t
+ *
+ * \details Queries a virtual file driver (VFD) for feature flags. Takes a
+ * VFD hid_t so it can be used before the file is opened. For example,
+ * this could be used to check if a VFD supports SWMR.
+ *
+ * \note The flags obtained here are just those of the base driver and
+ * do not take any configuration options (e.g., set via a fapl
+ * call) into consideration.
+ *
+ * \since 1.10.2
+ */
H5_DLL herr_t H5FDdriver_query(hid_t driver_id, unsigned long *flags /*out*/);
#ifdef __cplusplus
diff --git a/src/H5Fmodule.h b/src/H5Fmodule.h
index 523d6bf..6939f4a 100644
--- a/src/H5Fmodule.h
+++ b/src/H5Fmodule.h
@@ -411,204 +411,15 @@
* </tr>
* </table>
*
- * <table>
- * <caption>File creation property list functions </caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_userblock/#H5Pget_userblock</td>
- * <td>Sets/retrieves size of userblock.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_sizes/#H5Pget_sizes</td>
- * <td>Sets/retrieves byte size of offsets and lengths used to address objects in HDF5 file.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_sym_k/#H5Pget_sym_k</td>
- * <td>Sets/retrieves size of parameters used to control symbol table nodes.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_istore_k/#H5Pget_istore_k</td>
- * <td>Sets/retrieves size of parameter used to control B-trees for indexing chunked datasets.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_file_image</td>
- * <td>Sets an initial file image in a memory buffer.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_file_image</td>
- * <td>Retrieves a copy of the file image designated as the initial content and structure of a file.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_shared_mesg_nindexes/#H5Pget_shared_mesg_nindexes</td>
- * <td>Sets or retrieves number of shared object header message indexes in file
- * creation property list.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_shared_mesg_index</td>
- * <td>Configures the specified shared object header message index.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_shared_mesg_index</td>
- * <td>Retrieves the configuration settings for a shared message index.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_shared_mesg_phase_change/#H5Pget_shared_mesg_phase_change</td>
- * <td>Sets or retrieves shared object header message storage phase change thresholds.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_version</td>
- * <td></td>
- * </tr>
- * </table>
+ * \anchor fcpl_table_tag File creation property list functions (H5P)
+ * \snippet{doc} tables/propertyLists.dox fcpl_table
*
- * <table>
- * <caption>File access property list functions </caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_alignment/#H5Pget_alignment</td>
- * <td>Sets/retrieves alignment properties.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_cache/#H5Pget_cache</td>
- * <td>Sets/retrieves metadata cache and raw data chunk cache parameters.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_elink_file_cache_size/#H5Pget_elink_file_cache_size</td>
- * <td>Sets/retrieves the size of the external link open file cache from the specified
- * file access property list.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_gc_references/#H5Pget_gc_references</td>
- * <td>Sets/retrieves garbage collecting references flag.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_family_offset</td>
- * <td>Sets offset property for low-level access to a file in a family of files.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_family_offset</td>
- * <td>Retrieves a data offset from the file access property list.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_meta_block_size/#H5Pget_meta_block_size</td>
- * <td>Sets the minimum metadata blocksize or retrieves the current metadata block size setting.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_mdc_config</td>
- * <td>Set the initial metadata cache configuration in the indicated File Access Property List
- * to the supplied value.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_mdc_config</td>
- * <td>Get the current initial metadata cache config-uration from the indicated File Access
- * Property List.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_sieve_buf_size/#H5Pget_sieve_buf_size</td>
- * <td>Sets/retrieves maximum size of data sieve buffer.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_libver_bounds</td>
- * <td>Sets bounds on library versions, and indirectly format versions, to be used
- * when creating objects.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_libver_bounds</td>
- * <td>Retrieves library version bounds settings that indirectly control the format
- * versions used when creating objects.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_small_data_block_size</td>
- * <td>Sets the size of a contiguous block reserved for small data.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_small_data_block_size</td>
- * <td>Retrieves the current small data block size setting.</td>
- * </tr>
- * </table>
+ * \anchor fapl_table_tag File access property list functions (H5P)
+ * \snippet{doc} tables/propertyLists.dox fapl_table
+ *
+ * \anchor fd_pl_table_tag File driver property list functions (H5P)
+ * \snippet{doc} tables/propertyLists.dox fd_pl_table
*
- * <table>
- * <caption>File driver functions </caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pset_driver</td>
- * <td>Sets a file driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_driver</td>
- * <td>Returns the identifier for the driver used to create a file.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_driver_info</td>
- * <td>Returns a pointer to file driver information.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_core/#H5Pget_fapl_core</td>
- * <td>Sets the driver for buffered memory files (in RAM) or retrieves information regarding
- * the driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_direct/#H5Pget_fapl_direct</td>
- * <td>Sets up use of the direct I/O driver or retrieves the direct I/O driver settings.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_family/#H5Pget_fapl_family</td>
- * <td>Sets driver for file families, designed for systems that do not support files
- * larger than 2 gigabytes, or retrieves information regarding driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_log</td>
- * <td>Sets logging driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_mpio/#H5Pget_fapl_mpio</td>
- * <td>Sets driver for files on parallel file systems (MPI I/O) or retrieves information
- * regarding the driver.</td>
- * </tr>
- * <tr>
- * <td>H5Pset_fapl_mpiposix/H5Pget_fapl_mpiposix</td>
- * <td>No longer available.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_multi/#H5Pget_fapl_multi</td>
- * <td>Sets driver for multiple files, separating categories of metadata and raw data,
- * or retrieves information regarding driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_sec2</td>
- * <td>Sets driver for unbuffered permanent files or retrieves information regarding driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_split</td>
- * <td>Sets driver for split files, a limited case of multiple files with one metadata file
- * and one raw data file.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_stdio</td>
- * <td>Sets driver for buffered permanent files.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fapl_windows</td>
- * <td>Sets the Windows I/O driver.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_multi_type</td>
- * <td>Specifies type of data to be accessed via the MULTI driver enabling more direct access.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_multi_type</td>
- * <td>Retrieves type of data property for MULTI driver.</td>
- * </tr>
- * </table>
*
* \subsection subsec_file_create Creating or Opening an HDF5 File
* This section describes in more detail how to create and how to open files.
@@ -865,100 +676,7 @@
* #H5FD_SEC2. Alternative layouts and drivers are designed to suit the needs of a variety of
* systems, environments, and applications. The drivers are listed in the table below.
*
- * <table>
- * <caption id="table_file_drivers">Supported file drivers</caption>
- * <tr>
- * <th>Driver Name</th>
- * <th>Driver Identifier</th>
- * <th>Description</th>
- * <th>Related API</th>
- * </tr>
- * <tr>
- * <td>POSIX</td>
- * <td>#H5FD_SEC2</td>
- * <td>This driver uses POSIX file-system functions like read and write to perform I/O to a single,
- * permanent file on local disk with no system buffering. This driver is POSIX-compliant and is
- * the default file driver for all systems.</td>
- * <td>#H5Pset_fapl_sec2</td>
- * </tr>
- * <tr>
- * <td>Direct</td>
- * <td>#H5FD_DIRECT</td>
- * <td>This is the #H5FD_SEC2 driver except data is written to or read from the file
- * synchronously without being cached by the system.</td>
- * <td>#H5Pset_fapl_direct</td>
- * </tr>
- * <tr>
- * <td>Log</td>
- * <td>#H5FD_LOG</td>
- * <td>This is the #H5FD_SEC2 driver with logging capabilities.</td>
- * <td>#H5Pset_fapl_log</td>
- * </tr>
- * <tr>
- * <td>Windows</td>
- * <td>#H5FD_WINDOWS</td>
- * <td>This driver was modified in HDF5-1.8.8 to be a wrapper of the POSIX driver,
- * #H5FD_SEC2. This change should not affect user applications.</td>
- * <td>#H5Pset_fapl_windows</td>
- * </tr>
- * <tr>
- * <td>STDIO</td>
- * <td>#H5FD_STDIO</td>
- * <td>This driver uses functions from the standard C stdio.h to perform I/O
- * to a single, permanent file on local disk with additional system buffering.</td>
- * <td>#H5Pset_fapl_stdio</td>
- * </tr>
- * <tr>
- * <td>Memory</td>
- * <td>#H5FD_CORE</td>
- * <td>With this driver, an application can work with a file in memory for faster reads and
- * writes. File contents are kept in memory until the file is closed. At closing, the memory
- * version of the file can be written back to disk or abandoned.</td>
- * <td>#H5Pset_fapl_core</td>
- * </tr>
- * <tr>
- * <td>Family</td>
- * <td>#H5FD_FAMILY</td>
- * <td>With this driver, the HDF5 file’s address space is partitioned into pieces and sent to
- * separate storage files using an underlying driver of the user’s choice. This driver is for
- * systems that do not support files larger than 2 gigabytes.</td>
- * <td>#H5Pset_fapl_family</td>
- * </tr>
- * <tr>
- * <td>Multi</td>
- * <td>#H5FD_MULTI</td>
- * <td>With this driver, data can be stored in multiple files according to the type of the data.
- * I/O might work better if data is stored in separate files based on the type of data. The Split
- * driver is a special case of this driver.</td>
- * <td>#H5Pset_fapl_multi</td>
- * </tr>
- * <tr>
- * <td>Split</td>
- * <td>H5FD_SPLIT</td>
- * <td>This file driver splits a file into two parts. One part stores metadata, and the other part
- * stores raw data. This splitting a file into two parts is a limited case of the Multi driver.</td>
- * <td>#H5Pset_fapl_split</td>
- * </tr>
- * <tr>
- * <td>Parallel</td>
- * <td>#H5FD_MPIO</td>
- * <td>This is the standard HDF5 file driver for parallel file systems. This driver uses the MPI
- * standard for both communication and file I/O.</td>
- * <td>#H5Pset_fapl_mpio</td>
- * </tr>
- * <tr>
- * <td>Parallel POSIX</td>
- * <td>H5FD_MPIPOSIX</td>
- * <td>This driver is no longer available</td>
- * <td></td>
- * </tr>
- * <tr>
- * <td>Stream</td>
- * <td>H5FD_STREAM</td>
- * <td>This driver is no longer available.</td>
- * <td></td>
- * </tr>
- * </table>
+ * \snippet{doc} tables/fileDriverLists.dox supported_file_driver_table
*
* For more information, see the HDF5 Reference Manual entries for the function calls shown in
* the column on the right in the table above.
diff --git a/src/H5Gmodule.h b/src/H5Gmodule.h
index a112a40..3946110 100644
--- a/src/H5Gmodule.h
+++ b/src/H5Gmodule.h
@@ -481,100 +481,7 @@
* </tr>
* </table>
*
- * <table>
- * <caption>Group creation property list functions</caption>
- * <tr>
- * <th>Function</th>
- * <th>Purpose</th>
- * </tr>
- * <tr>
- * <td>#H5Pall_filters_avail</td>
- * <td>Verifies that all required filters are available.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_filter</td>
- * <td>Returns information about a filter in a pipeline. The
- * C function is a macro: \see \ref api-compat-macros.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_filter_by_id</td>
- * <td>Returns information about the specified filter. The
- * C function is a macro: \see \ref api-compat-macros.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_nfilters</td>
- * <td>Returns the number of filters in the pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pmodify_filter</td>
- * <td>Modifies a filter in the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Premove_filter</td>
- * <td>Deletes one or more filters in the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_deflate</td>
- * <td>Sets the deflate (GNU gzip) compression method and compression level.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_filter</td>
- * <td>Adds a filter to the filter pipeline.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_fletcher32</td>
- * <td>Sets up use of the Fletcher32 checksum filter.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_link_phase_change</td>
- * <td>Sets the parameters for conversion between compact and dense groups.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_link_phase_change</td>
- * <td>Queries the settings for conversion between compact and dense groups.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_est_link_info</td>
- * <td>Sets estimated number of links and length of link names in a group.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_est_link_info</td>
- * <td>Queries data required to estimate required local heap or object header size.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_nlinks</td>
- * <td>Sets maximum number of soft or user-defined link traversals.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_nlinks</td>
- * <td>Retrieves the maximum number of link traversals.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_link_creation_order</td>
- * <td>Sets creation order tracking and indexing for links in a group.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_link_creation_order</td>
- * <td>Queries whether link creation order is tracked and/or indexed in a group.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_create_intermediate_group</td>
- * <td>Specifies in the property list whether to create missing intermediate groups.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_create_intermediate_group</td>
- * <td>Determines whether the property is set to enable creating missing intermediate groups.</td>
- * </tr>
- * <tr>
- * <td>#H5Pset_char_encoding</td>
- * <td>Sets the character encoding used to encode a string. Use to set ASCII or UTF-8 character
- * encoding for object names.</td>
- * </tr>
- * <tr>
- * <td>#H5Pget_char_encoding</td>
- * <td>Retrieves the character encoding used to create a string.</td>
- * </tr>
- * </table>
+ * \snippet{doc} tables/propertyLists.dox gcpl_table
*
* <table>
* <caption>Other external link functions</caption>
@@ -1017,7 +924,7 @@
* containing thousands to millions of members. Links are stored in
* a fractal heap and indexed with an improved B-tree.
* \li The new implementation also enables the use of link names consisting of
- * non-ASCII character sets (see H5Pset_char_encoding()) and is
+ * non-ASCII character sets (see #H5Pset_char_encoding) and is
* required for all link types other than hard or soft links, e.g.,
* external and user-defined links (see the \ref H5L APIs).
*
diff --git a/src/H5Gpublic.h b/src/H5Gpublic.h
index 74f0da7..a663395 100644
--- a/src/H5Gpublic.h
+++ b/src/H5Gpublic.h
@@ -120,7 +120,7 @@ extern "C" {
*
* \since 1.8.0
*
- * \see H5Gopen2(), H5Gclose()
+ * \see H5Gopen2()
*
*/
H5_DLL hid_t H5Gcreate2(hid_t loc_id, const char *name, hid_t lcpl_id, hid_t gcpl_id, hid_t gapl_id);
@@ -167,7 +167,7 @@ H5_DLL hid_t H5Gcreate2(hid_t loc_id, const char *name, hid_t lcpl_id, hid_t gcp
* H5Gclose() when the group is no longer needed so that resource
* leaks will not develop.
*
- * \see H5Olink(), H5Dcreate(), \ref api-compat-macros
+ * \see H5Olink(), H5Gcreate()
*
* \since 1.8.0
*
@@ -199,7 +199,7 @@ H5_DLL hid_t H5Gcreate_anon(hid_t loc_id, hid_t gcpl_id, hid_t gapl_id);
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
+ * \see H5Gcreate2()
*
*/
H5_DLL hid_t H5Gopen2(hid_t loc_id, const char *name, hid_t gapl_id);
@@ -218,12 +218,10 @@ H5_DLL hid_t H5Gopen2(hid_t loc_id, const char *name, hid_t gapl_id);
* property list associated with the group specified by \p group_id.
*
* The creation property list identifier should be released with
- * H5Gclose() to prevent resource leaks.
+ * H5Pclose() to prevent resource leaks.
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL hid_t H5Gget_create_plist(hid_t group_id);
@@ -250,8 +248,6 @@ H5_DLL hid_t H5Gget_create_plist(hid_t group_id);
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL herr_t H5Gget_info(hid_t loc_id, H5G_info_t *ginfo);
@@ -284,8 +280,6 @@ H5_DLL herr_t H5Gget_info(hid_t loc_id, H5G_info_t *ginfo);
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL herr_t H5Gget_info_by_name(hid_t loc_id, const char *name, H5G_info_t *ginfo, hid_t lapl_id);
@@ -331,8 +325,6 @@ H5_DLL herr_t H5Gget_info_by_name(hid_t loc_id, const char *name, H5G_info_t *gi
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL herr_t H5Gget_info_by_idx(hid_t loc_id, const char *group_name, H5_index_t idx_type,
H5_iter_order_t order, hsize_t n, H5G_info_t *ginfo, hid_t lapl_id);
@@ -360,8 +352,6 @@ H5_DLL herr_t H5Gget_info_by_idx(hid_t loc_id, const char *group_name, H5_index_
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL herr_t H5Gflush(hid_t group_id);
@@ -385,8 +375,6 @@ H5_DLL herr_t H5Gflush(hid_t group_id);
*
* \since 1.8.0
*
- * \see H5Gcreate2(), H5Gclose()
- *
*/
H5_DLL herr_t H5Grefresh(hid_t group_id);
diff --git a/src/H5Lpublic.h b/src/H5Lpublic.h
index 9e3084d..e487b0f 100644
--- a/src/H5Lpublic.h
+++ b/src/H5Lpublic.h
@@ -733,7 +733,7 @@ H5_DLL htri_t H5Lexists(hid_t loc_id, const char *name, hid_t lapl_id);
* \p cset specifies the character set in which the link name is
* encoded. Valid values include the following:
* \csets
- * This value is set with H5Pset_char_encoding().
+ * This value is set with #H5Pset_char_encoding.
*
* \c token is the location that a hard link points to, and
* \c val_size is the size of a soft link or user defined link value.
@@ -888,10 +888,12 @@ H5_DLL ssize_t H5Lget_name_by_idx(hid_t loc_id, const char *group_name, H5_index
* not been indexed by the index type, they will first be sorted by
* that index then the iteration will begin; if the links have been
* so indexed, the sorting step will be unnecessary, so the iteration
- * may begin more quickly.
+ * may begin more quickly. Valid values include the following:
+ * \indexes
*
* \p order specifies the order in which objects are to be inspected
- * along the index \p idx_type.
+ * along the index \p idx_type. Valid values include the following:
+ * \orders
*
* \p idx_p tracks the iteration and allows an iteration to be
* resumed if it was stopped before all members were processed. It is
@@ -1680,7 +1682,7 @@ typedef herr_t (*H5L_iterate1_t)(hid_t group, const char *name, const H5L_info1_
* \c cset specifies the character set in which the link name is
* encoded. Valid values include the following:
* \csets
- * This value is set with H5Pset_char_encoding().
+ * This value is set with #H5Pset_char_encoding.
*
* \c address and \c val_size are returned for hard and symbolic
* links, respectively. Symbolic links include soft and external links
@@ -1796,10 +1798,12 @@ H5_DLL herr_t H5Lget_info_by_idx1(hid_t loc_id, const char *group_name, H5_index
* not been indexed by the index type, they will first be sorted by
* that index then the iteration will begin; if the links have been
* so indexed, the sorting step will be unnecessary, so the iteration
- * may begin more quickly.
+ * may begin more quickly. Valid values include the following:
+ * \indexes
*
* \p order specifies the order in which objects are to be inspected
- * along the index \p idx_type.
+ * along the index \p idx_type. Valid values include the following:
+ * \orders
*
* \p idx_p tracks the iteration and allows an iteration to be
* resumed if it was stopped before all members were processed. It is
diff --git a/src/H5MMpublic.h b/src/H5MMpublic.h
index 70ac644..d4aba98 100644
--- a/src/H5MMpublic.h
+++ b/src/H5MMpublic.h
@@ -14,8 +14,6 @@
/*-------------------------------------------------------------------------
*
* Created: H5MMpublic.h
- * Jul 10 1997
- * Robb Matzke
*
* Purpose: Public declarations for the H5MM (memory management)
* package.
diff --git a/src/H5Mpublic.h b/src/H5Mpublic.h
index 25d3058..24d207c 100644
--- a/src/H5Mpublic.h
+++ b/src/H5Mpublic.h
@@ -208,6 +208,9 @@ H5_DLL hid_t H5Mget_val_type(hid_t map_id);
* \details H5Mget_create_plist() returns an identifier for a copy of the
* creation property list for a map object specified by \p map_id.
*
+ * The creation property list identifier should be released with
+ * H5Pclose() to prevent resource leaks.
+ *
* \since 1.12.0
*
*/
diff --git a/src/H5Opublic.h b/src/H5Opublic.h
index cc131e1..a645592 100644
--- a/src/H5Opublic.h
+++ b/src/H5Opublic.h
@@ -304,7 +304,7 @@ H5_DLL hid_t H5Oopen_by_token(hid_t loc_id, H5O_token_t token);
*
* \return \hid_tv{object}
*
- * \details H5Open_by_idx() opens the nth object in the group specified by \p loc_id
+ * \details H5Oopen_by_idx() opens the nth object in the group specified by \p loc_id
* and \p group_name.
*
* \p loc_id specifies a location identifier.
diff --git a/src/H5PLextern.h b/src/H5PLextern.h
index 7f3df5e..d136051 100644
--- a/src/H5PLextern.h
+++ b/src/H5PLextern.h
@@ -2,7 +2,7 @@
* Copyright by The HDF Group. *
* All rights reserved. *
* *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
diff --git a/src/H5PLmodule.h b/src/H5PLmodule.h
index 66a24fd..fff1e95 100644
--- a/src/H5PLmodule.h
+++ b/src/H5PLmodule.h
@@ -2,7 +2,7 @@
* Copyright by The HDF Group. *
* All rights reserved. *
* *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
diff --git a/src/H5PLpublic.h b/src/H5PLpublic.h
index 55ff594..a886375 100644
--- a/src/H5PLpublic.h
+++ b/src/H5PLpublic.h
@@ -2,7 +2,7 @@
* Copyright by The HDF Group. *
* All rights reserved. *
* *
- * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
diff --git a/src/H5Pmodule.h b/src/H5Pmodule.h
index c7ab3bd..04eb124 100644
--- a/src/H5Pmodule.h
+++ b/src/H5Pmodule.h
@@ -789,9 +789,9 @@
* <li>\ref subsec_file_property_lists</li>
* <li>\ref subsubsec_file_examples_props</li>
* <li>\ref subsubsec_file_examples_access</li>
- * <li>"File creation property list functions (H5P)"</li>
- * <li>"File access property list functions (H5P)"</li>
- * <li>"File driver functions (H5P)"</li></ul>
+ * <li>\ref dcpl_table_tag "Dataset creation property list functions (H5P)"</li>
+ * <li>\ref fapl_table_tag "File access property list functions (H5P)"</li>
+ * <li>\ref fd_pl_table_tag "File driver property list functions (H5P)"</li></ul>
* \li In the \ref sec_attribute chapter, see "Attribute creation property list functions (H5P)".
* \li In the \ref sec_group chapter, see "Group creation property list functions (H5P)".
* \li Property lists are discussed throughout \ref sec_dataset.
@@ -799,16 +799,16 @@
* All property list functions are described in the \ref H5P section of the
* \ref RM. The function index at the top of the page provides a categorized listing
* grouped by property list class. Those classes are listed below:
- * \li File creation properties
- * \li File access properties
- * \li Group creation properties
- * \li Dataset creation properties
- * \li Dataset access properties
- * \li Dataset transfer properties
- * \li Link creation properties
- * \li Link access properties
- * \li Object creation properties
- * \li Object copy properties
+ * \li \ref FCPL
+ * \li \ref FAPL
+ * \li \ref GCPL
+ * \li \ref DCPL
+ * \li \ref DAPL
+ * \li \ref DXPL
+ * \li \ref LCPL
+ * \li \ref LAPL
+ * \li \ref OCPL
+ * \li \ref OCPYPL
*
* Additional categories not related to the class structure are as follows:
* \li General property list operations
@@ -894,135 +894,186 @@
* or writing data. Property lists can be modified by adding or changing
* properties. Property lists are deleted by closing the associated handles.
*
- * <table>
- * <tr><th>Create</th><th>Read</th></tr>
- * <tr valign="top">
- * <td>
- * \snippet{lineno} H5P_examples.c create
- * </td>
- * <td>
- * \snippet{lineno} H5P_examples.c read
- * </td>
- * <tr><th>Update</th><th>Delete</th></tr>
- * <tr valign="top">
- * <td>
- * \snippet{lineno} H5P_examples.c update
- * </td>
- * <td>
- * \snippet{lineno} H5P_examples.c delete
- * </td>
- * </tr>
- * </table>
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox plcr_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox plcra_table
+ *
+ * \ref PLCR / \ref OCPL / \ref GCPL
+ * \snippet{doc} tables/propertyLists.dox fcpl_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox fapl_table
+ * \snippet{doc} tables/propertyLists.dox fd_pl_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox lapl_table
+ *
+ * \ref PLCR / \ref OCPL
+ * \snippet{doc} tables/propertyLists.dox dcpl_table
+ *
+ * \ref PLCR / \ref LAPL
+ * \snippet{doc} tables/propertyLists.dox dapl_table
+ *
+ * \ref PLCR / \ref OCPL
+ * \snippet{doc} tables/propertyLists.dox gcpl_table
+ *
+ * \ref PLCR / \ref LAPL
+ * \snippet{doc} tables/propertyLists.dox gapl_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox ocpl_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox ocpypl_table
+ *
+ * \ref PLCR
+ * \snippet{doc} tables/propertyLists.dox strcpl_table
+ *
+ * \ref PLCR / \ref STRCPL
+ * \snippet{doc} tables/propertyLists.dox lcpl_table
+ *
+ * \ref PLCR / \ref STRCPL
+ * \snippet{doc} tables/propertyLists.dox acpl_table
+ *
*
* \defgroup STRCPL String Creation Properties
+ * \ingroup H5P
* Currently, there are only two creation properties that you can use to control
* the creation of HDF5 attributes and links. The first creation property, the
* choice of a character encoding, applies to both attributes and links.
* The second creation property applies to links only, and advises the library
* to automatically create missing intermediate groups when creating new objects.
- * \ingroup H5P
+ *
+ * \snippet{doc} tables/propertyLists.dox strcpl_table
*
* \defgroup LCPL Link Creation Properties
- * The first creation property, the choice of a character encoding, applies to
- * both attributes and links.
- * The second creation property applies to links only, and advises the library
- * to automatically create missing intermediate groups when creating new objects.
* \ingroup STRCPL
+ * This creation property applies to links only, and advises the library
+ * to automatically create missing intermediate groups when creating new objects.
+ *
+ * \snippet{doc} tables/propertyLists.dox lcpl_table
*
* @see STRCPL
*
* \defgroup ACPL Attribute Creation Properties
- * The creation property, the choice of a character encoding, applies to attributes.
* \ingroup STRCPL
+ * The creation property, the choice of a character encoding, applies to attributes.
+ *
+ * \snippet{doc} tables/propertyLists.dox acpl_table
*
* @see STRCPL
*
* \defgroup LAPL Link Access Properties
* \ingroup H5P
*
+ * \snippet{doc} tables/propertyLists.dox lapl_table
+ *
* \defgroup DAPL Dataset Access Properties
+ * \ingroup LAPL
* Use dataset access properties to modify the default behavior of the HDF5
* library when accessing datasets. The properties include adjusting the size
* of the chunk cache, providing prefixes for external content and virtual
* dataset file paths, and controlling flush behavior, etc. These properties
* are \Emph{not} persisted with datasets, and can be adjusted at runtime before
* a dataset is created or opened.
- * \ingroup LAPL
+ *
+ * \snippet{doc} tables/propertyLists.dox dapl_table
*
* \defgroup DCPL Dataset Creation Properties
+ * \ingroup OCPL
* Use dataset creation properties to control aspects of dataset creation such
* as fill time, storage layout, compression methods, etc.
* Unlike dataset access and transfer properties, creation properties \Emph{are}
* stored with the dataset, and cannot be changed once a dataset has been
* created.
- * \ingroup OCPL
+ *
+ * \snippet{doc} tables/propertyLists.dox dcpl_table
*
* \defgroup DXPL Dataset Transfer Properties
+ * \ingroup H5P
* Use dataset transfer properties to customize certain aspects of reading
* and writing datasets such as transformations, MPI-IO I/O mode, error
* detection, etc. These properties are \Emph{not} persisted with datasets,
* and can be adjusted at runtime before a dataset is read or written.
- * \ingroup H5P
+ *
+ * \snippet{doc} tables/propertyLists.dox dxpl_table
*
* \defgroup FAPL File Access Properties
+ * \ingroup H5P
* Use file access properties to modify the default behavior of the HDF5
* library when accessing files. The properties include selecting a virtual
* file driver (VFD), configuring the metadata cache (MDC), control
* file locking, etc. These properties are \Emph{not} persisted with files, and
* can be adjusted at runtime before a file is created or opened.
- * \ingroup H5P
+ *
+ * \snippet{doc} tables/propertyLists.dox fapl_table
+ * \snippet{doc} tables/propertyLists.dox fd_pl_table
*
* \defgroup FCPL File Creation Properties
+ * \ingroup GCPL
* Use file creation properties to control aspects of file creation such
* as setting a file space management strategy or creating a user block.
* Unlike file access properties, creation properties \Emph{are}
* stored with the file, and cannot be changed once a file has been
* created.
- * \ingroup GCPL
*
- * \defgroup GAPL General Access Properties
- * The functions in this section can be applied to different kinds of property
- * lists.
+ * \snippet{doc} tables/propertyLists.dox fcpl_table
+ *
+ * \defgroup GAPL Group Access Properties
* \ingroup LAPL
+ * The functions in this section can be applied to group property lists.
+ *
+ * \snippet{doc} tables/propertyLists.dox gapl_table
*
* \defgroup GCPL Group Creation Properties
+ * \ingroup OCPL
* Use group creation properties to control aspects of group creation such
* as storage layout, compression, and link creation order tracking.
* Unlike file access properties, creation properties \Emph{are}
* stored with the group, and cannot be changed once a group has been
* created.
- * \ingroup OCPL
+ *
+ * \snippet{doc} tables/propertyLists.dox gcpl_table
*
* \defgroup PLCR Property List Class Root
- * Use the functions in this module to manage HDF5 property lists.
* \ingroup H5P
+ * Use the functions in this module to manage HDF5 property lists.
+ *
+ * \snippet{doc} tables/propertyLists.dox plcr_table
*
* \defgroup PLCRA Property List Class Root (Advanced)
+ * \ingroup H5P
* You can create and customize user-defined property list classes using the
* functions described below. Arbitrary user-defined properties can also
* be inserted into existing property lists as so-called temporary properties.
- * \ingroup H5P
*
+ * \snippet{doc} tables/propertyLists.dox plcra_table
*
* \defgroup OCPL Object Creation Properties
* \ingroup H5P
*
+ * \snippet{doc} tables/propertyLists.dox ocpl_table
+ *
* \defgroup OCPYPL Object Copy Properties
* \ingroup H5P
*
+ * \snippet{doc} tables/propertyLists.dox ocpypl_table
+ *
* \defgroup FMPL File Mount Properties
- * Empty property class.
* \ingroup H5P
+ * Empty property class.
*
*
* \defgroup TCPL Datatype Creation Properties
- * TCPL isn't supported yet.
* \ingroup OCPL
+ * TCPL isn't supported yet.
*
*
* \defgroup TAPL Datatype Access Properties
- * TAPL isn't supported yet.
* \ingroup LAPL
+ * TAPL isn't supported yet.
*
*
*
diff --git a/src/H5Ppublic.h b/src/H5Ppublic.h
index 8990922..366bf81 100644
--- a/src/H5Ppublic.h
+++ b/src/H5Ppublic.h
@@ -5675,6 +5675,9 @@ H5_DLL herr_t H5Pget_dset_no_attrs_hint(hid_t dcpl_id, hbool_t *minimize);
* are null pointers then the corresponding information is not
* returned.
*
+ * \note On Windows, off_t is typically a 32-bit signed long value, which
+ * limits the valid offset that can be returned to 2 GiB.
+ *
* \version 1.6.4 \p idx parameter type changed to unsigned.
* \since 1.0.0
*
@@ -8054,9 +8057,8 @@ H5_DLL herr_t H5Pget_mpio_no_collective_cause(hid_t plist_id, uint32_t *local_no
uint32_t *global_no_collective_cause);
#endif /* H5_HAVE_PARALLEL */
-/* Link creation property list (LCPL) routines */
/**
- * \ingroup STRCPL
+ * \ingroup LCPL
*
* \brief Determines whether property is set to enable creating missing
* intermediate groups
@@ -8087,7 +8089,7 @@ H5_DLL herr_t H5Pget_mpio_no_collective_cause(hid_t plist_id, uint32_t *local_no
*/
H5_DLL herr_t H5Pget_create_intermediate_group(hid_t plist_id, unsigned *crt_intmd /*out*/);
/**
- * \ingroup STRCPL
+ * \ingroup LCPL
*
* \brief Specifies in property list whether to create missing
* intermediate groups
@@ -8469,9 +8471,8 @@ H5_DLL herr_t H5Pget_map_iterate_hints(hid_t mapl_id, size_t *key_prefetch_size
size_t *key_alloc_size /*out*/);
#endif /* H5_HAVE_MAP_API */
-/* String creation property list (STRCPL) routines */
/**
- * \ingroup STRCPL
+ * \ingroup ACPL
*
* \brief Retrieves the character encoding used to create a link or
* attribute name
@@ -8500,7 +8501,7 @@ H5_DLL herr_t H5Pget_map_iterate_hints(hid_t mapl_id, size_t *key_prefetch_size
*/
H5_DLL herr_t H5Pget_char_encoding(hid_t plist_id, H5T_cset_t *encoding /*out*/);
/**
- * \ingroup STRCPL
+ * \ingroup ACPL
*
* \brief Sets the character encoding used to encode link and attribute
* names
diff --git a/src/H5Tmodule.h b/src/H5Tmodule.h
index 83f7467..590a60c 100644
--- a/src/H5Tmodule.h
+++ b/src/H5Tmodule.h
@@ -3872,26 +3872,6 @@ filled according to the value of this property. The padding can be:
* to HDF5 files and linked to groups as HDF5 datatype objects or so-called
* \Emph{committed datatypes}.
*
- * <table>
- * <tr><th>Create</th><th>Read</th></tr>
- * <tr valign="top">
- * <td>
- * \snippet{lineno} H5T_examples.c create
- * </td>
- * <td>
- * \snippet{lineno} H5T_examples.c read
- * </td>
- * <tr><th>Update</th><th>Delete</th></tr>
- * <tr valign="top">
- * <td>
- * \snippet{lineno} H5T_examples.c update
- * </td>
- * <td>
- * \snippet{lineno} H5T_examples.c delete
- * </td>
- * </tr>
- * </table>
- *
* \defgroup ARRAY Array Datatypes
* \ingroup H5T
* \defgroup ATOM Atomic Datatypes
@@ -3912,33 +3892,36 @@ filled according to the value of this property. The padding can be:
*
* \defgroup PDT Predefined Datatypes
* \ingroup H5T
- * \details What is a predefined HDF5 datatype?
- * \todo Fill in the blanks!
*
* \defgroup PDTCPU By CPU
* \ingroup PDT
* \details CPU-specific datatypes
* \defgroup PDTALPHA DEC Alpha
* \ingroup PDTCPU
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_dec_datatypes_table
* \defgroup PDTX86 AMD & INTEL
* \ingroup PDTCPU
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_intel_datatypes_table
* \defgroup PDTMIPS SGI MIPS
* \ingroup PDTCPU
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_mips_datatypes_table
*
* \defgroup PDTIEEE IEEE
* \ingroup PDT
* \details The IEEE floating point types in big- and little-endian byte orders.
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_ieee_datatypes_table
*
* \defgroup PDTSTD Standard Datatypes
* \ingroup PDT
* \details These are "standard" types. For instance, signed (2's complement)
* and unsigned integers of various sizes in big- and little-endian
* byte orders.
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_std_datatypes_table
*
* \defgroup PDTUNIX UNIX-specific Datatypes
* \ingroup PDT
* \details Types which are particular to Unix.
- * \todo Fill in the blanks!
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_unix_datatypes_table
*
* \defgroup PDTNAT Native Datatypes
* \ingroup PDT
@@ -3952,13 +3935,16 @@ filled according to the value of this property. The padding can be:
* \li The datatype \c LLONG corresponds C's \Code{long long} and
* \c LDOUBLE is \Code{long double}. These types might be the same
* as \c LONG and \c DOUBLE, respectively.
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_native_datatypes_table
+ *
* \defgroup PDTC9x C9x Integer Datatypes
* \ingroup PDTNAT
* \details C9x integer types
- * \todo Fill in the blanks!
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_c9x_datatypes_table
*
* \defgroup PDTS Strings
* \ingroup PDT
+ * \snippet{doc} tables/predefinedDatatypes.dox predefined_string_datatypes_table
*
*/
diff --git a/src/H5Tpublic.h b/src/H5Tpublic.h
index 13e92f6..29008db 100644
--- a/src/H5Tpublic.h
+++ b/src/H5Tpublic.h
@@ -1083,7 +1083,7 @@ H5_DLLVAR hid_t H5T_NATIVE_UINT_FAST64_g;
* When creating a fixed-length string datatype, \p size will
* be the length of the string in bytes. The length of the
* string in characters will depend on i the encoding used; see
- * H5Pset_char_encoding().
+ * #H5Pset_char_encoding.
*
* ENUMs created with this function have a signed native integer
* base datatype. Use H5Tenum_create() if a different integer base
diff --git a/src/H5VLmodule.h b/src/H5VLmodule.h
index 1ad0c8d..9fc14ab 100644
--- a/src/H5VLmodule.h
+++ b/src/H5VLmodule.h
@@ -27,18 +27,18 @@
#define H5_MY_PKG_ERR H5E_VOL
#define H5_MY_PKG_INIT YES
-/** \page H5VL_UG The HDF5 VOL plugin
+/** \page H5VL_UG The HDF5 Virtual Object Layer (VOL)
*
- * \section sec_vol The HDF5 VOL plugin
+ * \section sec_vol The HDF5 Virtual Object Layer (VOL)
*
- * \section subsec_vol_intro Introduction
+ * \subsection subsec_vol_intro Introduction
* The virtual object layer is an abstraction layer in the HDF5 library that intercepts all API calls
- * that could potentially access objects in an HDF5 container and forwards those calls to a VOL connector,
- * which implements the storage. The user or application gets the benefit of using the familiar and
- * widely-used HDF5 data model and API, but can map the physical storage of the HDF5 file and objects
- * to storage that better meets the application's data needs.
+ * that could potentially access objects in an HDF5 container and forwards those calls to a VOL
+ * connector, which implements the storage. The user or application gets the benefit of using the
+ * familiar and widely-used HDF5 data model and API, but can map the physical storage of the HDF5 file
+ * and objects to storage that better meets the application’s data needs.
*
- * \section subsec_vol_abstract_layer The VOL Abstraction Layer
+ * \subsection subsec_vol_abstract_layer The VOL Abstraction Layer
* The VOL lies just under the public API. When a storage-oriented public APIcall is made, the library
* performs a few sanity checks on the input parameters and then immediately invokes a VOL callback,
* which resolves to an implementation in the VOL connector that was selected when opening or creating
@@ -74,11 +74,11 @@
* For more information about which calls go through the VOL and the mechanism by which this is implemented,
* see the connector author and library internals documentation.
*
- * \section subsec_vol_connect VOL Connectors
+ * \subsection subsec_vol_connect VOL Connectors
* A VOL connector can be implemented in several ways:
* \li as a shared or static library linked to an application
* \li as a dynamically loaded plugin, implemented as a shared library
- * \li and even as an internal connector, built into the HDF5 libraryitself
+ * \li and even as an internal connector, built into the HDF5 library itself
*
* This section mostly focuses on external connectors, both libraries and plugins, as those are expected
* to be much more common than internal implementations.
@@ -122,7 +122,9 @@
* \todo Describe the VOL plugin life cycle.
*
* \defgroup ASYNC Asynchronous Functions
- * \brief Asynchronous Functions
+ * \brief List of the asynchronous functions.
+ * \note The argument \p es_id associated with the asynchronous APIs is the \Emph{event set id}. See H5ES for
+ *context.
*
* \defgroup H5VLDEF Definitions
* \ingroup H5VL