Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add missing row for the ROS3 VFD in table #3415 #3517

Merged
merged 1 commit into from
Sep 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
144 changes: 106 additions & 38 deletions doxygen/examples/tables/fileDriverLists.dox
Original file line number Diff line number Diff line change
Expand Up @@ -8,32 +8,64 @@
<th>Description</th>
</tr>
<tr>
<td>#H5FD_SEC2</td>
<td>Serial I/O to file using Unix “section 2” functions.</td>
</tr>
<tr>
<td>#H5FD_CORE</td>
<td>Store in memory (optional backing store to disk file).</td>
</tr>
<tr>
<td>#H5FD_LOG</td>
<td>Store in logging 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>
<td>#H5FD_MULTI</td>
<td>Store in multiple files. There are several options to control layout.</td>
</tr>
<tr>
<td>#H5FD_STDIO</td>
<td>Serial I/O to file using Unix “stdio” functions.</td>
</tr>
<tr>
<td>#H5FD_SPLITTER</td>
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</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>
<td>#H5FD_DIRECT</td>
<td>Forces data writes to the file directly without using the system kernel buffer.</td>
</tr>
<tr>
<td>#H5FD_SEC2</td>
<td>Serial I/O to file using Unix “section 2” functions.</td>
<td>#H5FD_MIRROR</td>
<td>Serial I/O to file using Unix “stdio” functions.</td>
</tr>
<tr>
<td>#H5FD_STDIO</td>
<td>Serial I/O to file using Unix “stdio” functions.</td>
<td>#H5FD_HDFS</td>
<td>Read-Only access to Hadoop Distributed File System (HDFS).</td>
</tr>
<tr>
<td>#H5FD_ROS3</td>
<td>Read-Only access to Amazon's S3 service.</td>
</tr>
<tr>
<td>#H5FD_SUBFILING</td>
<td>Derived from other "stacked" VFDs such as the splitter, mirror, and family VFDs.</td>
</tr>
<tr>
<td>#H5FD_IOC</td>
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</td>
</tr>
<tr>
<td>#H5FD_ONION</td>
<td>Provide in-file provenance and revision/version control.</td>
</tr>
</table>
//! [file_driver_table]
Expand All @@ -57,33 +89,6 @@ 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
Expand All @@ -92,6 +97,12 @@ version of the file can be written back to disk or abandoned.</td>
<td>#H5Pset_fapl_core</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>Family</td>
<td>#H5FD_FAMILY</td>
<td>With this driver, the HDF5 file's address space is partitioned into pieces and sent to
Expand All @@ -105,14 +116,21 @@ systems that do not support files larger than 2 gigabytes.</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>
<td>#H5Pset_fapl_multi / #H5Pset_fapl_split</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>Split</td>
<td>H5FD_SPLIT</td>
<td>#H5FD_SPLITTER</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>
<td>#H5Pset_fapl_splitter</td>
</tr>
<tr>
<td>Parallel</td>
Expand All @@ -122,6 +140,56 @@ standard for both communication and file I/O.</td>
<td>#H5Pset_fapl_mpio</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>Mirror</td>
<td>#H5FD_MIRROR</td>
<td>Serial I/O to file using Unix “stdio” functions.</td>
<td>#H5Pset_fapl_mirror</td>
</tr>
<tr>
<td>HDFS</td>
<td>#H5FD_HDFS</td>
<td>Read-Only access to Hadoop Distributed File System (HDFS).</td>
<td>#H5Pset_fapl_hdfs</td>
</tr>
<tr>
<td>ros3</td>
<td>#H5FD_ROS3</td>
<td>Read-Only access to Amazon's S3 service.</td>
<td>#H5Pset_fapl_ros3</td>
</tr>
<tr>
<td>Subfiling</td>
<td>#H5FD_SUBFILING</td>
<td>Derived from other "stacked" VFDs such as the splitter, mirror, and family VFDs.</td>
<td>#H5Pset_fapl_subfiling</td>
</tr>
<tr>
<td>IOC</td>
<td>#H5FD_IOC</td>
<td>Relays VFD calls to one VFD, and write calls to another VFD. Maintains two files.</td>
<td>#H5Pset_fapl_ioc</td>
</tr>
<tr>
<td>Onion</td>
<td>#H5FD_ONION</td>
<td>Provide in-file provenance and revision/version control.</td>
<td>#H5Pset_fapl_onion</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>Parallel POSIX</td>
<td>H5FD_MPIPOSIX</td>
<td>This driver is no longer available</td>
Expand Down
13 changes: 11 additions & 2 deletions doxygen/examples/tables/propertyLists.dox
Original file line number Diff line number Diff line change
Expand Up @@ -351,7 +351,8 @@ larger than 2 gigabytes, or retrieves information regarding driver.</td>
</tr>
<tr>
<td>#H5Pset_fapl_log</td>
<td>Sets logging driver.</td>
<td>The logging driver is a clone of the standard SEC2 (#H5FD_SEC2) driver with additional
facilities for logging metrics and activity to a file.</td>
</tr>
<tr>
<td>#H5Pset_fapl_mirror/#H5Pget_fapl_mirror</td>
Expand All @@ -376,15 +377,23 @@ or retrieves information regarding driver.</td>
<td>Modifies/queries the file driver properties of the onion driver.</td>
</tr>
<tr>
<td>#H5Pset_fapl_ros3/#H5Pget_fapl_ros3</td>
<td>Modifies/queries the file driver properties of the ros3 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
<td>Sets driver for split files, a limited case of multi driver with one metadata file
and one raw data file.</td>
</tr>
<tr>
<td>#H5Pset_fapl_splitter/#H5Pget_fapl_splitter</td>
<td>Modifies/queries the file driver properties of the splitter driver.</td>
</tr>
<tr>
<td>#H5Pset_fapl_stdio</td>
<td>Sets driver for buffered permanent files.</td>
</tr>
Expand Down
2 changes: 1 addition & 1 deletion src/H5Fmodule.h
Original file line number Diff line number Diff line change
Expand Up @@ -998,7 +998,7 @@
* Additional parameters may be added to these functions in the future.
*
* \subsubsection subsubsec_file_alternate_drivers_split The Split Driver
* The Split driver, H5FD_SPLIT, is a limited case of the Multi driver where only two files are
* The Split driver is a limited case of the Multi driver where only two files are
* created. One file holds metadata, and the other file holds raw data.
* The function #H5Pset_fapl_split is used to manage Split file access properties. See the example
* below.
Expand Down
2 changes: 1 addition & 1 deletion src/H5Fpublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -1730,7 +1730,7 @@ H5_DLL herr_t H5Fset_dset_no_attrs_hint(hid_t file_id, hbool_t minimize);
* pass the same values for \p file_id and \p flag.
*
* This function is available only when the HDF5 library is configured with parallel support
* (\Code{--enable-parallel}). It is useful only when used with the #H5FD_MPIO driver
* (\Code{--enable-parallel | HDF5_ENABLE_PARALLEL}). It is useful only when used with the #H5FD_MPIO driver
* (see H5Pset_fapl_mpio()).
* \endparblock
*
Expand Down
97 changes: 1 addition & 96 deletions src/H5Ppublic.h
Original file line number Diff line number Diff line change
Expand Up @@ -3354,102 +3354,7 @@ H5_DLL herr_t H5Pget_core_write_tracking(hid_t fapl_id, hbool_t *is_enabled, siz
* Valid driver identifiers distributed with HDF5 are listed and
* described in the following table.
*
* <table>
* <tr>
* <th>Driver Name</th>
* <th>Driver Identifier</th>
* <th>Description</th>
* <th>Related Function</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 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>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
*
* This list does not include custom drivers that might be
* defined and registered by a user.
Expand Down