summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2022-09-16 17:45:06 (GMT)
committerGitHub <noreply@github.com>2022-09-16 17:45:06 (GMT)
commita9d8b469f46d2f5de7521b986d2e14725e081eb9 (patch)
tree263cfa5e5b2b7147d511eeb8742520227fdb311f /src
parent16aa2dbaa0e70bf81f4329a70a45c601433549bb (diff)
downloadhdf5-a9d8b469f46d2f5de7521b986d2e14725e081eb9.zip
hdf5-a9d8b469f46d2f5de7521b986d2e14725e081eb9.tar.gz
hdf5-a9d8b469f46d2f5de7521b986d2e14725e081eb9.tar.bz2
Use doxygen snippets for common tables (#2104)
Diffstat (limited to 'src')
-rw-r--r--src/H5Dmodule.h307
-rw-r--r--src/H5Fmodule.h298
-rw-r--r--src/H5Gmodule.h95
-rw-r--r--src/H5Pmodule.h153
-rw-r--r--src/H5Ppublic.h10
5 files changed, 120 insertions, 743 deletions
diff --git a/src/H5Dmodule.h b/src/H5Dmodule.h
index 474efd9..ad1e659 100644
--- a/src/H5Dmodule.h
+++ b/src/H5Dmodule.h
@@ -181,250 +181,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.
@@ -1105,41 +866,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
@@ -1156,29 +883,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
diff --git a/src/H5Fmodule.h b/src/H5Fmodule.h
index 867ef0e..2d02e2f 100644
--- a/src/H5Fmodule.h
+++ b/src/H5Fmodule.h
@@ -410,204 +410,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.
@@ -864,100 +675,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 defa5fa..4b58ee6 100644
--- a/src/H5Gmodule.h
+++ b/src/H5Gmodule.h
@@ -480,100 +480,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>
diff --git a/src/H5Pmodule.h b/src/H5Pmodule.h
index d5ef982..38d06e2 100644
--- a/src/H5Pmodule.h
+++ b/src/H5Pmodule.h
@@ -788,9 +788,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.
@@ -798,16 +798,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
@@ -893,135 +893,184 @@
* 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
+ *
+ * \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
*
* \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 5bf2b21..350c7dc 100644
--- a/src/H5Ppublic.h
+++ b/src/H5Ppublic.h
@@ -8202,9 +8202,8 @@ H5_DLL herr_t H5Pset_dataset_io_hyperslab_selection(hid_t plist_id, unsigned ran
const hsize_t start[], const hsize_t stride[],
const hsize_t count[], const hsize_t block[]);
-/* Link creation property list (LCPL) routines */
/**
- * \ingroup STRCPL
+ * \ingroup LCPL
*
* \brief Determines whether property is set to enable creating missing
* intermediate groups
@@ -8235,7 +8234,7 @@ H5_DLL herr_t H5Pset_dataset_io_hyperslab_selection(hid_t plist_id, unsigned ran
*/
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
@@ -8617,9 +8616,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
@@ -8648,7 +8646,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