diff options
author | byrnHDF <byrnHDF@users.noreply.github.com> | 2023-06-26 19:22:17 (GMT) |
---|---|---|
committer | byrnHDF <byrnHDF@users.noreply.github.com> | 2023-06-26 19:22:17 (GMT) |
commit | d12e43bc201e15edffcdf94fe820aeae6ab44882 (patch) | |
tree | 90aa12006b20849b65b7bc8e3d4fe60a488f7247 /group___f_a_p_l.html | |
parent | 4d49d1ee001bd4dff6b01e1830902bee22a19f3e (diff) | |
download | hdf5-d12e43bc201e15edffcdf94fe820aeae6ab44882.zip hdf5-d12e43bc201e15edffcdf94fe820aeae6ab44882.tar.gz hdf5-d12e43bc201e15edffcdf94fe820aeae6ab44882.tar.bz2 |
deploy: ab4d2aec9779b7a37747c95bd7b514417b299f73
Diffstat (limited to 'group___f_a_p_l.html')
-rw-r--r-- | group___f_a_p_l.html | 5347 |
1 files changed, 5347 insertions, 0 deletions
diff --git a/group___f_a_p_l.html b/group___f_a_p_l.html new file mode 100644 index 0000000..33dddaa --- /dev/null +++ b/group___f_a_p_l.html @@ -0,0 +1,5347 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.9.1"/> +<meta name="viewport" content="width=device-width, initial-scale=1"/> +<title>HDF5: File Access Properties</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtreedata.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<link href="search/search.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="search/searchdata.js"></script> +<script type="text/javascript" src="search/search.js"></script> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ + $(document).ready(function() { init_search(); }); +/* @license-end */ +</script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +<link href="hdf5doxy.css" rel="stylesheet" type="text/css"> +<!-- <link href="hdf5doxy.css" rel="stylesheet" type="text/css"/> + --> +<script type="text/javascript" src="hdf5_navtree_hacks.js"></script> +</head> +<body> +<div style="background:#FFDDDD;font-size:120%;text-align:center;margin:0;padding:5px">Please, help us to better serve our user community by answering the following short survey: <a href="https://www.hdfgroup.org/website-survey/">https://www.hdfgroup.org/website-survey/</a></div> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td id="projectlogo"><img alt="Logo" src="HDFG-logo.png"/></td> + <td id="projectalign" style="padding-left: 0.5em;"> + <div id="projectname"><a href="https://www.hdfgroup.org">HDF5</a> +  <span id="projectnumber">1.15.0.ab4d2ae</span> + </div> + <div id="projectbrief">API Reference</div> + </td> + <td> <div id="MSearchBox" class="MSearchBoxInactive"> + <span class="left"> + <img id="MSearchSelect" src="search/mag_sel.svg" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + alt=""/> + <input type="text" id="MSearchField" value="Search" accesskey="S" + onfocus="searchBox.OnSearchFieldFocus(true)" + onblur="searchBox.OnSearchFieldFocus(false)" + onkeyup="searchBox.OnSearchFieldChange(event)"/> + </span><span class="right"> + <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a> + </span> + </div> +</td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.9.1 --> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +var searchBox = new SearchBox("searchBox", "search",false,'Search','.html'); +/* @license-end */ +</script> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ +$(document).ready(function(){initNavTree('group___f_a_p_l.html',''); initResizable(); }); +/* @license-end */ +</script> +<div id="doc-content"> +<!-- window showing the filter options --> +<div id="MSearchSelectWindow" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + onkeydown="return searchBox.OnSearchSelectKey(event)"> +</div> + +<!-- iframe showing the search results (closed by default) --> +<div id="MSearchResultsWindow"> +<iframe src="javascript:void(0)" frameborder="0" + name="MSearchResults" id="MSearchResults"> +</iframe> +</div> + +<div class="header"> + <div class="summary"> +<a href="#func-members">Functions</a> </div> + <div class="headertitle"> +<div class="title">File Access Properties<div class="ingroups"><a class="el" href="group___h5_p.html">Property Lists (H5P)</a></div></div> </div> +</div><!--header--> +<div class="contents"> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<p>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 <em>not</em> persisted with files, and can be adjusted at runtime before a file is created or opened.</p> +<p><a class="anchor" id="table_fapl_id"></a> +<table class="doxtable"> +<caption border="1" style="background-color:whitesmoke;">File access property list functions (H5P)</caption> +<tr> +<th>Function </th><th>Purpose </th></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a" title="Sets alignment properties of a file access property list.">H5Pset_alignment</a>/<a class="el" href="group___f_a_p_l.html#ga6735afde382cfd746b92a1a3b0e6a2ab" title="Retrieves the current settings for alignment properties from a file access property list.">H5Pget_alignment</a> </td><td>Sets/retrieves alignment properties. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache</a>/<a class="el" href="group___f_a_p_l.html#ga9481a0b08d729ec68897d57db1827861" title="Queries the raw data chunk cache parameters.">H5Pget_cache</a> </td><td>Sets/retrieves metadata cache and raw data chunk cache parameters. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga237e300b96222a259896b24cf52405b0" title="Sets write tracking information for core driver, H5FD_CORE.">H5Pset_core_write_tracking</a>/<a class="el" href="group___f_a_p_l.html#ga60ec714459a4911d28e46deb201f4f2e" title="Gets information about the write tracking feature used by the core VFD.">H5Pget_core_write_tracking</a> </td><td>Sets/retrieves write tracking information for core driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325" title="Sets the number of files that can be held open in an external link open file cache.">H5Pset_elink_file_cache_size</a>/<a class="el" href="group___f_a_p_l.html#ga4c9bcfff90f48bfefa2c25e551485923" title="Retrieves the size of the external link open file cache.">H5Pget_elink_file_cache_size</a> </td><td>Sets/retrieves the size of the external link open file cache from the specified file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gaa44cc0e592608e12082dad9305b3c74d" title="Controls the library's behavior of evicting metadata associated with a closed object.">H5Pset_evict_on_close</a>/<a class="el" href="group___f_a_p_l.html#ga12789fcfeaea073c13202e6401f404a6" title="Retrieves the file access property list setting that determines whether an HDF5 object will be evicte...">H5Pget_evict_on_close</a> </td><td>Set/get the file access property list setting that determines whether an HDF5 object will be evicted from the library's metadata cache when it is closed. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga61f01a12d5392ccf1321168f3c28f36f" title="Sets garbage collecting references flag.">H5Pset_gc_references</a>/<a class="el" href="group___f_a_p_l.html#gaaa81d8427b419d80eff6e1d216d99b71" title="Returns garbage collecting references setting.">H5Pget_gc_references</a> </td><td>Sets/retrieves garbage collecting references flag. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga6b24e6daf4816bbfb89b63bab40aa982" title="Sets offset property for low-level access to a file in a family of files.">H5Pset_family_offset</a> </td><td>Sets offset property for low-level access to a file in a family of files. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga14977eaaf6565ba871b575de3163f1b3" title="Retrieves a data offset from the file access property list.">H5Pget_family_offset</a> </td><td>Retrieves a data offset from the file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga60e3567f677fd3ade75b909b636d7b9c" title="Sets the file close degree.">H5Pset_fclose_degree</a>/<a class="el" href="group___f_a_p_l.html#ga41da04bb4f823ba9f7d6c57dc8fe2878" title="Returns the file close degree.">H5Pget_fclose_degree</a> </td><td>Sets/retrieves file close degree property. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image</a> </td><td>Sets an initial file image in a memory buffer. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b" title="Retrieves a copy of the file image designated as the initial content and structure of a file.">H5Pget_file_image</a> </td><td>Retrieves a copy of the file image designated as the initial content and structure of a file. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks</a>/<a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e" title="Retrieves callback routines for working with file images.">H5Pget_file_image_callbacks</a> </td><td>Sets/gets the callbacks for working with file images. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga503e9ff6121a67cf53f8b67054ed9391" title="Sets the file locking property values.">H5Pset_file_locking</a>/<a class="el" href="group___f_a_p_l.html#ga5de19a5a8ac23ca417aa2d49d708dc2d" title="Retrieves the file locking property values.">H5Pget_file_locking</a> </td><td>Sets/retrieves file locking property values. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1" title="Sets the minimum metadata block size.">H5Pset_meta_block_size</a>/<a class="el" href="group___f_a_p_l.html#gac17861181246af0209c0da5209305461" title="Returns the current metadata block size setting.">H5Pget_meta_block_size</a> </td><td>Sets the minimum metadata blocksize or retrieves the current metadata block size setting. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5" title="Sets the number of read attempts in a file access property list.">H5Pset_metadata_read_attempts</a>/<a class="el" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e" title="Retrieves the number of read attempts from a file access property list.">H5Pget_metadata_read_attempts</a> </td><td>Sets/gets the number of read attempts from a file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3" title="Set the initial metadata cache configuration in the indicated File Access Property List to the suppli...">H5Pset_mdc_config</a>/<a class="el" href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee" title="Get the current initial metadata cache configuration from the provided file access property list.">H5Pget_mdc_config</a> </td><td>Set/get the initial metadata cache configuration in the indicated file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434" title="Sets the metadata cache image option for a file access property list.">H5Pset_mdc_image_config</a>/<a class="el" href="group___f_a_p_l.html#gaaa18d59ee9efb12626410b1638f76f00" title="Retrieves the metadata cache image configuration values for a file access property list.">H5Pget_mdc_image_config</a> </td><td>Set/get the metadata cache image option for a file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga4d7206c5679d7243410058eceae59b2c" title="Sets metadata cache logging options.">H5Pset_mdc_log_options</a>/<a class="el" href="group___f_a_p_l.html#gaa3a1ca6e294cc5074933239cc3d0e4a3" title="Gets metadata cache logging options.">H5Pget_mdc_log_options</a> </td><td>Set/get the metadata cache logging options. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128" title="Specifies type of data to be accessed via the MULTI driver, enabling more direct access.">H5Pset_multi_type</a>/<a class="el" href="group___f_a_p_l.html#ga251515e9fee4641037b4866a4f7c49fe" title="Retrieves type of data property for MULTI driver.">H5Pget_multi_type</a> </td><td>Sets/gets the type of data property for the MULTI driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19" title="Sets a callback function to invoke when an object flush occurs in the file.">H5Pset_object_flush_cb</a>/<a class="el" href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e" title="Retrieves the object flush property values from the file access property list.">H5Pget_object_flush_cb</a> </td><td>Set/get the object flush property values from the file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga8008cddafa81bd1ddada23f6d9a161ca" title="Sets the maximum size for the page buffer and the minimum percentage for metadata and raw data pages.">H5Pset_page_buffer_size</a>/<a class="el" href="group___f_a_p_l.html#ga0da11baf31cf424d053aa7952c933d98" title="Retrieves the maximum size for the page buffer and the minimum percentage for metadata and raw data p...">H5Pget_page_buffer_size</a> </td><td>Set/get the maximum size for the page buffer. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga24fd737955839194bf5605d5f47928ee" title="Sets the maximum size of the data sieve buffer.">H5Pset_sieve_buf_size</a>/<a class="el" href="group___f_a_p_l.html#gac2321d0c34bb2b3cf33cd7bf02ca8e66" title="Returns maximum data sieve buffer size.">H5Pget_sieve_buf_size</a> </td><td>Sets/retrieves maximum size of data sieve buffer. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gacbe1724e7f70cd17ed687417a1d2a910" title="Controls the range of library release versions used when creating objects in a file.">H5Pset_libver_bounds</a> </td><td>Sets bounds on library versions, and indirectly format versions, to be used when creating objects. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gad5d7e671c3a06bcee64bc25841aaf607" title="Retrieves library version bounds settings that indirectly control the format versions used when creat...">H5Pget_libver_bounds</a> </td><td>Retrieves library version bounds settings that indirectly control the format versions used when creating objects. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga5a99962a79412814b79be830f14c23dd" title="Sets the size of a contiguous block reserved for small data.">H5Pset_small_data_block_size</a> </td><td>Sets the size of a contiguous block reserved for small data. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga6896bea06d7744b56e22347f572f5470" title="Retrieves the current small data block size setting.">H5Pget_small_data_block_size</a> </td><td>Retrieves the current small data block size setting. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga8aaa97e70b2544c3d95d908e1ae5b0f0" title="Set the file VOL connector for a file access property list.">H5Pset_vol</a> </td><td>Sets the file VOL connector for a file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga2ad4dc5c6e5e4271334a7b1c6ee0777d" title="Query the capability flags for the VOL connector that will be used with this file access property lis...">H5Pget_vol_cap_flags</a> </td><td>Retrieves the capability flags for the VOL connector that will be used with a file access property list. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga5f133bdf09ca5a32622688d1ba5cc838" title="Returns the identifier of the current VOL connector.">H5Pget_vol_id</a> </td><td>Retrieves the identifier of the current VOL connector. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gafc58db23c257cdcf2f0c1c3ae911ab0f" title="Returns a copy of the VOL information for a connector.">H5Pget_vol_info</a> </td><td>Retrieves a copy of the VOL information for a connector. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga6daceb4a9e51fca7cb198f964b67baf0" title="Set the MPI communicator and info.">H5Pset_mpi_params</a>/<a class="el" href="group___f_a_p_l.html#ga5554cf0775f9d7ac3b0cd844533d4486" title="Get the MPI communicator and info.">H5Pget_mpi_params</a> </td><td>Sets/retrieves the MPI communicator and info. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c" title="Sets metadata write mode to be collective or independent (default)">H5Pset_coll_metadata_write</a>/<a class="el" href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00" title="Retrieves metadata write mode setting.">H5Pget_coll_metadata_write</a> </td><td>Sets/retrieves metadata write mode setting. </td></tr> +</table> +<a class="anchor" id="table_fd_pl_id"></a> +<table class="doxtable"> +<caption border="1" style="background-color:whitesmoke;">File driver property list functions (H5P)</caption> +<tr> +<th>Function </th><th>Purpose </th></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga8bcce60e23e9d2a019212c63b146502e" title="Sets a file driver.">H5Pset_driver</a> </td><td>Sets a file driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga43a733fe9723dd15f5ad7abda909a1b8" title="Returns low-lever driver identifier.">H5Pget_driver</a> </td><td>Returns the identifier for the driver used to create a file. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2" title="Returns a pointer to file driver information.">H5Pget_driver_info</a> </td><td>Returns a pointer to file driver information. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga156702db27ece40d21b37be5fe5e8b15" title="Sets a file driver according to a given driver name.">H5Pset_driver_by_name</a> </td><td>Sets a file driver according to a given driver name. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gac4426b1d36aa8766fbe2deaf67a18c06" title="Sets a file driver according to a given driver value (ID).">H5Pset_driver_by_value</a> </td><td>Sets a file driver according to a given driver value. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gac0d9eb573b84ce125433e81b2a475085" title="Retrieves a string representation of the configuration for the driver set on the given FAPL....">H5Pget_driver_config_str</a> </td><td>Retrieves a string representation of the configuration for the driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core</a>/<a class="el" href="group___f_a_p_l.html#gac347d401cbb28fecd78c5f15ddb4c9c1" title="Queries core file driver properties.">H5Pget_fapl_core</a> </td><td>Sets the driver for buffered memory files (in RAM) or retrieves information regarding the driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7" title="Sets up use of the direct I/O driver.">H5Pset_fapl_direct</a>/<a class="el" href="group___f_a_p_l.html#ga038e5f3952e49b6945039fc2b010ab16" title="Retrieves direct I/O driver settings.">H5Pget_fapl_direct</a> </td><td>Sets up use of the direct I/O driver or retrieves the direct I/O driver settings. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga95d19da25f196ce1ace10af00f49ab53" title="Sets the file access property list to use the family driver.">H5Pset_fapl_family</a>/<a class="el" href="group___f_a_p_l.html#ga0bc1a003f26bf4b53e4487b6ca117389" title="Returns file access property list information.">H5Pget_fapl_family</a> </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><a class="el" href="group___f_a_p_l.html#ga970d077c8e712a4692f43fa4f38dde14">H5Pset_fapl_hdfs</a>/<a class="el" href="group___f_a_p_l.html#gae59e7d8e0e8823e6dd6034b66418ed00">H5Pget_fapl_hdfs</a> </td><td>. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0" title="Modifies the specified File Access Property List to use the H5FD_IOC driver.">H5Pset_fapl_ioc</a>/<a class="el" href="group___f_a_p_l.html#ga8482cdac1272818e4e0f86a665f8ef98" title="Queries a File Access Property List for H5FD_IOC file driver properties.">H5Pget_fapl_ioc</a> </td><td>Modifies/queries the file driver properties of the I/O concentrator driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga4e03be2fe83ed02b32266a6c81427beb" title="Sets up the logging virtual file driver (H5FD_LOG) for use.">H5Pset_fapl_log</a> </td><td>Sets logging driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga8491676811ccc7ba582e30fb63da6563">H5Pset_fapl_mirror</a>/<a class="el" href="group___f_a_p_l.html#ga2c0636d9bb9c50d381afbd0d3140e593">H5Pget_fapl_mirror</a> </td><td>Modifies/queries the file driver properties of the mirror driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff" title="Stores MPI IO communicator information to the file access property list.">H5Pset_fapl_mpio</a>/<a class="el" href="group___f_a_p_l.html#ga5d9e4b9f27791ccf19484a898f3fd6fa" title="Returns MPI IO communicator information.">H5Pget_fapl_mpio</a> </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><a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58" title="Sets up use of the multi-file driver.">H5Pset_fapl_multi</a>/<a class="el" href="group___f_a_p_l.html#ga765b7880795a139f3b567743ac88c3c7" title="Returns information about the multi-file access property list.">H5Pget_fapl_multi</a> </td><td>Sets driver for multiple files, separating categories of metadata and raw data, or retrieves information regarding driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga4d053c7682e54287e550113972b7dda6" title="set the onion info for the file access property list">H5Pset_fapl_onion</a>/<a class="el" href="group___f_a_p_l.html#ga89b9f918d53dee5e6c80060667b8d32f" title="get the onion info from the file access property list">H5Pget_fapl_onion</a> </td><td>Modifies/queries the file driver properties of the onion driver. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dsec2_8h.html#af581bceca36ad4eef3cd45b16eabbb20">H5Pset_fapl_sec2</a> </td><td>Sets driver for unbuffered permanent files or retrieves information regarding driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed" title="Emulates the old split file driver.">H5Pset_fapl_split</a> </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><a class="el" href="group___f_a_p_l.html#ga77f0643117835e7f7992d573761b5052" title="Sets the standard I/O driver.">H5Pset_fapl_stdio</a> </td><td>Sets driver for buffered permanent files. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2" title="Modifies the specified File Access Property List to use the H5FD_SUBFILING driver.">H5Pset_fapl_subfiling</a>/<a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45" title="Queries a File Access Property List for H5FD_SUBFILING file driver properties.">H5Pget_fapl_subfiling</a> </td><td>Modifies/queries the file driver properties of the subfiling driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830" title="Sets the Windows I/O driver.">H5Pset_fapl_windows</a> </td><td>Sets the Windows I/O driver. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128" title="Specifies type of data to be accessed via the MULTI driver, enabling more direct access.">H5Pset_multi_type</a> </td><td>Specifies type of data to be accessed via the MULTI driver enabling more direct access. </td></tr> +<tr> +<td><a class="el" href="group___f_a_p_l.html#ga251515e9fee4641037b4866a4f7c49fe" title="Retrieves type of data property for MULTI driver.">H5Pget_multi_type</a> </td><td>Retrieves type of data property for MULTI driver. </td></tr> +</table> +</p> +<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> + <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Collaboration diagram for File Access Properties:</div> +<div id="dynsection-0-summary" class="dynsummary" style="display:block;"> +</div> +<div id="dynsection-0-content" class="dyncontent" style="display:none;"> +<div class="center"><img src="group___f_a_p_l.png" border="0" usemap="#agroup______f__a__p__l" alt=""/></div> +<map name="agroup______f__a__p__l" id="agroup______f__a__p__l"> +<area shape="rect" href="group___h5_p.html" title=" " alt="" coords="5,5,156,31"/> +<area shape="rect" title=" " alt="" coords="204,5,368,31"/> +</map> +</div> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> +Functions</h2></td></tr> +<tr class="memitem:ga6e6628f620a1c58c704129cf07282849"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849">H5Pset_fapl_core</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t increment, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> backing_store)</td></tr> +<tr class="memdesc:ga6e6628f620a1c58c704129cf07282849"><td class="mdescLeft"> </td><td class="mdescRight">Modifies the file access property list to use the <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver. <a href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849">More...</a><br /></td></tr> +<tr class="separator:ga6e6628f620a1c58c704129cf07282849"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac347d401cbb28fecd78c5f15ddb4c9c1"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac347d401cbb28fecd78c5f15ddb4c9c1">H5Pget_fapl_core</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t *increment, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *backing_store)</td></tr> +<tr class="memdesc:gac347d401cbb28fecd78c5f15ddb4c9c1"><td class="mdescLeft"> </td><td class="mdescRight">Queries core file driver properties. <a href="group___f_a_p_l.html#gac347d401cbb28fecd78c5f15ddb4c9c1">More...</a><br /></td></tr> +<tr class="separator:gac347d401cbb28fecd78c5f15ddb4c9c1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2839252e149484ef30fb214ae7b44ac7"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7">H5Pset_fapl_direct</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t alignment, size_t block_size, size_t cbuf_size)</td></tr> +<tr class="memdesc:ga2839252e149484ef30fb214ae7b44ac7"><td class="mdescLeft"> </td><td class="mdescRight">Sets up use of the direct I/O driver. <a href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7">More...</a><br /></td></tr> +<tr class="separator:ga2839252e149484ef30fb214ae7b44ac7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga038e5f3952e49b6945039fc2b010ab16"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga038e5f3952e49b6945039fc2b010ab16">H5Pget_fapl_direct</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t *boundary, size_t *block_size, size_t *cbuf_size)</td></tr> +<tr class="memdesc:ga038e5f3952e49b6945039fc2b010ab16"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves direct I/O driver settings. <a href="group___f_a_p_l.html#ga038e5f3952e49b6945039fc2b010ab16">More...</a><br /></td></tr> +<tr class="separator:ga038e5f3952e49b6945039fc2b010ab16"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga95d19da25f196ce1ace10af00f49ab53"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga95d19da25f196ce1ace10af00f49ab53">H5Pset_fapl_family</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> memb_size, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> memb_fapl_id)</td></tr> +<tr class="memdesc:ga95d19da25f196ce1ace10af00f49ab53"><td class="mdescLeft"> </td><td class="mdescRight">Sets the file access property list to use the family driver. <a href="group___f_a_p_l.html#ga95d19da25f196ce1ace10af00f49ab53">More...</a><br /></td></tr> +<tr class="separator:ga95d19da25f196ce1ace10af00f49ab53"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga0bc1a003f26bf4b53e4487b6ca117389"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga0bc1a003f26bf4b53e4487b6ca117389">H5Pget_fapl_family</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *memb_size, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> *memb_fapl_id)</td></tr> +<tr class="memdesc:ga0bc1a003f26bf4b53e4487b6ca117389"><td class="mdescLeft"> </td><td class="mdescRight">Returns file access property list information. <a href="group___f_a_p_l.html#ga0bc1a003f26bf4b53e4487b6ca117389">More...</a><br /></td></tr> +<tr class="separator:ga0bc1a003f26bf4b53e4487b6ca117389"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gae59e7d8e0e8823e6dd6034b66418ed00"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gae59e7d8e0e8823e6dd6034b66418ed00">H5Pget_fapl_hdfs</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__hdfs__fapl__t.html">H5FD_hdfs_fapl_t</a> *fa_out)</td></tr> +<tr class="separator:gae59e7d8e0e8823e6dd6034b66418ed00"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga970d077c8e712a4692f43fa4f38dde14"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga970d077c8e712a4692f43fa4f38dde14">H5Pset_fapl_hdfs</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__hdfs__fapl__t.html">H5FD_hdfs_fapl_t</a> *fa)</td></tr> +<tr class="separator:ga970d077c8e712a4692f43fa4f38dde14"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4e03be2fe83ed02b32266a6c81427beb"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga4e03be2fe83ed02b32266a6c81427beb">H5Pset_fapl_log</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, const char *logfile, unsigned long long flags, size_t buf_size)</td></tr> +<tr class="memdesc:ga4e03be2fe83ed02b32266a6c81427beb"><td class="mdescLeft"> </td><td class="mdescRight">Sets up the logging virtual file driver (<a class="el" href="_h5_f_dlog_8h.html#a027aaf28f5104c77c4f51ecd29a5f7f4">H5FD_LOG</a>) for use. <a href="group___f_a_p_l.html#ga4e03be2fe83ed02b32266a6c81427beb">More...</a><br /></td></tr> +<tr class="separator:ga4e03be2fe83ed02b32266a6c81427beb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2c0636d9bb9c50d381afbd0d3140e593"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga2c0636d9bb9c50d381afbd0d3140e593">H5Pget_fapl_mirror</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__mirror__fapl__t.html">H5FD_mirror_fapl_t</a> *fa_out)</td></tr> +<tr class="separator:ga2c0636d9bb9c50d381afbd0d3140e593"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8491676811ccc7ba582e30fb63da6563"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8491676811ccc7ba582e30fb63da6563">H5Pset_fapl_mirror</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__mirror__fapl__t.html">H5FD_mirror_fapl_t</a> *fa)</td></tr> +<tr class="separator:ga8491676811ccc7ba582e30fb63da6563"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaa0204810c1fea1667d62cf7c176416ff"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff">H5Pset_fapl_mpio</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, MPI_Comm comm, MPI_Info info)</td></tr> +<tr class="memdesc:gaa0204810c1fea1667d62cf7c176416ff"><td class="mdescLeft"> </td><td class="mdescRight">Stores MPI IO communicator information to the file access property list. <a href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff">More...</a><br /></td></tr> +<tr class="separator:gaa0204810c1fea1667d62cf7c176416ff"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5d9e4b9f27791ccf19484a898f3fd6fa"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga5d9e4b9f27791ccf19484a898f3fd6fa">H5Pget_fapl_mpio</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, MPI_Comm *comm, MPI_Info *info)</td></tr> +<tr class="memdesc:ga5d9e4b9f27791ccf19484a898f3fd6fa"><td class="mdescLeft"> </td><td class="mdescRight">Returns MPI IO communicator information. <a href="group___f_a_p_l.html#ga5d9e4b9f27791ccf19484a898f3fd6fa">More...</a><br /></td></tr> +<tr class="separator:ga5d9e4b9f27791ccf19484a898f3fd6fa"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga296bd22cc1e462351f8f0a00a46baf58"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58">H5Pset_fapl_multi</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, const <a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> *memb_map, const <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> *memb_fapl, const char *const *memb_name, const <a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> *memb_addr, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> relax)</td></tr> +<tr class="memdesc:ga296bd22cc1e462351f8f0a00a46baf58"><td class="mdescLeft"> </td><td class="mdescRight">Sets up use of the multi-file driver. <a href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58">More...</a><br /></td></tr> +<tr class="separator:ga296bd22cc1e462351f8f0a00a46baf58"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga765b7880795a139f3b567743ac88c3c7"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga765b7880795a139f3b567743ac88c3c7">H5Pget_fapl_multi</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> *memb_map, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> *memb_fapl, char **memb_name, <a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> *memb_addr, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *relax)</td></tr> +<tr class="memdesc:ga765b7880795a139f3b567743ac88c3c7"><td class="mdescLeft"> </td><td class="mdescRight">Returns information about the multi-file access property list. <a href="group___f_a_p_l.html#ga765b7880795a139f3b567743ac88c3c7">More...</a><br /></td></tr> +<tr class="separator:ga765b7880795a139f3b567743ac88c3c7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga502f1ad38f5143cf281df8282fef26ed"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed">H5Pset_fapl_split</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl, const char *meta_ext, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> meta_plist_id, const char *raw_ext, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> raw_plist_id)</td></tr> +<tr class="memdesc:ga502f1ad38f5143cf281df8282fef26ed"><td class="mdescLeft"> </td><td class="mdescRight">Emulates the old split file driver. <a href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed">More...</a><br /></td></tr> +<tr class="separator:ga502f1ad38f5143cf281df8282fef26ed"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga89b9f918d53dee5e6c80060667b8d32f"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga89b9f918d53dee5e6c80060667b8d32f">H5Pget_fapl_onion</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> *fa_out)</td></tr> +<tr class="memdesc:ga89b9f918d53dee5e6c80060667b8d32f"><td class="mdescLeft"> </td><td class="mdescRight">get the onion info from the file access property list <a href="group___f_a_p_l.html#ga89b9f918d53dee5e6c80060667b8d32f">More...</a><br /></td></tr> +<tr class="separator:ga89b9f918d53dee5e6c80060667b8d32f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4d053c7682e54287e550113972b7dda6"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga4d053c7682e54287e550113972b7dda6">H5Pset_fapl_onion</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, const <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> *fa)</td></tr> +<tr class="memdesc:ga4d053c7682e54287e550113972b7dda6"><td class="mdescLeft"> </td><td class="mdescRight">set the onion info for the file access property list <a href="group___f_a_p_l.html#ga4d053c7682e54287e550113972b7dda6">More...</a><br /></td></tr> +<tr class="separator:ga4d053c7682e54287e550113972b7dda6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga13e273711e160cbd58e60c701b4f50e6"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga13e273711e160cbd58e60c701b4f50e6">H5Pget_fapl_ros3</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__ros3__fapl__t.html">H5FD_ros3_fapl_t</a> *fa_out)</td></tr> +<tr class="separator:ga13e273711e160cbd58e60c701b4f50e6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaad28d8c24f236590193215c5ae7a8f18"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaad28d8c24f236590193215c5ae7a8f18">H5Pset_fapl_ros3</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, const <a class="el" href="struct_h5_f_d__ros3__fapl__t.html">H5FD_ros3_fapl_t</a> *fa)</td></tr> +<tr class="separator:gaad28d8c24f236590193215c5ae7a8f18"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga49f386ea235bb48128e54c962c499f07"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga49f386ea235bb48128e54c962c499f07">H5Pset_fapl_splitter</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__splitter__vfd__config__t.html">H5FD_splitter_vfd_config_t</a> *config_ptr)</td></tr> +<tr class="separator:ga49f386ea235bb48128e54c962c499f07"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaf6ac1c131acee33dfb878593dfefb4ac"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaf6ac1c131acee33dfb878593dfefb4ac">H5Pget_fapl_splitter</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__splitter__vfd__config__t.html">H5FD_splitter_vfd_config_t</a> *config_ptr)</td></tr> +<tr class="separator:gaf6ac1c131acee33dfb878593dfefb4ac"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga77f0643117835e7f7992d573761b5052"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga77f0643117835e7f7992d573761b5052">H5Pset_fapl_stdio</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id)</td></tr> +<tr class="memdesc:ga77f0643117835e7f7992d573761b5052"><td class="mdescLeft"> </td><td class="mdescRight">Sets the standard I/O driver. <a href="group___f_a_p_l.html#ga77f0643117835e7f7992d573761b5052">More...</a><br /></td></tr> +<tr class="separator:ga77f0643117835e7f7992d573761b5052"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga714340ec9cbb65cb0a819e1d775825f0"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0">H5Pset_fapl_ioc</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__ioc__config__t.html">H5FD_ioc_config_t</a> *vfd_config)</td></tr> +<tr class="memdesc:ga714340ec9cbb65cb0a819e1d775825f0"><td class="mdescLeft"> </td><td class="mdescRight">Modifies the specified File Access Property List to use the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver. <a href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0">More...</a><br /></td></tr> +<tr class="separator:ga714340ec9cbb65cb0a819e1d775825f0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8482cdac1272818e4e0f86a665f8ef98"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8482cdac1272818e4e0f86a665f8ef98">H5Pget_fapl_ioc</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__ioc__config__t.html">H5FD_ioc_config_t</a> *config_out)</td></tr> +<tr class="memdesc:ga8482cdac1272818e4e0f86a665f8ef98"><td class="mdescLeft"> </td><td class="mdescRight">Queries a File Access Property List for <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> file driver properties. <a href="group___f_a_p_l.html#ga8482cdac1272818e4e0f86a665f8ef98">More...</a><br /></td></tr> +<tr class="separator:ga8482cdac1272818e4e0f86a665f8ef98"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga65dbddbba216fdd0bdf99b4feaa74db2"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2">H5Pset_fapl_subfiling</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, const <a class="el" href="struct_h5_f_d__subfiling__config__t.html">H5FD_subfiling_config_t</a> *vfd_config)</td></tr> +<tr class="memdesc:ga65dbddbba216fdd0bdf99b4feaa74db2"><td class="mdescLeft"> </td><td class="mdescRight">Modifies the specified File Access Property List to use the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver. <a href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2">More...</a><br /></td></tr> +<tr class="separator:ga65dbddbba216fdd0bdf99b4feaa74db2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2af70900a3ea50a83d65f8285730ef45"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45">H5Pget_fapl_subfiling</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__subfiling__config__t.html">H5FD_subfiling_config_t</a> *config_out)</td></tr> +<tr class="memdesc:ga2af70900a3ea50a83d65f8285730ef45"><td class="mdescLeft"> </td><td class="mdescRight">Queries a File Access Property List for <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> file driver properties. <a href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45">More...</a><br /></td></tr> +<tr class="separator:ga2af70900a3ea50a83d65f8285730ef45"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga0017f78e0f3de465621fde556f679830"><td class="memItemLeft" align="right" valign="top">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830">H5Pset_fapl_windows</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id)</td></tr> +<tr class="memdesc:ga0017f78e0f3de465621fde556f679830"><td class="mdescLeft"> </td><td class="mdescRight">Sets the Windows I/O driver. <a href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830">More...</a><br /></td></tr> +<tr class="separator:ga0017f78e0f3de465621fde556f679830"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6735afde382cfd746b92a1a3b0e6a2ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6735afde382cfd746b92a1a3b0e6a2ab">H5Pget_alignment</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *threshold, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *alignment)</td></tr> +<tr class="memdesc:ga6735afde382cfd746b92a1a3b0e6a2ab"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the current settings for alignment properties from a file access property list. <a href="group___f_a_p_l.html#ga6735afde382cfd746b92a1a3b0e6a2ab">More...</a><br /></td></tr> +<tr class="separator:ga6735afde382cfd746b92a1a3b0e6a2ab"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga9481a0b08d729ec68897d57db1827861"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga9481a0b08d729ec68897d57db1827861">H5Pget_cache</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, int *mdc_nelmts, size_t *rdcc_nslots, size_t *rdcc_nbytes, double *rdcc_w0)</td></tr> +<tr class="memdesc:ga9481a0b08d729ec68897d57db1827861"><td class="mdescLeft"> </td><td class="mdescRight">Queries the raw data chunk cache parameters. <a href="group___f_a_p_l.html#ga9481a0b08d729ec68897d57db1827861">More...</a><br /></td></tr> +<tr class="separator:ga9481a0b08d729ec68897d57db1827861"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga60ec714459a4911d28e46deb201f4f2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga60ec714459a4911d28e46deb201f4f2e">H5Pget_core_write_tracking</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *is_enabled, size_t *page_size)</td></tr> +<tr class="memdesc:ga60ec714459a4911d28e46deb201f4f2e"><td class="mdescLeft"> </td><td class="mdescRight">Gets information about the write tracking feature used by the core VFD. <a href="group___f_a_p_l.html#ga60ec714459a4911d28e46deb201f4f2e">More...</a><br /></td></tr> +<tr class="separator:ga60ec714459a4911d28e46deb201f4f2e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga43a733fe9723dd15f5ad7abda909a1b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga43a733fe9723dd15f5ad7abda909a1b8">H5Pget_driver</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id)</td></tr> +<tr class="memdesc:ga43a733fe9723dd15f5ad7abda909a1b8"><td class="mdescLeft"> </td><td class="mdescRight">Returns low-lever driver identifier. <a href="group___f_a_p_l.html#ga43a733fe9723dd15f5ad7abda909a1b8">More...</a><br /></td></tr> +<tr class="separator:ga43a733fe9723dd15f5ad7abda909a1b8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga14056dca8f3d6249474d5321d4298fe2"><td class="memItemLeft" align="right" valign="top">const void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2">H5Pget_driver_info</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id)</td></tr> +<tr class="memdesc:ga14056dca8f3d6249474d5321d4298fe2"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to file driver information. <a href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2">More...</a><br /></td></tr> +<tr class="separator:ga14056dca8f3d6249474d5321d4298fe2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac0d9eb573b84ce125433e81b2a475085"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#af629ed855824cf5955b54529adf78ad6">ssize_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac0d9eb573b84ce125433e81b2a475085">H5Pget_driver_config_str</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, char *config_buf, size_t buf_size)</td></tr> +<tr class="memdesc:gac0d9eb573b84ce125433e81b2a475085"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves a string representation of the configuration for the driver set on the given FAPL. The returned string can be used to configure the same driver in an identical way. <a href="group___f_a_p_l.html#gac0d9eb573b84ce125433e81b2a475085">More...</a><br /></td></tr> +<tr class="separator:gac0d9eb573b84ce125433e81b2a475085"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4c9bcfff90f48bfefa2c25e551485923"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga4c9bcfff90f48bfefa2c25e551485923">H5Pget_elink_file_cache_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, unsigned *efc_size)</td></tr> +<tr class="memdesc:ga4c9bcfff90f48bfefa2c25e551485923"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the size of the external link open file cache. <a href="group___f_a_p_l.html#ga4c9bcfff90f48bfefa2c25e551485923">More...</a><br /></td></tr> +<tr class="separator:ga4c9bcfff90f48bfefa2c25e551485923"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga12789fcfeaea073c13202e6401f404a6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga12789fcfeaea073c13202e6401f404a6">H5Pget_evict_on_close</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *evict_on_close)</td></tr> +<tr class="memdesc:ga12789fcfeaea073c13202e6401f404a6"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the file access property list setting that determines whether an HDF5 object will be evicted from the library's metadata cache when it is closed. <a href="group___f_a_p_l.html#ga12789fcfeaea073c13202e6401f404a6">More...</a><br /></td></tr> +<tr class="separator:ga12789fcfeaea073c13202e6401f404a6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga14977eaaf6565ba871b575de3163f1b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga14977eaaf6565ba871b575de3163f1b3">H5Pget_family_offset</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset)</td></tr> +<tr class="memdesc:ga14977eaaf6565ba871b575de3163f1b3"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves a data offset from the file access property list. <a href="group___f_a_p_l.html#ga14977eaaf6565ba871b575de3163f1b3">More...</a><br /></td></tr> +<tr class="separator:ga14977eaaf6565ba871b575de3163f1b3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga41da04bb4f823ba9f7d6c57dc8fe2878"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga41da04bb4f823ba9f7d6c57dc8fe2878">H5Pget_fclose_degree</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475f">H5F_close_degree_t</a> *degree)</td></tr> +<tr class="memdesc:ga41da04bb4f823ba9f7d6c57dc8fe2878"><td class="mdescLeft"> </td><td class="mdescRight">Returns the file close degree. <a href="group___f_a_p_l.html#ga41da04bb4f823ba9f7d6c57dc8fe2878">More...</a><br /></td></tr> +<tr class="separator:ga41da04bb4f823ba9f7d6c57dc8fe2878"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga337626cc516d5d1e3303ea6bc350e56b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b">H5Pget_file_image</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, void **buf_ptr_ptr, size_t *buf_len_ptr)</td></tr> +<tr class="memdesc:ga337626cc516d5d1e3303ea6bc350e56b"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves a copy of the file image designated as the initial content and structure of a file. <a href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b">More...</a><br /></td></tr> +<tr class="separator:ga337626cc516d5d1e3303ea6bc350e56b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gae17e38082dfdbadd75c897f1e6a9096e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e">H5Pget_file_image_callbacks</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> *callbacks_ptr)</td></tr> +<tr class="memdesc:gae17e38082dfdbadd75c897f1e6a9096e"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves callback routines for working with file images. <a href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e">More...</a><br /></td></tr> +<tr class="separator:gae17e38082dfdbadd75c897f1e6a9096e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5de19a5a8ac23ca417aa2d49d708dc2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga5de19a5a8ac23ca417aa2d49d708dc2d">H5Pget_file_locking</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *use_file_locking, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *ignore_when_disabled)</td></tr> +<tr class="memdesc:ga5de19a5a8ac23ca417aa2d49d708dc2d"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the file locking property values. <a href="group___f_a_p_l.html#ga5de19a5a8ac23ca417aa2d49d708dc2d">More...</a><br /></td></tr> +<tr class="separator:ga5de19a5a8ac23ca417aa2d49d708dc2d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaaa81d8427b419d80eff6e1d216d99b71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaaa81d8427b419d80eff6e1d216d99b71">H5Pget_gc_references</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, unsigned *gc_ref)</td></tr> +<tr class="memdesc:gaaa81d8427b419d80eff6e1d216d99b71"><td class="mdescLeft"> </td><td class="mdescRight">Returns garbage collecting references setting. <a href="group___f_a_p_l.html#gaaa81d8427b419d80eff6e1d216d99b71">More...</a><br /></td></tr> +<tr class="separator:gaaa81d8427b419d80eff6e1d216d99b71"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gad5d7e671c3a06bcee64bc25841aaf607"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gad5d7e671c3a06bcee64bc25841aaf607">H5Pget_libver_bounds</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> *low, <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> *high)</td></tr> +<tr class="memdesc:gad5d7e671c3a06bcee64bc25841aaf607"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves library version bounds settings that indirectly control the format versions used when creating objects. <a href="group___f_a_p_l.html#gad5d7e671c3a06bcee64bc25841aaf607">More...</a><br /></td></tr> +<tr class="separator:gad5d7e671c3a06bcee64bc25841aaf607"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga3012f7f3310c7d25ada7617896bef1ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee">H5Pget_mdc_config</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> *config_ptr)</td></tr> +<tr class="memdesc:ga3012f7f3310c7d25ada7617896bef1ee"><td class="mdescLeft"> </td><td class="mdescRight">Get the current initial metadata cache configuration from the provided file access property list. <a href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee">More...</a><br /></td></tr> +<tr class="separator:ga3012f7f3310c7d25ada7617896bef1ee"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaaa18d59ee9efb12626410b1638f76f00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaaa18d59ee9efb12626410b1638f76f00">H5Pget_mdc_image_config</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> *config_ptr)</td></tr> +<tr class="memdesc:gaaa18d59ee9efb12626410b1638f76f00"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the metadata cache image configuration values for a file access property list. <a href="group___f_a_p_l.html#gaaa18d59ee9efb12626410b1638f76f00">More...</a><br /></td></tr> +<tr class="separator:gaaa18d59ee9efb12626410b1638f76f00"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaa3a1ca6e294cc5074933239cc3d0e4a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaa3a1ca6e294cc5074933239cc3d0e4a3">H5Pget_mdc_log_options</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *is_enabled, char *location, size_t *location_size, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *start_on_access)</td></tr> +<tr class="memdesc:gaa3a1ca6e294cc5074933239cc3d0e4a3"><td class="mdescLeft"> </td><td class="mdescRight">Gets metadata cache logging options. <a href="group___f_a_p_l.html#gaa3a1ca6e294cc5074933239cc3d0e4a3">More...</a><br /></td></tr> +<tr class="separator:gaa3a1ca6e294cc5074933239cc3d0e4a3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac17861181246af0209c0da5209305461"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac17861181246af0209c0da5209305461">H5Pget_meta_block_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *size)</td></tr> +<tr class="memdesc:gac17861181246af0209c0da5209305461"><td class="mdescLeft"> </td><td class="mdescRight">Returns the current metadata block size setting. <a href="group___f_a_p_l.html#gac17861181246af0209c0da5209305461">More...</a><br /></td></tr> +<tr class="separator:gac17861181246af0209c0da5209305461"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga670948d56435920f1e1c2e88b823935e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, unsigned *attempts)</td></tr> +<tr class="memdesc:ga670948d56435920f1e1c2e88b823935e"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the number of read attempts from a file access property list. <a href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">More...</a><br /></td></tr> +<tr class="separator:ga670948d56435920f1e1c2e88b823935e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga251515e9fee4641037b4866a4f7c49fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga251515e9fee4641037b4866a4f7c49fe">H5Pget_multi_type</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> *type)</td></tr> +<tr class="memdesc:ga251515e9fee4641037b4866a4f7c49fe"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves type of data property for MULTI driver. <a href="group___f_a_p_l.html#ga251515e9fee4641037b4866a4f7c49fe">More...</a><br /></td></tr> +<tr class="separator:ga251515e9fee4641037b4866a4f7c49fe"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gadb66d434fd8d2f600213b0eec539564e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e">H5Pget_object_flush_cb</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a> *func, void **udata)</td></tr> +<tr class="memdesc:gadb66d434fd8d2f600213b0eec539564e"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the object flush property values from the file access property list. <a href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e">More...</a><br /></td></tr> +<tr class="separator:gadb66d434fd8d2f600213b0eec539564e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga0da11baf31cf424d053aa7952c933d98"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga0da11baf31cf424d053aa7952c933d98">H5Pget_page_buffer_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, size_t *buf_size, unsigned *min_meta_perc, unsigned *min_raw_perc)</td></tr> +<tr class="memdesc:ga0da11baf31cf424d053aa7952c933d98"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the maximum size for the page buffer and the minimum percentage for metadata and raw data pages. <a href="group___f_a_p_l.html#ga0da11baf31cf424d053aa7952c933d98">More...</a><br /></td></tr> +<tr class="separator:ga0da11baf31cf424d053aa7952c933d98"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac2321d0c34bb2b3cf33cd7bf02ca8e66"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac2321d0c34bb2b3cf33cd7bf02ca8e66">H5Pget_sieve_buf_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t *size)</td></tr> +<tr class="memdesc:gac2321d0c34bb2b3cf33cd7bf02ca8e66"><td class="mdescLeft"> </td><td class="mdescRight">Returns maximum data sieve buffer size. <a href="group___f_a_p_l.html#gac2321d0c34bb2b3cf33cd7bf02ca8e66">More...</a><br /></td></tr> +<tr class="separator:gac2321d0c34bb2b3cf33cd7bf02ca8e66"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6896bea06d7744b56e22347f572f5470"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6896bea06d7744b56e22347f572f5470">H5Pget_small_data_block_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *size)</td></tr> +<tr class="memdesc:ga6896bea06d7744b56e22347f572f5470"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the current small data block size setting. <a href="group___f_a_p_l.html#ga6896bea06d7744b56e22347f572f5470">More...</a><br /></td></tr> +<tr class="separator:ga6896bea06d7744b56e22347f572f5470"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5f133bdf09ca5a32622688d1ba5cc838"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga5f133bdf09ca5a32622688d1ba5cc838">H5Pget_vol_id</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> *vol_id)</td></tr> +<tr class="memdesc:ga5f133bdf09ca5a32622688d1ba5cc838"><td class="mdescLeft"> </td><td class="mdescRight">Returns the identifier of the current VOL connector. <a href="group___f_a_p_l.html#ga5f133bdf09ca5a32622688d1ba5cc838">More...</a><br /></td></tr> +<tr class="separator:ga5f133bdf09ca5a32622688d1ba5cc838"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gafc58db23c257cdcf2f0c1c3ae911ab0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gafc58db23c257cdcf2f0c1c3ae911ab0f">H5Pget_vol_info</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, void **vol_info)</td></tr> +<tr class="memdesc:gafc58db23c257cdcf2f0c1c3ae911ab0f"><td class="mdescLeft"> </td><td class="mdescRight">Returns a copy of the VOL information for a connector. <a href="group___f_a_p_l.html#gafc58db23c257cdcf2f0c1c3ae911ab0f">More...</a><br /></td></tr> +<tr class="separator:gafc58db23c257cdcf2f0c1c3ae911ab0f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gab99d5af749aeb3896fd9e3ceb273677a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a">H5Pset_alignment</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> threshold, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> alignment)</td></tr> +<tr class="memdesc:gab99d5af749aeb3896fd9e3ceb273677a"><td class="mdescLeft"> </td><td class="mdescRight">Sets alignment properties of a file access property list. <a href="group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a">More...</a><br /></td></tr> +<tr class="separator:gab99d5af749aeb3896fd9e3ceb273677a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga034a5fc54d9b05296555544d8dd9fe89"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89">H5Pset_cache</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, int mdc_nelmts, size_t rdcc_nslots, size_t rdcc_nbytes, double rdcc_w0)</td></tr> +<tr class="memdesc:ga034a5fc54d9b05296555544d8dd9fe89"><td class="mdescLeft"> </td><td class="mdescRight">Sets the raw data chunk cache parameters. <a href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89">More...</a><br /></td></tr> +<tr class="separator:ga034a5fc54d9b05296555544d8dd9fe89"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga237e300b96222a259896b24cf52405b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga237e300b96222a259896b24cf52405b0">H5Pset_core_write_tracking</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> is_enabled, size_t page_size)</td></tr> +<tr class="memdesc:ga237e300b96222a259896b24cf52405b0"><td class="mdescLeft"> </td><td class="mdescRight">Sets write tracking information for core driver, <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a>. <a href="group___f_a_p_l.html#ga237e300b96222a259896b24cf52405b0">More...</a><br /></td></tr> +<tr class="separator:ga237e300b96222a259896b24cf52405b0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8bcce60e23e9d2a019212c63b146502e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8bcce60e23e9d2a019212c63b146502e">H5Pset_driver</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> driver_id, const void *driver_info)</td></tr> +<tr class="memdesc:ga8bcce60e23e9d2a019212c63b146502e"><td class="mdescLeft"> </td><td class="mdescRight">Sets a file driver. <a href="group___f_a_p_l.html#ga8bcce60e23e9d2a019212c63b146502e">More...</a><br /></td></tr> +<tr class="separator:ga8bcce60e23e9d2a019212c63b146502e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga156702db27ece40d21b37be5fe5e8b15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga156702db27ece40d21b37be5fe5e8b15">H5Pset_driver_by_name</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, const char *driver_name, const char *driver_config)</td></tr> +<tr class="memdesc:ga156702db27ece40d21b37be5fe5e8b15"><td class="mdescLeft"> </td><td class="mdescRight">Sets a file driver according to a given driver name. <a href="group___f_a_p_l.html#ga156702db27ece40d21b37be5fe5e8b15">More...</a><br /></td></tr> +<tr class="separator:ga156702db27ece40d21b37be5fe5e8b15"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac4426b1d36aa8766fbe2deaf67a18c06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac4426b1d36aa8766fbe2deaf67a18c06">H5Pset_driver_by_value</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_f_dpublic_8h.html#a17ff64731b589ac818c2309d0d0ce8fb">H5FD_class_value_t</a> driver_value, const char *driver_config)</td></tr> +<tr class="memdesc:gac4426b1d36aa8766fbe2deaf67a18c06"><td class="mdescLeft"> </td><td class="mdescRight">Sets a file driver according to a given driver value (ID). <a href="group___f_a_p_l.html#gac4426b1d36aa8766fbe2deaf67a18c06">More...</a><br /></td></tr> +<tr class="separator:gac4426b1d36aa8766fbe2deaf67a18c06"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac21a815e9b133802df625c9f766ef325"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325">H5Pset_elink_file_cache_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, unsigned efc_size)</td></tr> +<tr class="memdesc:gac21a815e9b133802df625c9f766ef325"><td class="mdescLeft"> </td><td class="mdescRight">Sets the number of files that can be held open in an external link open file cache. <a href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325">More...</a><br /></td></tr> +<tr class="separator:gac21a815e9b133802df625c9f766ef325"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaa44cc0e592608e12082dad9305b3c74d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaa44cc0e592608e12082dad9305b3c74d">H5Pset_evict_on_close</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> evict_on_close)</td></tr> +<tr class="memdesc:gaa44cc0e592608e12082dad9305b3c74d"><td class="mdescLeft"> </td><td class="mdescRight">Controls the library's behavior of evicting metadata associated with a closed object. <a href="group___f_a_p_l.html#gaa44cc0e592608e12082dad9305b3c74d">More...</a><br /></td></tr> +<tr class="separator:gaa44cc0e592608e12082dad9305b3c74d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6b24e6daf4816bbfb89b63bab40aa982"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6b24e6daf4816bbfb89b63bab40aa982">H5Pset_family_offset</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> offset)</td></tr> +<tr class="memdesc:ga6b24e6daf4816bbfb89b63bab40aa982"><td class="mdescLeft"> </td><td class="mdescRight">Sets offset property for low-level access to a file in a family of files. <a href="group___f_a_p_l.html#ga6b24e6daf4816bbfb89b63bab40aa982">More...</a><br /></td></tr> +<tr class="separator:ga6b24e6daf4816bbfb89b63bab40aa982"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga60e3567f677fd3ade75b909b636d7b9c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga60e3567f677fd3ade75b909b636d7b9c">H5Pset_fclose_degree</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475f">H5F_close_degree_t</a> degree)</td></tr> +<tr class="memdesc:ga60e3567f677fd3ade75b909b636d7b9c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the file close degree. <a href="group___f_a_p_l.html#ga60e3567f677fd3ade75b909b636d7b9c">More...</a><br /></td></tr> +<tr class="separator:ga60e3567f677fd3ade75b909b636d7b9c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga31d0299f6ad287e013b2a02a8ccc1fa2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2">H5Pset_file_image</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, void *buf_ptr, size_t buf_len)</td></tr> +<tr class="memdesc:ga31d0299f6ad287e013b2a02a8ccc1fa2"><td class="mdescLeft"> </td><td class="mdescRight">Sets an initial file image in a memory buffer. <a href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2">More...</a><br /></td></tr> +<tr class="separator:ga31d0299f6ad287e013b2a02a8ccc1fa2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga14ea3598215afd078b964b672b40d63c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c">H5Pset_file_image_callbacks</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> *callbacks_ptr)</td></tr> +<tr class="memdesc:ga14ea3598215afd078b964b672b40d63c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the callbacks for working with file images. <a href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c">More...</a><br /></td></tr> +<tr class="separator:ga14ea3598215afd078b964b672b40d63c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga503e9ff6121a67cf53f8b67054ed9391"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga503e9ff6121a67cf53f8b67054ed9391">H5Pset_file_locking</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> use_file_locking, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> ignore_when_disabled)</td></tr> +<tr class="memdesc:ga503e9ff6121a67cf53f8b67054ed9391"><td class="mdescLeft"> </td><td class="mdescRight">Sets the file locking property values. <a href="group___f_a_p_l.html#ga503e9ff6121a67cf53f8b67054ed9391">More...</a><br /></td></tr> +<tr class="separator:ga503e9ff6121a67cf53f8b67054ed9391"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga61f01a12d5392ccf1321168f3c28f36f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga61f01a12d5392ccf1321168f3c28f36f">H5Pset_gc_references</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, unsigned gc_ref)</td></tr> +<tr class="memdesc:ga61f01a12d5392ccf1321168f3c28f36f"><td class="mdescLeft"> </td><td class="mdescRight">Sets garbage collecting references flag. <a href="group___f_a_p_l.html#ga61f01a12d5392ccf1321168f3c28f36f">More...</a><br /></td></tr> +<tr class="separator:ga61f01a12d5392ccf1321168f3c28f36f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gacbe1724e7f70cd17ed687417a1d2a910"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gacbe1724e7f70cd17ed687417a1d2a910">H5Pset_libver_bounds</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> low, <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> high)</td></tr> +<tr class="memdesc:gacbe1724e7f70cd17ed687417a1d2a910"><td class="mdescLeft"> </td><td class="mdescRight">Controls the range of library release versions used when creating objects in a file. <a href="group___f_a_p_l.html#gacbe1724e7f70cd17ed687417a1d2a910">More...</a><br /></td></tr> +<tr class="separator:gacbe1724e7f70cd17ed687417a1d2a910"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaf234199ad4cf9c708f45893f7f9cd4d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3">H5Pset_mdc_config</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> *config_ptr)</td></tr> +<tr class="memdesc:gaf234199ad4cf9c708f45893f7f9cd4d3"><td class="mdescLeft"> </td><td class="mdescRight">Set the initial metadata cache configuration in the indicated File Access Property List to the supplied value. <a href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3">More...</a><br /></td></tr> +<tr class="separator:gaf234199ad4cf9c708f45893f7f9cd4d3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4d7206c5679d7243410058eceae59b2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga4d7206c5679d7243410058eceae59b2c">H5Pset_mdc_log_options</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> is_enabled, const char *location, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> start_on_access)</td></tr> +<tr class="memdesc:ga4d7206c5679d7243410058eceae59b2c"><td class="mdescLeft"> </td><td class="mdescRight">Sets metadata cache logging options. <a href="group___f_a_p_l.html#ga4d7206c5679d7243410058eceae59b2c">More...</a><br /></td></tr> +<tr class="separator:ga4d7206c5679d7243410058eceae59b2c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8822e3dedc8e1414f20871a87d533cb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1">H5Pset_meta_block_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size)</td></tr> +<tr class="memdesc:ga8822e3dedc8e1414f20871a87d533cb1"><td class="mdescLeft"> </td><td class="mdescRight">Sets the minimum metadata block size. <a href="group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1">More...</a><br /></td></tr> +<tr class="separator:ga8822e3dedc8e1414f20871a87d533cb1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gab827cef16ec569c87cec94a8b3f350c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, unsigned attempts)</td></tr> +<tr class="memdesc:gab827cef16ec569c87cec94a8b3f350c5"><td class="mdescLeft"> </td><td class="mdescRight">Sets the number of read attempts in a file access property list. <a href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">More...</a><br /></td></tr> +<tr class="separator:gab827cef16ec569c87cec94a8b3f350c5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga507341f31848c57008a3225bff3fe128"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128">H5Pset_multi_type</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> type)</td></tr> +<tr class="memdesc:ga507341f31848c57008a3225bff3fe128"><td class="mdescLeft"> </td><td class="mdescRight">Specifies type of data to be accessed via the <code>MULTI</code> driver, enabling more direct access. <a href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128">More...</a><br /></td></tr> +<tr class="separator:ga507341f31848c57008a3225bff3fe128"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gab4a4a788af5b6e88381dda0df2efbf19"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19">H5Pset_object_flush_cb</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a> func, void *udata)</td></tr> +<tr class="memdesc:gab4a4a788af5b6e88381dda0df2efbf19"><td class="mdescLeft"> </td><td class="mdescRight">Sets a callback function to invoke when an object flush occurs in the file. <a href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19">More...</a><br /></td></tr> +<tr class="separator:gab4a4a788af5b6e88381dda0df2efbf19"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga24fd737955839194bf5605d5f47928ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga24fd737955839194bf5605d5f47928ee">H5Pset_sieve_buf_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, size_t size)</td></tr> +<tr class="memdesc:ga24fd737955839194bf5605d5f47928ee"><td class="mdescLeft"> </td><td class="mdescRight">Sets the maximum size of the data sieve buffer. <a href="group___f_a_p_l.html#ga24fd737955839194bf5605d5f47928ee">More...</a><br /></td></tr> +<tr class="separator:ga24fd737955839194bf5605d5f47928ee"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5a99962a79412814b79be830f14c23dd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga5a99962a79412814b79be830f14c23dd">H5Pset_small_data_block_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size)</td></tr> +<tr class="memdesc:ga5a99962a79412814b79be830f14c23dd"><td class="mdescLeft"> </td><td class="mdescRight">Sets the size of a contiguous block reserved for small data. <a href="group___f_a_p_l.html#ga5a99962a79412814b79be830f14c23dd">More...</a><br /></td></tr> +<tr class="separator:ga5a99962a79412814b79be830f14c23dd"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8aaa97e70b2544c3d95d908e1ae5b0f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8aaa97e70b2544c3d95d908e1ae5b0f0">H5Pset_vol</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> new_vol_id, const void *new_vol_info)</td></tr> +<tr class="memdesc:ga8aaa97e70b2544c3d95d908e1ae5b0f0"><td class="mdescLeft"> </td><td class="mdescRight">Set the file VOL connector for a file access property list. <a href="group___f_a_p_l.html#ga8aaa97e70b2544c3d95d908e1ae5b0f0">More...</a><br /></td></tr> +<tr class="separator:ga8aaa97e70b2544c3d95d908e1ae5b0f0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2ad4dc5c6e5e4271334a7b1c6ee0777d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga2ad4dc5c6e5e4271334a7b1c6ee0777d">H5Pget_vol_cap_flags</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, uint64_t *cap_flags)</td></tr> +<tr class="memdesc:ga2ad4dc5c6e5e4271334a7b1c6ee0777d"><td class="mdescLeft"> </td><td class="mdescRight">Query the capability flags for the VOL connector that will be used with this file access property list (FAPL). <a href="group___f_a_p_l.html#ga2ad4dc5c6e5e4271334a7b1c6ee0777d">More...</a><br /></td></tr> +<tr class="separator:ga2ad4dc5c6e5e4271334a7b1c6ee0777d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6380f9929cf42c8203813f7e72dde35c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c">H5Pset_coll_metadata_write</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> is_collective)</td></tr> +<tr class="memdesc:ga6380f9929cf42c8203813f7e72dde35c"><td class="mdescLeft"> </td><td class="mdescRight">Sets metadata write mode to be collective or independent (default) <a href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c">More...</a><br /></td></tr> +<tr class="separator:ga6380f9929cf42c8203813f7e72dde35c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac83ab4e788a5b6e0d578f40ca67d8d00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00">H5Pget_coll_metadata_write</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> *is_collective)</td></tr> +<tr class="memdesc:gac83ab4e788a5b6e0d578f40ca67d8d00"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves metadata write mode setting. <a href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00">More...</a><br /></td></tr> +<tr class="separator:gac83ab4e788a5b6e0d578f40ca67d8d00"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5554cf0775f9d7ac3b0cd844533d4486"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga5554cf0775f9d7ac3b0cd844533d4486">H5Pget_mpi_params</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, MPI_Comm *comm, MPI_Info *info)</td></tr> +<tr class="memdesc:ga5554cf0775f9d7ac3b0cd844533d4486"><td class="mdescLeft"> </td><td class="mdescRight">Get the MPI communicator and info. <a href="group___f_a_p_l.html#ga5554cf0775f9d7ac3b0cd844533d4486">More...</a><br /></td></tr> +<tr class="separator:ga5554cf0775f9d7ac3b0cd844533d4486"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6daceb4a9e51fca7cb198f964b67baf0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga6daceb4a9e51fca7cb198f964b67baf0">H5Pset_mpi_params</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id, MPI_Comm comm, MPI_Info info)</td></tr> +<tr class="memdesc:ga6daceb4a9e51fca7cb198f964b67baf0"><td class="mdescLeft"> </td><td class="mdescRight">Set the MPI communicator and info. <a href="group___f_a_p_l.html#ga6daceb4a9e51fca7cb198f964b67baf0">More...</a><br /></td></tr> +<tr class="separator:ga6daceb4a9e51fca7cb198f964b67baf0"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga65cf9fea33d1324009efc2d5db848434"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434">H5Pset_mdc_image_config</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, <a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> *config_ptr)</td></tr> +<tr class="memdesc:ga65cf9fea33d1324009efc2d5db848434"><td class="mdescLeft"> </td><td class="mdescRight">Sets the metadata cache image option for a file access property list. <a href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434">More...</a><br /></td></tr> +<tr class="separator:ga65cf9fea33d1324009efc2d5db848434"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8008cddafa81bd1ddada23f6d9a161ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_a_p_l.html#ga8008cddafa81bd1ddada23f6d9a161ca">H5Pset_page_buffer_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> plist_id, size_t buf_size, unsigned min_meta_per, unsigned min_raw_per)</td></tr> +<tr class="memdesc:ga8008cddafa81bd1ddada23f6d9a161ca"><td class="mdescLeft"> </td><td class="mdescRight">Sets the maximum size for the page buffer and the minimum percentage for metadata and raw data pages. <a href="group___f_a_p_l.html#ga8008cddafa81bd1ddada23f6d9a161ca">More...</a><br /></td></tr> +<tr class="separator:ga8008cddafa81bd1ddada23f6d9a161ca"><td class="memSeparator" colspan="2"> </td></tr> +</table> +<h2 class="groupheader">Function Documentation</h2> +<a id="ga6735afde382cfd746b92a1a3b0e6a2ab"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6735afde382cfd746b92a1a3b0e6a2ab">◆ </a></span>H5Pget_alignment()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_alignment </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>threshold</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>alignment</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the current settings for alignment properties from a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">threshold</td><td>Pointer to location of return threshold value </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">alignment</td><td>Pointer to location of return alignment value</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6735afde382cfd746b92a1a3b0e6a2ab" title="Retrieves the current settings for alignment properties from a file access property list.">H5Pget_alignment()</a> retrieves the current settings for alignment properties from a file access property list. The <code>threshold</code> and/or <code>alignment</code> pointers may be null pointers (NULL).</p> +<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl> + +</div> +</div> +<a id="ga9481a0b08d729ec68897d57db1827861"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga9481a0b08d729ec68897d57db1827861">◆ </a></span>H5Pget_cache()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_cache </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int * </td> + <td class="paramname"><em>mdc_nelmts</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>rdcc_nslots</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>rdcc_nbytes</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">double * </td> + <td class="paramname"><em>rdcc_w0</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Queries the raw data chunk cache parameters. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">mdc_nelmts</td><td><em>No longer used</em> </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">rdcc_nslots</td><td>Number of elements (objects) in the raw data chunk cache </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">rdcc_nbytes</td><td>Total size of the raw data chunk cache, in bytes </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">rdcc_w0</td><td>Preemption policy</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga9481a0b08d729ec68897d57db1827861" title="Queries the raw data chunk cache parameters.">H5Pget_cache()</a> retrieves the maximum possible number of elements in the raw data chunk cache, the maximum possible number of bytes in the raw data chunk cache, and the preemption policy value.</p> +<p>Any (or all) arguments may be null pointers, in which case the corresponding datum is not returned.</p> +<p>Note that the <code>mdc_nelmts</code> parameter is no longer used.</p> +<dl class="section version"><dt>Version</dt><dd>1.8.0 Use of the <code>mdc_nelmts</code> parameter discontinued. Metadata cache configuration is managed with <a class="el" href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3" title="Set the initial metadata cache configuration in the indicated File Access Property List to the suppli...">H5Pset_mdc_config()</a> and <a class="el" href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee" title="Get the current initial metadata cache configuration from the provided file access property list.">H5Pget_mdc_config()</a> </dd> +<dd> +1.6.0 The <code>rdcc_nbytes</code> and <code>rdcc_nslots</code> parameters changed from type int to size_t.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl> + +</div> +</div> +<a id="gac83ab4e788a5b6e0d578f40ca67d8d00"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac83ab4e788a5b6e0d578f40ca67d8d00">◆ </a></span>H5Pget_coll_metadata_write()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_coll_metadata_write </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>is_collective</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves metadata write mode setting. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">is_collective</td><td>Pointer to a boolean value indicating whether metadata writes are collective (<code>>0</code>) or independent (<code>0</code>). <em>Default mode:</em> Independent (<code>0</code>) </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00" title="Retrieves metadata write mode setting.">H5Pget_coll_metadata_write()</a> retrieves the collective metadata write setting from the file access property into <code>is_collective</code>.</p> +<dl class="section see"><dt>See also</dt><dd><ul> +<li><a class="el" href="group___g_a_p_l.html#ga8792cbe7eeace1382f588ed12a92092a" title="Retrieves metadata read mode setting.">H5Pget_all_coll_metadata_ops()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00" title="Retrieves metadata write mode setting.">H5Pget_coll_metadata_write()</a> </li> +<li><a class="el" href="group___g_a_p_l.html#ga5bc0b1fc7e1e3961bf0b441e722949eb" title="Sets metadata I/O mode for read operations to be collective or independent (default)">H5Pset_all_coll_metadata_ops()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c" title="Sets metadata write mode to be collective or independent (default)">H5Pset_coll_metadata_write()</a> </li> +<li><a class="el" href="maybe_metadata_reads.html">Functions with No Access Property List Parameter that May Generate Metadata Reads</a></li> +</ul> +</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga60ec714459a4911d28e46deb201f4f2e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga60ec714459a4911d28e46deb201f4f2e">◆ </a></span>H5Pget_core_write_tracking()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_core_write_tracking </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>is_enabled</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>page_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Gets information about the write tracking feature used by the core VFD. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">is_enabled</td><td>Whether the feature is enabled </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">page_size</td><td>Size, in bytes, of write aggregation pages</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga60ec714459a4911d28e46deb201f4f2e" title="Gets information about the write tracking feature used by the core VFD.">H5Pget_core_write_tracking()</a> retrieves information about the write tracking feature used by the core VFD.</p> +<p>When a file is created or opened for writing using the core virtual file driver (VFD) with the backing store option turned on, the VFD can be configured to track changes to the file and only write out the modified bytes. To avoid a large number of small writes, the changes can be aggregated into pages of a user-specified size. The core VFD is also known as the memory VFD. The driver identifier is <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a>.</p> +<dl class="section note"><dt>Note</dt><dd>This function is only for use with the core VFD and must be used after the call to <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>. It is an error to use this function with any other VFD.</dd> +<dd> +This function only applies to the backing store write operation, which typically occurs when the file is flushed or closed. This function has no relationship to the increment parameter passed to <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>.</dd> +<dd> +For optimum performance, the <code>page_size</code> parameter should be a power of two.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.13 </dd></dl> + +</div> +</div> +<a id="ga43a733fe9723dd15f5ad7abda909a1b8"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga43a733fe9723dd15f5ad7abda909a1b8">◆ </a></span>H5Pget_driver()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> H5Pget_driver </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns low-lever driver identifier. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>Property list identifier</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a low level driver identifier if successful; otherwise returns <a class="el" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga43a733fe9723dd15f5ad7abda909a1b8" title="Returns low-lever driver identifier.">H5Pget_driver()</a> returns the identifier of the low-level file driver associated with the file access property list or data transfer property list <code>plist_id</code>.</p> +<p>Valid driver identifiers distributed with HDF5 are listed and described in the following table.</p> +<table class="doxtable"> +<tr> +<th>Driver Name </th><th>Driver Identifier </th><th>Description </th><th>Related Function </th></tr> +<tr> +<td>POSIX </td><td><a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a> </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><a class="el" href="_h5_f_dsec2_8h.html#af581bceca36ad4eef3cd45b16eabbb20">H5Pset_fapl_sec2()</a> </td></tr> +<tr> +<td>Direct </td><td><a class="el" href="_h5_f_ddirect_8h.html#a99213f218f9ab0c51f9c679228a1e436">H5FD_DIRECT</a> </td><td>This is the <a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a> driver, except data is written to or read from the file synchronously without being cached by the system. </td><td><a class="el" href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7" title="Sets up use of the direct I/O driver.">H5Pset_fapl_direct()</a> </td></tr> +<tr> +<td>Log </td><td><a class="el" href="_h5_f_dlog_8h.html#a027aaf28f5104c77c4f51ecd29a5f7f4">H5FD_LOG</a> </td><td>This is the <a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a> driver with logging capabilities. </td><td><a class="el" href="group___f_a_p_l.html#ga4e03be2fe83ed02b32266a6c81427beb" title="Sets up the logging virtual file driver (H5FD_LOG) for use.">H5Pset_fapl_log()</a> </td></tr> +<tr> +<td>Windows </td><td><a class="el" href="_h5_f_dwindows_8h.html#ab5173993ddefd103bfb3d37c2837a9a4">H5FD_WINDOWS</a> </td><td>This driver was modified in HDF5-1.8.8 to be a wrapper of the POSIX driver, <a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a>. This change should not affect user applications. </td><td><a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830" title="Sets the Windows I/O driver.">H5Pset_fapl_windows()</a> </td></tr> +<tr> +<td>STDIO </td><td><a class="el" href="_h5_f_dstdio_8h.html#a030a03b96a9f6e46035ce64e25389085">H5FD_STDIO</a> </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><a class="el" href="group___f_a_p_l.html#ga77f0643117835e7f7992d573761b5052" title="Sets the standard I/O driver.">H5Pset_fapl_stdio()</a> </td></tr> +<tr> +<td>Memory </td><td><a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> </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><a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a> </td></tr> +<tr> +<td>Family </td><td><a class="el" href="_h5_f_dfamily_8h.html#adbf24f060712550a2a9649589a6060c6">H5FD_FAMILY</a> </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><a class="el" href="group___f_a_p_l.html#ga95d19da25f196ce1ace10af00f49ab53" title="Sets the file access property list to use the family driver.">H5Pset_fapl_family()</a> </td></tr> +<tr> +<td>Multi </td><td><a class="el" href="_h5_f_dmulti_8h.html#a754e05ae5e0f2d86f64002b338c0fd5c">H5FD_MULTI</a> </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><a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58" title="Sets up use of the multi-file driver.">H5Pset_fapl_multi()</a> </td></tr> +<tr> +<td>Parallel </td><td><a class="el" href="_h5_f_dmpio_8h.html#a7a231bc1d78744088a4e1d297284cabf">H5FD_MPIO</a> </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><a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff" title="Stores MPI IO communicator information to the file access property list.">H5Pset_fapl_mpio()</a> </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> +<p>This list does not include custom drivers that might be defined and registered by a user.</p> +<p>The returned driver identifier is only valid as long as the file driver remains registered.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="gac0d9eb573b84ce125433e81b2a475085"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac0d9eb573b84ce125433e81b2a475085">◆ </a></span>H5Pget_driver_config_str()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#af629ed855824cf5955b54529adf78ad6">ssize_t</a> H5Pget_driver_config_str </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">char * </td> + <td class="paramname"><em>config_buf</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>buf_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves a string representation of the configuration for the driver set on the given FAPL. The returned string can be used to configure the same driver in an identical way. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">config_buf</td><td>Driver configuration string output buffer </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">buf_size</td><td>Size of driver configuration string output buffer</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns the length of the driver configuration string on success (not including the NUL terminator). Returns negative on failure.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac0d9eb573b84ce125433e81b2a475085" title="Retrieves a string representation of the configuration for the driver set on the given FAPL....">H5Pget_driver_config_str()</a> retrieves a string representation of the configuration for the driver set on the given FAPL. The returned string can be used to configure the same driver in an identical way.</p> +<p>If <code>config_buf</code> is NULL, the length of the driver configuration string is simply returned. The caller can then allocate a buffer of the appropriate size and call this routine again.</p> +<dl class="section version"><dt>Version</dt><dd>1.14.0 Function publicized in this release. </dd></dl> + +</div> +</div> +<a id="ga14056dca8f3d6249474d5321d4298fe2"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga14056dca8f3d6249474d5321d4298fe2">◆ </a></span>H5Pget_driver_info()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">const void* H5Pget_driver_info </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a pointer to file driver information. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access or data transfer property list identifier</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a pointer to a struct containing low-level driver information. Otherwise returns NULL. NULL is also returned if no driver-specific properties have been registered. No error is pushed on the stack in this case.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2" title="Returns a pointer to file driver information.">H5Pget_driver_info()</a> returns a pointer to file driver-specific information for the low-level driver associated with the file access or data transfer property list <code>plist_id</code>.</p> +<p>The pointer returned by this function points to an “uncopied” struct. Driver-specific versions of that struct are defined for each low-level driver in the relevant source code file H5FD*.c. For example, the struct used for the MULTI driver is <code>H5FD_multi_fapl_t</code> defined in H5FDmulti.c.</p> +<p>If no driver-specific properties have been registered, <a class="el" href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2" title="Returns a pointer to file driver information.">H5Pget_driver_info()</a> returns NULL.</p> +<dl class="section note"><dt>Note</dt><dd><a class="el" href="group___f_a_p_l.html#ga14056dca8f3d6249474d5321d4298fe2" title="Returns a pointer to file driver information.">H5Pget_driver_info()</a> and <a class="el" href="group___f_a_p_l.html#ga8bcce60e23e9d2a019212c63b146502e" title="Sets a file driver.">H5Pset_driver()</a> are used only when creating a virtual file driver (VFD) in the virtual file layer (VFL).</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.10.1 Return value was changed from <em>void</em> * to <em>const</em> <em>void</em> *. </dd> +<dd> +1.8.2 Function publicized in this release; previous releases described this function only in the virtual file driver documentation. </dd></dl> + +</div> +</div> +<a id="ga4c9bcfff90f48bfefa2c25e551485923"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga4c9bcfff90f48bfefa2c25e551485923">◆ </a></span>H5Pget_elink_file_cache_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_elink_file_cache_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned * </td> + <td class="paramname"><em>efc_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the size of the external link open file cache. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">efc_size</td><td>External link open file cache size in number of files</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga4c9bcfff90f48bfefa2c25e551485923" title="Retrieves the size of the external link open file cache.">H5Pget_elink_file_cache_size()</a> retrieves the number of files that can be held open in an external link open file cache.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.7 </dd></dl> + +</div> +</div> +<a id="ga12789fcfeaea073c13202e6401f404a6"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga12789fcfeaea073c13202e6401f404a6">◆ </a></span>H5Pget_evict_on_close()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_evict_on_close </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>evict_on_close</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the file access property list setting that determines whether an HDF5 object will be evicted from the library's metadata cache when it is closed. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">evict_on_close</td><td>Pointer to a variable that will indicate if the object will be evicted on close</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>The library's metadata cache is fairly conservative about holding on to HDF5 object metadata (object headers, chunk index structures, etc.), which can cause the cache size to grow, resulting in memory pressure on an application or system. When enabled, the "evict on + close" property will cause all metadata for an object to be immediately evicted from the cache as long as it is not referenced by any other open object.</p> +<p>See <a class="el" href="group___f_a_p_l.html#gaa44cc0e592608e12082dad9305b3c74d" title="Controls the library's behavior of evicting metadata associated with a closed object.">H5Pset_evict_on_close()</a> for additional notes on behavior.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="ga14977eaaf6565ba871b575de3163f1b3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga14977eaaf6565ba871b575de3163f1b3">◆ </a></span>H5Pget_family_offset()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_family_offset </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>offset</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves a data offset from the file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">offset</td><td>Offset in bytes within the HDF5 file</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga14977eaaf6565ba871b575de3163f1b3" title="Retrieves a data offset from the file access property list.">H5Pget_family_offset()</a> retrieves the value of offset from the file access property list <code>fapl_id</code> so that the user application can retrieve a file handle for low-level access to a particular member of a family of files. The file handle is retrieved with a separate call to <a class="el" href="group___h5_f.html#gae4020a66fb8da0586e3b74c81ffccea4" title="Returns pointer to the file handle from the virtual file driver.">H5Fget_vfd_handle()</a> (or, in special circumstances, to <a class="el" href="_h5_f_ddevelop_8h.html#a9fcfb5d6708f4c3f5d319b801ac252bc">H5FDget_vfd_handle()</a>, see <a class="el" href="_v_f_l.html">HDF5 Virtual File Layer</a>).</p> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="gac347d401cbb28fecd78c5f15ddb4c9c1"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac347d401cbb28fecd78c5f15ddb4c9c1">◆ </a></span>H5Pget_fapl_core()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_core </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>increment</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>backing_store</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Queries core file driver properties. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">increment</td><td>Size, in bytes, of memory increments </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">backing_store</td><td>Boolean flag indicating whether to write the file contents to disk when the file is closed </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac347d401cbb28fecd78c5f15ddb4c9c1" title="Queries core file driver properties.">H5Pget_fapl_core()</a> queries the <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver properties as set by <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga038e5f3952e49b6945039fc2b010ab16"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga038e5f3952e49b6945039fc2b010ab16">◆ </a></span>H5Pget_fapl_direct()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_direct </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>boundary</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>block_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>cbuf_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves direct I/O driver settings. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">boundary</td><td>Required memory alignment boundary </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">block_size</td><td>File system block size </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">cbuf_size</td><td>Copy buffer size </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga038e5f3952e49b6945039fc2b010ab16" title="Retrieves direct I/O driver settings.">H5Pget_fapl_direct()</a> retrieves the required memory alignment (<code>alignment</code>), file system block size (<code>block_size</code>), and copy buffer size (<code>cbuf_size</code>) settings for the direct I/O driver, <a class="el" href="_h5_f_ddirect_8h.html#a99213f218f9ab0c51f9c679228a1e436">H5FD_DIRECT</a>, from the file access property list <code>fapl_id</code>.</p> +<p>See <a class="el" href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7" title="Sets up use of the direct I/O driver.">H5Pset_fapl_direct()</a> for discussion of these values, requirements, and important considerations.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="ga0bc1a003f26bf4b53e4487b6ca117389"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga0bc1a003f26bf4b53e4487b6ca117389">◆ </a></span>H5Pget_fapl_family()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_family </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>memb_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> * </td> + <td class="paramname"><em>memb_fapl_id</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns file access property list information. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_size</td><td>Size in bytes of each file member </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_fapl_id</td><td>Identifier of file access property list for each family member </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga0bc1a003f26bf4b53e4487b6ca117389" title="Returns file access property list information.">H5Pget_fapl_family()</a> returns file access property list for use with the family driver. This information is returned through the output parameters.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="gae59e7d8e0e8823e6dd6034b66418ed00"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gae59e7d8e0e8823e6dd6034b66418ed00">◆ </a></span>H5Pget_fapl_hdfs()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_hdfs </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__hdfs__fapl__t.html">H5FD_hdfs_fapl_t</a> * </td> + <td class="paramname"><em>fa_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000014">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga8482cdac1272818e4e0f86a665f8ef98"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8482cdac1272818e4e0f86a665f8ef98">◆ </a></span>H5Pget_fapl_ioc()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_ioc </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__ioc__config__t.html">H5FD_ioc_config_t</a> * </td> + <td class="paramname"><em>config_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Queries a File Access Property List for <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> file driver properties. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">config_out</td><td>Pointer to <a class="el" href="struct_h5_f_d__ioc__config__t.html" title="Configuration structure for H5Pset_fapl_ioc() / H5Pget_fapl_ioc()">H5FD_ioc_config_t</a> structure through which the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> file driver properties will be returned.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga8482cdac1272818e4e0f86a665f8ef98" title="Queries a File Access Property List for H5FD_IOC file driver properties.">H5Pget_fapl_ioc()</a> queries the specified File Access Property List for <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver properties as set by <a class="el" href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0" title="Modifies the specified File Access Property List to use the H5FD_IOC driver.">H5Pset_fapl_ioc()</a>. If the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver has not been set on the File Access Property List, a default configuration is returned. An HDF5 application may use this functionality to manually configure the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver by calling <a class="el" href="group___f_a_p_l.html#ga8482cdac1272818e4e0f86a665f8ef98" title="Queries a File Access Property List for H5FD_IOC file driver properties.">H5Pget_fapl_ioc()</a> on a newly-created File Access Property List, adjusting the default values and then calling <a class="el" href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0" title="Modifies the specified File Access Property List to use the H5FD_IOC driver.">H5Pset_fapl_ioc()</a> with the configured <a class="el" href="struct_h5_f_d__ioc__config__t.html" title="Configuration structure for H5Pset_fapl_ioc() / H5Pget_fapl_ioc()">H5FD_ioc_config_t</a> structure.</p> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga2c0636d9bb9c50d381afbd0d3140e593"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga2c0636d9bb9c50d381afbd0d3140e593">◆ </a></span>H5Pget_fapl_mirror()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_mirror </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__mirror__fapl__t.html">H5FD_mirror_fapl_t</a> * </td> + <td class="paramname"><em>fa_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000016">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga5d9e4b9f27791ccf19484a898f3fd6fa"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5d9e4b9f27791ccf19484a898f3fd6fa">◆ </a></span>H5Pget_fapl_mpio()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_mpio </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Comm * </td> + <td class="paramname"><em>comm</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Info * </td> + <td class="paramname"><em>info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns MPI IO communicator information. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">comm</td><td>MPI-2 communicator </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">info</td><td>MPI-2 info object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>If the file access property list is set to the <a class="el" href="_h5_f_dmpio_8h.html#a7a231bc1d78744088a4e1d297284cabf">H5FD_MPIO</a> driver, <a class="el" href="group___f_a_p_l.html#ga5d9e4b9f27791ccf19484a898f3fd6fa" title="Returns MPI IO communicator information.">H5Pget_fapl_mpio()</a> returns duplicates of the stored MPI communicator and Info object through the <code>comm</code> and <code>info</code> pointers, if those values are non-null.</p> +<p>Since the MPI communicator and Info object are duplicates of the stored information, future modifications to the access property list will not affect them. It is the responsibility of the application to free these objects.</p> +<dl class="section version"><dt>Version</dt><dd>1.4.5 Handling of the MPI Communicator and Info object changed at this release. A duplicate of each of these is now stored in the property list instead of pointers to each. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga765b7880795a139f3b567743ac88c3c7"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga765b7880795a139f3b567743ac88c3c7">◆ </a></span>H5Pget_fapl_multi()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_multi </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> * </td> + <td class="paramname"><em>memb_map</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> * </td> + <td class="paramname"><em>memb_fapl</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">char ** </td> + <td class="paramname"><em>memb_name</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> * </td> + <td class="paramname"><em>memb_addr</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>relax</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns information about the multi-file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_map</td><td>Maps memory usage types to other memory usage types </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_fapl</td><td>Property list for each memory usage type </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_name</td><td>Name generator for names of member files </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">memb_addr</td><td>The offsets within the virtual address space, from 0 (zero) to <a class="el" href="_h5public_8h.html#a49742d33813ee38ef58eca9fbeda6b86">HADDR_MAX</a>, at which each type of data storage begins </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">relax</td><td>Allows read-only access to incomplete file sets when <code>TRUE</code> </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga765b7880795a139f3b567743ac88c3c7" title="Returns information about the multi-file access property list.">H5Pget_fapl_multi()</a> returns information about the multi-file access property list.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga89b9f918d53dee5e6c80060667b8d32f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga89b9f918d53dee5e6c80060667b8d32f">◆ </a></span>H5Pget_fapl_onion()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_onion </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> * </td> + <td class="paramname"><em>fa_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>get the onion info from the file access property list </p> +<hr /> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">fa_out</td><td>The pointer to the structure <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga89b9f918d53dee5e6c80060667b8d32f" title="get the onion info from the file access property list">H5Pget_fapl_onion()</a> retrieves the structure <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> from the file access property list that is set for the onion VFD driver.</p> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga13e273711e160cbd58e60c701b4f50e6"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga13e273711e160cbd58e60c701b4f50e6">◆ </a></span>H5Pget_fapl_ros3()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_ros3 </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__ros3__fapl__t.html">H5FD_ros3_fapl_t</a> * </td> + <td class="paramname"><em>fa_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000018">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="gaf6ac1c131acee33dfb878593dfefb4ac"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaf6ac1c131acee33dfb878593dfefb4ac">◆ </a></span>H5Pget_fapl_splitter()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_splitter </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__splitter__vfd__config__t.html">H5FD_splitter_vfd_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000021">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga2af70900a3ea50a83d65f8285730ef45"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga2af70900a3ea50a83d65f8285730ef45">◆ </a></span>H5Pget_fapl_subfiling()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fapl_subfiling </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__subfiling__config__t.html">H5FD_subfiling_config_t</a> * </td> + <td class="paramname"><em>config_out</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Queries a File Access Property List for <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> file driver properties. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">config_out</td><td>Pointer to <a class="el" href="struct_h5_f_d__subfiling__config__t.html" title="Configuration structure for H5Pset_fapl_subfiling() / H5Pget_fapl_subfiling()">H5FD_subfiling_config_t</a> structure through which the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> file driver properties will be returned.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45" title="Queries a File Access Property List for H5FD_SUBFILING file driver properties.">H5Pget_fapl_subfiling()</a> queries the specified File Access Property List for <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver properties as set by <a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2" title="Modifies the specified File Access Property List to use the H5FD_SUBFILING driver.">H5Pset_fapl_subfiling()</a>. If the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver has not been set on the File Access Property List, a default configuration is returned. An HDF5 application may use this functionality to manually configure the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver by calling <a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45" title="Queries a File Access Property List for H5FD_SUBFILING file driver properties.">H5Pget_fapl_subfiling()</a> on a newly-created File Access Property List, adjusting the default values and then calling <a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2" title="Modifies the specified File Access Property List to use the H5FD_SUBFILING driver.">H5Pset_fapl_subfiling()</a> with the configured <a class="el" href="struct_h5_f_d__subfiling__config__t.html" title="Configuration structure for H5Pset_fapl_subfiling() / H5Pget_fapl_subfiling()">H5FD_subfiling_config_t</a> structure.</p> +<dl class="section note"><dt>Note</dt><dd><a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45" title="Queries a File Access Property List for H5FD_SUBFILING file driver properties.">H5Pget_fapl_subfiling()</a> returns the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver properties as they were initially set for the File Access Property List using <a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2" title="Modifies the specified File Access Property List to use the H5FD_SUBFILING driver.">H5Pset_fapl_subfiling()</a>. Alternatively, the driver properties can be modified at runtime according to values set for the <a class="el" href="_h5_f_dsubfiling_8h.html#ae3da9be3aeeedafd84cca1371b6c5da4">H5FD_SUBFILING_STRIPE_SIZE</a>, <a class="el" href="_h5_f_dsubfiling_8h.html#a5a5883d4d3c713fdbefd27971b8a67b7">H5FD_SUBFILING_IOC_PER_NODE</a> and <a class="el" href="_h5_f_dsubfiling_8h.html#a8350a509d56b739b6cc8f4f1934d0e00">H5FD_SUBFILING_IOC_SELECTION_CRITERIA</a> environment variables. However, driver properties set through environment variables will not be reflected in what is returned by <a class="el" href="group___f_a_p_l.html#ga2af70900a3ea50a83d65f8285730ef45" title="Queries a File Access Property List for H5FD_SUBFILING file driver properties.">H5Pget_fapl_subfiling()</a>, so an application may need to check those environment variables to get accurate values for the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver properties.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga41da04bb4f823ba9f7d6c57dc8fe2878"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga41da04bb4f823ba9f7d6c57dc8fe2878">◆ </a></span>H5Pget_fclose_degree()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_fclose_degree </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475f">H5F_close_degree_t</a> * </td> + <td class="paramname"><em>degree</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the file close degree. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">degree</td><td>Pointer to a location to which to return the file close degree property, the value of <code>degree</code> </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga41da04bb4f823ba9f7d6c57dc8fe2878" title="Returns the file close degree.">H5Pget_fclose_degree()</a> returns the current setting of the file close degree property <code>degree</code> in the file access property list <code>fapl_id</code>. The value of <code>degree</code> determines how aggressively <a class="el" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124" title="Terminates access to an HDF5 file.">H5Fclose()</a> deals with objects within a file that remain open when <a class="el" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124" title="Terminates access to an HDF5 file.">H5Fclose()</a> is called to close that file.</p> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="ga337626cc516d5d1e3303ea6bc350e56b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga337626cc516d5d1e3303ea6bc350e56b">◆ </a></span>H5Pget_file_image()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_file_image </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void ** </td> + <td class="paramname"><em>buf_ptr_ptr</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>buf_len_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves a copy of the file image designated as the initial content and structure of a file. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">buf_ptr_ptr</td><td>On input, <code>NULL</code> or a pointer to a pointer to a buffer that contains the file image.<br /> + On successful return, if <code>buf_ptr_ptr</code> is not <code>NULL</code>, <code>*buf_ptr_ptr</code> will contain a pointer to a copy of the initial image provided in the last call to <a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a> for the supplied <code>fapl_id</code>. If no initial image has been set, <code>*buf_ptr_ptr</code> will be <code>NULL</code>. </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">buf_len_ptr</td><td>On input, <code>NULL</code> or a pointer to a buffer specifying the required size of the buffer to hold the file image.<br /> + On successful return, if <code>buf_len_ptr</code> was not passed in as <code>NULL</code>, <code>buf_len_ptr</code> will return the required size in bytes of the buffer to hold the initial file image in the supplied file access property list, <code>fapl_id</code>. If no initial image is set, the value of <code>*buf_len_ptr</code> will be set to 0 (zero) </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b" title="Retrieves a copy of the file image designated as the initial content and structure of a file.">H5Pget_file_image()</a> allows an application to retrieve a copy of the file image designated for a VFD to use as the initial contents of a file.</p> +<p>If file image callbacks are defined, <a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b" title="Retrieves a copy of the file image designated as the initial content and structure of a file.">H5Pget_file_image()</a> will use them when allocating and loading the buffer to return to the application (see <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>). If file image callbacks are not defined, the function will use <code>malloc</code> and <code>memcpy</code>. When <code>malloc</code> and <code>memcpy</code> are used, it is the caller’s responsibility to discard the returned buffer with a call to <code>free</code>.</p> +<p>It is the responsibility of the calling application to free the buffer whose address is returned in <code>buf_ptr_ptr</code>. This can be accomplished with <code>free</code> if file image callbacks have not been set (see <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>) or with the appropriate method if file image callbacks have been set.</p> +<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___h5_l_t.html#ga07fcf2af194e87a3e45252544ebe4aa4" title="Opens an HDF5 file image in memory.">H5LTopen_file_image()</a>, <a class="el" href="group___h5_f.html#gadc53f4e76b1199cb5d2a8cb7fbb114ad" title="Retrieves a copy of the image of an existing, open file.">H5Fget_file_image()</a>, <a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a>, <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>, <a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e" title="Retrieves callback routines for working with file images.">H5Pget_file_image_callbacks()</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>, <a class="el" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a>, <a href="https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations">HDF5 File Image Operations</a>.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.9 </dd></dl> + +</div> +</div> +<a id="gae17e38082dfdbadd75c897f1e6a9096e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gae17e38082dfdbadd75c897f1e6a9096e">◆ </a></span>H5Pget_file_image_callbacks()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_file_image_callbacks </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> * </td> + <td class="paramname"><em>callbacks_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves callback routines for working with file images. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">callbacks_ptr</td><td>Pointer to the instance of the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> struct in which the callback routines are to be returned<br /> + Struct fields must be initialized to NULL before the call is made.<br /> + Struct field contents upon return will match those passed in in the last <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> call for the file access property list <code>fapl_id</code>. </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e" title="Retrieves callback routines for working with file images.">H5Pget_file_image_callbacks()</a> retrieves the callback routines set for working with file images opened with the file access property list <code>fapl_id</code>.</p> +<p>The callbacks must have been previously set with <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> in the file access property list.</p> +<p>Upon the successful return of <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>, the fields in the instance of the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> struct pointed to by <code>callbacks_ptr</code> will contain the same values as were passed in the most recent <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> call for the file access property list <code>fapl_id</code>.</p> +<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___h5_l_t.html#ga07fcf2af194e87a3e45252544ebe4aa4" title="Opens an HDF5 file image in memory.">H5LTopen_file_image()</a>, <a class="el" href="group___h5_f.html#gadc53f4e76b1199cb5d2a8cb7fbb114ad" title="Retrieves a copy of the image of an existing, open file.">H5Fget_file_image()</a>, <a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a>, <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>, <a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e" title="Retrieves callback routines for working with file images.">H5Pget_file_image_callbacks()</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>, <a class="el" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a>, <a href="https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations">HDF5 File Image Operations</a>.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.9 </dd></dl> + +</div> +</div> +<a id="ga5de19a5a8ac23ca417aa2d49d708dc2d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5de19a5a8ac23ca417aa2d49d708dc2d">◆ </a></span>H5Pget_file_locking()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_file_locking </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>use_file_locking</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>ignore_when_disabled</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the file locking property values. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">use_file_locking</td><td>File locking flag </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">ignore_when_disabled</td><td>Ignore when disabled flag </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga5de19a5a8ac23ca417aa2d49d708dc2d" title="Retrieves the file locking property values.">H5Pget_file_locking()</a> retrieves the file locking property values for the file access property list specified by <code>fapl_id</code>.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.7 </dd></dl> + +</div> +</div> +<a id="gaaa81d8427b419d80eff6e1d216d99b71"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaaa81d8427b419d80eff6e1d216d99b71">◆ </a></span>H5Pget_gc_references()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_gc_references </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned * </td> + <td class="paramname"><em>gc_ref</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns garbage collecting references setting. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">gc_ref</td><td>Flag returning the state of reference garbage collection. A returned value of 1 indicates that garbage collection is on while 0 indicates that garbage collection is off.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gaaa81d8427b419d80eff6e1d216d99b71" title="Returns garbage collecting references setting.">H5Pget_gc_references()</a> returns the current setting for the garbage collection references property from the specified file access property list. The garbage collection references property is set by <a class="el" href="group___f_a_p_l.html#ga61f01a12d5392ccf1321168f3c28f36f" title="Sets garbage collecting references flag.">H5Pset_gc_references()</a>.</p> +<dl class="section since"><dt>Since</dt><dd>1.2.0 </dd></dl> + +</div> +</div> +<a id="gad5d7e671c3a06bcee64bc25841aaf607"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gad5d7e671c3a06bcee64bc25841aaf607">◆ </a></span>H5Pget_libver_bounds()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_libver_bounds </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> * </td> + <td class="paramname"><em>low</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> * </td> + <td class="paramname"><em>high</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves library version bounds settings that indirectly control the format versions used when creating objects. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">low</td><td>The earliest version of the library that will be used for writing objects </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">high</td><td>The latest version of the library that will be used for writing objects</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gad5d7e671c3a06bcee64bc25841aaf607" title="Retrieves library version bounds settings that indirectly control the format versions used when creat...">H5Pget_libver_bounds()</a> retrieves the lower and upper bounds on the HDF5 library release versions that indirectly determine the object format versions used when creating objects in the file.</p> +<p>This property is retrieved from the file access property list specified by the parameter <code>fapl_id</code>.</p> +<p>The value returned in the parameters <code>low</code> and <code>high</code> is one of the enumerated values in the <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> struct, which is defined in <a class="el" href="_h5_fpublic_8h.html">H5Fpublic.h</a>.</p> +<dl class="section version"><dt>Version</dt><dd>1.10.2 Add <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a> to the enumerated defines in <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="ga3012f7f3310c7d25ada7617896bef1ee"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga3012f7f3310c7d25ada7617896bef1ee">◆ </a></span>H5Pget_mdc_config()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_mdc_config </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the current initial metadata cache configuration from the provided file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">config_ptr</td><td>Pointer to the instance of <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> in which the current metadata cache configuration is to be reported </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<dl class="section note"><dt>Note</dt><dd>The <code>in</code> direction applies only to the <a class="el" href="struct_h5_a_c__cache__config__t.html#aad880fc4455c253781e8968f2239d56f">H5AC_cache_config_t::version</a> field. All other fields are <code>out</code> parameters.</dd></dl> +<p>The fields of the <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> structure are shown below: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> {</div> +<div class="line"> <span class="comment">/* general configuration fields: */</span></div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#aad880fc4455c253781e8968f2239d56f">version</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#aab04b3e770d1c2decc03f6fd94b64b17">rpt_fcn_enabled</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a6c03d051d5efb0e64bdca5d0b354a8b1">open_trace_file</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#aced3486ae892a53209b7aae069a34be9">close_trace_file</a>;</div> +<div class="line"> <span class="keywordtype">char</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a92e7d20eb2b7b353961c64558ddac080">trace_file_name</a>[<a class="code" href="_h5_a_cpublic_8h.html#a717f1f3545cfc3d1b2208c96cc0c3bd3">H5AC__MAX_TRACE_FILE_NAME_LEN</a> + 1];</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a3d6e32c7a9bf8f65848c6840e1de8c6e">evictions_enabled</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a707198a337ece01a37dfec6e01275d82">set_initial_size</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a649236e7dd714855a50f122aa5caca9f">initial_size</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#abd805b98f873c1720f34a0ce937838fd">min_clean_fraction</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#af4728438dee601cb2554d9bf18d78a43">max_size</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#af99ca22b80e05fd5b3603806348ab647">min_size</a>;</div> +<div class="line"> <span class="keywordtype">long</span> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac998e51b01e0eef09d9a29c43f97e4bf">epoch_length</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* size increase control fields: */</span></div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#a040d488146ff1ca0a82209e9af3918fa">H5C_cache_incr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#ae825aaf759060239e92170d20eb97d26">incr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a20f323fcb4747fc7228d2d74bb965586">lower_hr_threshold</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac504dff76b24ab9f15536c51aec9fbbb">increment</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a322f2a955e71ab7ede483e991e76f806">apply_max_increment</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ad5a729f1d611f2780679a35b3524052c">max_increment</a>;</div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#aaaa13ca7756d135b7df6d5a6779ee908">H5C_cache_flash_incr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a0e25a1dc2c695bea335df0e23ed6363c">flash_incr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a77b1812e0407c9122db524462a5c9633">flash_multiple</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a95fb1e03a77ef5c109d0c851416ced55">flash_threshold</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* size decrease control fields: */</span></div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#a4f8534794ad9a977185a5d608c0af04f">H5C_cache_decr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a5df68196b281c19d8ab7da0788566aec">decr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a84a5ff4ac69196aa27c14f6f796db596">upper_hr_threshold</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a54007d3f2afb718b437f499a5c8b46d9">decrement</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac2c89a735413e4c36d6f463c4890ab42">apply_max_decrement</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a75e875a61c9da7f82482d0f6fe6e7152">max_decrement</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a7ac41e345300bdecd9943e855d55b71b">epochs_before_eviction</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a6c5cff8e8a21230cc7f21859d8d6bd22">apply_empty_reserve</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a9c1ae995513b55737aad09e11beff733">empty_reserve</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* parallel configuration fields: */</span></div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a8e3c2a2d300b7a8f8d3705fc5e59a3c1">dirty_bytes_threshold</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a83a536128dbb7785b2553c294f33d1fe">metadata_write_strategy</a>;</div> +<div class="line">} <a class="code" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a>;</div> +<div class="ttc" id="a_h5_a_cpublic_8h_html_a717f1f3545cfc3d1b2208c96cc0c3bd3"><div class="ttname"><a href="_h5_a_cpublic_8h.html#a717f1f3545cfc3d1b2208c96cc0c3bd3">H5AC__MAX_TRACE_FILE_NAME_LEN</a></div><div class="ttdeci">#define H5AC__MAX_TRACE_FILE_NAME_LEN</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:432</div></div> +<div class="ttc" id="a_h5_cpublic_8h_html_a040d488146ff1ca0a82209e9af3918fa"><div class="ttname"><a href="_h5_cpublic_8h.html#a040d488146ff1ca0a82209e9af3918fa">H5C_cache_incr_mode</a></div><div class="ttdeci">H5C_cache_incr_mode</div><div class="ttdef"><b>Definition:</b> H5Cpublic.h:26</div></div> +<div class="ttc" id="a_h5_cpublic_8h_html_a4f8534794ad9a977185a5d608c0af04f"><div class="ttname"><a href="_h5_cpublic_8h.html#a4f8534794ad9a977185a5d608c0af04f">H5C_cache_decr_mode</a></div><div class="ttdeci">H5C_cache_decr_mode</div><div class="ttdef"><b>Definition:</b> H5Cpublic.h:42</div></div> +<div class="ttc" id="a_h5_cpublic_8h_html_aaaa13ca7756d135b7df6d5a6779ee908"><div class="ttname"><a href="_h5_cpublic_8h.html#aaaa13ca7756d135b7df6d5a6779ee908">H5C_cache_flash_incr_mode</a></div><div class="ttdeci">H5C_cache_flash_incr_mode</div><div class="ttdef"><b>Definition:</b> H5Cpublic.h:34</div></div> +<div class="ttc" id="a_h5public_8h_html_ad470b00eccd2115c707c02de5fa1120d"><div class="ttname"><a href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a></div><div class="ttdeci">bool hbool_t</div><div class="ttdef"><b>Definition:</b> H5public.h:243</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a></div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:462</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a0e25a1dc2c695bea335df0e23ed6363c"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a0e25a1dc2c695bea335df0e23ed6363c">H5AC_cache_config_t::flash_incr_mode</a></div><div class="ttdeci">enum H5C_cache_flash_incr_mode flash_incr_mode</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:615</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a20f323fcb4747fc7228d2d74bb965586"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a20f323fcb4747fc7228d2d74bb965586">H5AC_cache_config_t::lower_hr_threshold</a></div><div class="ttdeci">double lower_hr_threshold</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:585</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a322f2a955e71ab7ede483e991e76f806"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a322f2a955e71ab7ede483e991e76f806">H5AC_cache_config_t::apply_max_increment</a></div><div class="ttdeci">hbool_t apply_max_increment</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:607</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a3d6e32c7a9bf8f65848c6840e1de8c6e"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a3d6e32c7a9bf8f65848c6840e1de8c6e">H5AC_cache_config_t::evictions_enabled</a></div><div class="ttdeci">hbool_t evictions_enabled</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:526</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a54007d3f2afb718b437f499a5c8b46d9"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a54007d3f2afb718b437f499a5c8b46d9">H5AC_cache_config_t::decrement</a></div><div class="ttdeci">double decrement</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:657</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a5df68196b281c19d8ab7da0788566aec"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a5df68196b281c19d8ab7da0788566aec">H5AC_cache_config_t::decr_mode</a></div><div class="ttdeci">enum H5C_cache_decr_mode decr_mode</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:638</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a649236e7dd714855a50f122aa5caca9f"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a649236e7dd714855a50f122aa5caca9f">H5AC_cache_config_t::initial_size</a></div><div class="ttdeci">size_t initial_size</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:550</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a6c03d051d5efb0e64bdca5d0b354a8b1"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a6c03d051d5efb0e64bdca5d0b354a8b1">H5AC_cache_config_t::open_trace_file</a></div><div class="ttdeci">hbool_t open_trace_file</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:478</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a6c5cff8e8a21230cc7f21859d8d6bd22"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a6c5cff8e8a21230cc7f21859d8d6bd22">H5AC_cache_config_t::apply_empty_reserve</a></div><div class="ttdeci">hbool_t apply_empty_reserve</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:683</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a707198a337ece01a37dfec6e01275d82"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a707198a337ece01a37dfec6e01275d82">H5AC_cache_config_t::set_initial_size</a></div><div class="ttdeci">hbool_t set_initial_size</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:546</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a75e875a61c9da7f82482d0f6fe6e7152"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a75e875a61c9da7f82482d0f6fe6e7152">H5AC_cache_config_t::max_decrement</a></div><div class="ttdeci">size_t max_decrement</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:673</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a77b1812e0407c9122db524462a5c9633"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a77b1812e0407c9122db524462a5c9633">H5AC_cache_config_t::flash_multiple</a></div><div class="ttdeci">double flash_multiple</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:620</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a7ac41e345300bdecd9943e855d55b71b"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a7ac41e345300bdecd9943e855d55b71b">H5AC_cache_config_t::epochs_before_eviction</a></div><div class="ttdeci">int epochs_before_eviction</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:677</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a83a536128dbb7785b2553c294f33d1fe"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a83a536128dbb7785b2553c294f33d1fe">H5AC_cache_config_t::metadata_write_strategy</a></div><div class="ttdeci">int metadata_write_strategy</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:707</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a84a5ff4ac69196aa27c14f6f796db596"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a84a5ff4ac69196aa27c14f6f796db596">H5AC_cache_config_t::upper_hr_threshold</a></div><div class="ttdeci">double upper_hr_threshold</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:643</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a8e3c2a2d300b7a8f8d3705fc5e59a3c1"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a8e3c2a2d300b7a8f8d3705fc5e59a3c1">H5AC_cache_config_t::dirty_bytes_threshold</a></div><div class="ttdeci">size_t dirty_bytes_threshold</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:696</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a92e7d20eb2b7b353961c64558ddac080"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a92e7d20eb2b7b353961c64558ddac080">H5AC_cache_config_t::trace_file_name</a></div><div class="ttdeci">char trace_file_name[1024+1]</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:511</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a95fb1e03a77ef5c109d0c851416ced55"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a95fb1e03a77ef5c109d0c851416ced55">H5AC_cache_config_t::flash_threshold</a></div><div class="ttdeci">double flash_threshold</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:629</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_a9c1ae995513b55737aad09e11beff733"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#a9c1ae995513b55737aad09e11beff733">H5AC_cache_config_t::empty_reserve</a></div><div class="ttdeci">double empty_reserve</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:687</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_aab04b3e770d1c2decc03f6fd94b64b17"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#aab04b3e770d1c2decc03f6fd94b64b17">H5AC_cache_config_t::rpt_fcn_enabled</a></div><div class="ttdeci">hbool_t rpt_fcn_enabled</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:470</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_aad880fc4455c253781e8968f2239d56f"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#aad880fc4455c253781e8968f2239d56f">H5AC_cache_config_t::version</a></div><div class="ttdeci">int version</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:465</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_abd805b98f873c1720f34a0ce937838fd"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#abd805b98f873c1720f34a0ce937838fd">H5AC_cache_config_t::min_clean_fraction</a></div><div class="ttdeci">double min_clean_fraction</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:556</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_ac2c89a735413e4c36d6f463c4890ab42"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#ac2c89a735413e4c36d6f463c4890ab42">H5AC_cache_config_t::apply_max_decrement</a></div><div class="ttdeci">hbool_t apply_max_decrement</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:669</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_ac504dff76b24ab9f15536c51aec9fbbb"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#ac504dff76b24ab9f15536c51aec9fbbb">H5AC_cache_config_t::increment</a></div><div class="ttdeci">double increment</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:595</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_ac998e51b01e0eef09d9a29c43f97e4bf"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#ac998e51b01e0eef09d9a29c43f97e4bf">H5AC_cache_config_t::epoch_length</a></div><div class="ttdeci">long int epoch_length</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:573</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_aced3486ae892a53209b7aae069a34be9"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#aced3486ae892a53209b7aae069a34be9">H5AC_cache_config_t::close_trace_file</a></div><div class="ttdeci">hbool_t close_trace_file</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:499</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_ad5a729f1d611f2780679a35b3524052c"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#ad5a729f1d611f2780679a35b3524052c">H5AC_cache_config_t::max_increment</a></div><div class="ttdeci">size_t max_increment</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:611</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_ae825aaf759060239e92170d20eb97d26"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#ae825aaf759060239e92170d20eb97d26">H5AC_cache_config_t::incr_mode</a></div><div class="ttdeci">enum H5C_cache_incr_mode incr_mode</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:580</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_af4728438dee601cb2554d9bf18d78a43"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#af4728438dee601cb2554d9bf18d78a43">H5AC_cache_config_t::max_size</a></div><div class="ttdeci">size_t max_size</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:565</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__config__t_html_af99ca22b80e05fd5b3603806348ab647"><div class="ttname"><a href="struct_h5_a_c__cache__config__t.html#af99ca22b80e05fd5b3603806348ab647">H5AC_cache_config_t::min_size</a></div><div class="ttdeci">size_t min_size</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:569</div></div> +</div><!-- fragment --><p> (Click on a enumerator, field, or type for more information.)</p> +<p><a class="el" href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee" title="Get the current initial metadata cache configuration from the provided file access property list.">H5Pget_mdc_config()</a> gets the initial metadata cache configuration contained in a file access property list and loads it into the instance of <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> pointed to by the <code>config_ptr</code> parameter. This configuration is used when the file is opened.</p> +<p>Note that the version field of <code>*config_ptr</code> must be initialized; this allows the library to support earlier versions of the <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> structure.</p> +<p>See the overview of the metadata cache in the special topics section of the user guide for details on the configuration data returned. If you haven't read and understood that documentation, the results of this call will not make much sense.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="gaaa18d59ee9efb12626410b1638f76f00"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaaa18d59ee9efb12626410b1638f76f00">◆ </a></span>H5Pget_mdc_image_config()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_mdc_image_config </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the metadata cache image configuration values for a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">config_ptr</td><td>Pointer to metadata cache image configuration values </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gaaa18d59ee9efb12626410b1638f76f00" title="Retrieves the metadata cache image configuration values for a file access property list.">H5Pget_mdc_image_config()</a> retrieves the metadata cache image values into <code>config_ptr</code> for the file access property list specified in <code>plist_id</code>.</p> +<p><a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> is defined as follows: </p><div class="fragment"><div class="line"> </div> +<div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> {</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#aad880fc4455c253781e8968f2239d56f">version</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#ad6540e7705dd036e71421880b33ef538">generate_image</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#a4e3d7f62b6ed0d946acf335dc314e303">save_resize_status</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#aec92d40c46311615f2155573aca27ec4">entry_ageout</a>;</div> +<div class="line">} <a class="code" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a>;</div> +<div class="line"> </div> +<div class="ttc" id="astruct_h5_a_c__cache__image__config__t_html"><div class="ttname"><a href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a></div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:732</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__image__config__t_html_a4e3d7f62b6ed0d946acf335dc314e303"><div class="ttname"><a href="struct_h5_a_c__cache__image__config__t.html#a4e3d7f62b6ed0d946acf335dc314e303">H5AC_cache_image_config_t::save_resize_status</a></div><div class="ttdeci">hbool_t save_resize_status</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:743</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__image__config__t_html_aad880fc4455c253781e8968f2239d56f"><div class="ttname"><a href="struct_h5_a_c__cache__image__config__t.html#aad880fc4455c253781e8968f2239d56f">H5AC_cache_image_config_t::version</a></div><div class="ttdeci">int version</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:733</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__image__config__t_html_ad6540e7705dd036e71421880b33ef538"><div class="ttname"><a href="struct_h5_a_c__cache__image__config__t.html#ad6540e7705dd036e71421880b33ef538">H5AC_cache_image_config_t::generate_image</a></div><div class="ttdeci">hbool_t generate_image</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:739</div></div> +<div class="ttc" id="astruct_h5_a_c__cache__image__config__t_html_aec92d40c46311615f2155573aca27ec4"><div class="ttname"><a href="struct_h5_a_c__cache__image__config__t.html#aec92d40c46311615f2155573aca27ec4">H5AC_cache_image_config_t::entry_ageout</a></div><div class="ttdeci">int entry_ageout</div><div class="ttdef"><b>Definition:</b> H5ACpublic.h:748</div></div> +</div><!-- fragment --><p> (Click on a enumerator, field, or type for more information.)</p> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="gaa3a1ca6e294cc5074933239cc3d0e4a3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaa3a1ca6e294cc5074933239cc3d0e4a3">◆ </a></span>H5Pget_mdc_log_options()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_mdc_log_options </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>is_enabled</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">char * </td> + <td class="paramname"><em>location</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>location_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> * </td> + <td class="paramname"><em>start_on_access</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Gets metadata cache logging options. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">is_enabled</td><td>Flag whether logging is enabled </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">location</td><td>Location of log in UTF-8/ASCII (file path/name) (On Windows, this must be ASCII) </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">location_size</td><td>Size in bytes of the location string </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">start_on_access</td><td>Whether the logging begins as soon as the file is opened or created </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>The metadata cache is a central part of the HDF5 library through which all file metadata reads and writes take place. File metadata is normally invisible to the user and is used by the library for purposes such as locating and indexing data. File metadata should not be confused with user metadata, which consists of attributes created by users and attached to HDF5 objects such as datasets via <a class="el" href="group___h5_a.html">Attributes (H5A)</a> API calls.</p> +<p>Due to the complexity of the cache, a trace/logging feature has been created that can be used by HDF5 developers for debugging and performance analysis. The functions that control this functionality will normally be of use to a very limited number of developers outside of The HDF Group. The functions have been documented to help users create logs that can be sent with bug reports.</p> +<p>Control of the log functionality is straightforward. Logging is enabled via the <a class="el" href="group___f_a_p_l.html#ga4d7206c5679d7243410058eceae59b2c" title="Sets metadata cache logging options.">H5Pset_mdc_log_options()</a> function, which will modify the file access property list used to open or create a file. This function has a flag that determines whether logging begins at file open or starts in a paused state. Log messages can then be controlled via the <a class="el" href="group___m_d_c.html#ga378fb5863071278b47070cf205f53e67" title="Starts logging metadata cache events if logging was previously enabled.">H5Fstart_mdc_logging()</a> / <a class="el" href="group___m_d_c.html#ga78627b23010f82002b837f4d312bf234" title="Stops logging metadata cache events if logging was previously enabled and is currently ongoing.">H5Fstop_mdc_logging()</a> functions. <a class="el" href="group___f_a_p_l.html#gaa3a1ca6e294cc5074933239cc3d0e4a3" title="Gets metadata cache logging options.">H5Pget_mdc_log_options()</a> can be used to examine a file access property list, and <a class="el" href="group___m_d_c.html#ga998ebdc7b5190cf3d0fdf2fbe71e9780" title="Gets the current metadata cache logging status.">H5Fget_mdc_logging_status()</a> will return the current state of the logging flags.</p> +<p>The log format is described in the <a href="https://bit.ly/2PG6fNv">Metadata Cache Logging</a> document.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="gac17861181246af0209c0da5209305461"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac17861181246af0209c0da5209305461">◆ </a></span>H5Pget_meta_block_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_meta_block_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the current metadata block size setting. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Minimum size, in bytes, of metadata block allocations</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>Returns the current minimum size, in bytes, of new metadata block allocations. This setting is retrieved from the file access property list <code>fapl_id</code>.</p> +<p>This value is set by <a class="el" href="group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1" title="Sets the minimum metadata block size.">H5Pset_meta_block_size()</a> and is retrieved from the file access property list <code>fapl_id</code>.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga670948d56435920f1e1c2e88b823935e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga670948d56435920f1e1c2e88b823935e">◆ </a></span>H5Pget_metadata_read_attempts()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_metadata_read_attempts </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned * </td> + <td class="paramname"><em>attempts</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the number of read attempts from a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">attempts</td><td>The number of read attempts</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e" title="Retrieves the number of read attempts from a file access property list.">H5Pget_metadata_read_attempts()</a> retrieves the number of read attempts that is set in the file access property list <code>plist_id</code>.</p> +<p>For a default file access property list, the value retrieved will depend on whether the user sets the number of attempts via <a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5" title="Sets the number of read attempts in a file access property list.">H5Pset_metadata_read_attempts()</a>:</p> +<ul> +<li> +If the number of attempts is set to N, the value returned will be N. </li> +<li> +If the number of attempts is not set, the value returned will be the default for non-SWMR access (1). SWMR is short for single-writer/multiple-reader. </li> +</ul> +<p>For the file access property list of a specified HDF5 file, the value retrieved will depend on how the file is opened and whether the user sets the number of read attempts via <a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5" title="Sets the number of read attempts in a file access property list.">H5Pset_metadata_read_attempts()</a>:</p> +<ul> +<li> +<p class="startli">For a file opened with SWMR access:</p> +<ul> +<li> +If the number of attempts is set to N, the value returned will be N. </li> +<li> +If the number of attempts is not set, the value returned will be the default for SWMR access (100). </li> +</ul> +</li> +<li> +For a file opened without SWMR access, the value retrieved will always be the default for non-SWMR access (1). The value set via <a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5" title="Sets the number of read attempts in a file access property list.">H5Pset_metadata_read_attempts()</a> does not have any effect on non-SWMR access. </li> +</ul> +<dl class="section user"><dt>Failure Modes</dt><dd><p class="startdd"></p> +<p class="interdd">When the input property list is not a file access property list.</p> +<p class="interdd">When the library is unable to retrieve the number of read attempts from the file access property list.</p> +<p class="enddd"></p> +</dd></dl> +<dl class="section user"><dt>Examples</dt><dd><p class="startdd"></p> +<p class="interdd">The first example illustrates the two cases for retrieving the number of read attempts from a default file access property list.</p> +<div class="fragment"><div class="line"><span class="comment">/* Get a copy of file access property list */</span></div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 1 (default for non-SWMR access).</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set the # of read attempts to 20 */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a>(fapl, 20);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 20 as set.</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property list */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(fapl);</div> +<div class="ttc" id="a_h5_ppublic_8h_html_a60ec2d4334addfc0eda89614598ee38e"><div class="ttname"><a href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a></div><div class="ttdeci">#define H5P_FILE_ACCESS</div><div class="ttdef"><b>Definition:</b> H5Ppublic.h:52</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_ga670948d56435920f1e1c2e88b823935e"><div class="ttname"><a href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a></div><div class="ttdeci">herr_t H5Pget_metadata_read_attempts(hid_t plist_id, unsigned *attempts)</div><div class="ttdoc">Retrieves the number of read attempts from a file access property list.</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_gab827cef16ec569c87cec94a8b3f350c5"><div class="ttname"><a href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a></div><div class="ttdeci">herr_t H5Pset_metadata_read_attempts(hid_t plist_id, unsigned attempts)</div><div class="ttdoc">Sets the number of read attempts in a file access property list.</div></div> +<div class="ttc" id="agroup___p_l_c_r_html_ga5dce61149211d3ef319452aa598887fb"><div class="ttname"><a href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a></div><div class="ttdeci">herr_t H5Pclose(hid_t plist_id)</div><div class="ttdoc">Terminates access to a property list.</div></div> +<div class="ttc" id="agroup___p_l_c_r_html_gaf1b11da01d4d45d788c45f8bc5f0cbfa"><div class="ttname"><a href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a></div><div class="ttdeci">hid_t H5Pcreate(hid_t cls_id)</div><div class="ttdoc">Creates a new property list as an instance of a property list class.</div></div> +</div><!-- fragment --><p class="interdd">The second example illustrates the two cases for retrieving the number of read attempts from the file access property list of a file opened with SWMR access.</p> +<div class="fragment"><div class="line"><span class="comment">/* Open the file with SWMR access and default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, (<a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a> | <a class="code" href="_h5_fpublic_8h.html#a22b12837bca0dba6689096a370d73402">H5F_ACC_SWMR_READ</a>), <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 100 (default for SWMR access).</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property list */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Create a copy of file access property list */</span></div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set the # of read attempts */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a>(fapl, 20);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file with SWMR access and the non-default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, (<a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a> | <a class="code" href="_h5_fpublic_8h.html#a22b12837bca0dba6689096a370d73402">H5F_ACC_SWMR_READ</a>), fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 20.</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property lists */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +<div class="ttc" id="a_h5_fpublic_8h_html_a1c406ffa89f4acf5a332144a2683d394"><div class="ttname"><a href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a></div><div class="ttdeci">#define H5F_ACC_RDONLY</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:48</div></div> +<div class="ttc" id="a_h5_fpublic_8h_html_a22b12837bca0dba6689096a370d73402"><div class="ttname"><a href="_h5_fpublic_8h.html#a22b12837bca0dba6689096a370d73402">H5F_ACC_SWMR_READ</a></div><div class="ttdeci">#define H5F_ACC_SWMR_READ</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:60</div></div> +<div class="ttc" id="a_h5_ppublic_8h_html_afa85e97bfbf9bf1c58e39263846c568f"><div class="ttname"><a href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a></div><div class="ttdeci">#define H5P_DEFAULT</div><div class="ttdef"><b>Definition:</b> H5Ppublic.h:102</div></div> +<div class="ttc" id="agroup___h5_f_html_ga359585c49f82f5199178777b39e780f4"><div class="ttname"><a href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a></div><div class="ttdeci">hid_t H5Fget_access_plist(hid_t file_id)</div><div class="ttdoc">Returns a file access property list identifier.</div></div> +<div class="ttc" id="agroup___h5_f_html_gaa3f4f877b9bb591f3880423ed2bf44bc"><div class="ttname"><a href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a></div><div class="ttdeci">hid_t H5Fopen(const char *filename, unsigned flags, hid_t fapl_id)</div><div class="ttdoc">Opens an existing HDF5 file.</div></div> +<div class="ttc" id="agroup___h5_f_html_gac55cd91d80822e4f8c2a7f04ea71b124"><div class="ttname"><a href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a></div><div class="ttdeci">herr_t H5Fclose(hid_t file_id)</div><div class="ttdoc">Terminates access to an HDF5 file.</div></div> +</div><!-- fragment --><p class="interdd">The third example illustrates the two cases for retrieving the number of read attempts from the file access property list of a file opened with non-SWMR access.</p> +<div class="fragment"><div class="line"><span class="comment">/* Open the file with non-SWMR access and default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, <a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 1 (default for non-SWMR access).</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property list */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Create a copy of file access property list */</span></div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set the # of read attempts */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a>(fapl, 20);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file with non-SWMR access and the non-default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, <a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>, fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 1 (default for non-SWMR access).</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property lists */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +</div><!-- fragment --><p class="enddd"></p> +</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga5554cf0775f9d7ac3b0cd844533d4486"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5554cf0775f9d7ac3b0cd844533d4486">◆ </a></span>H5Pget_mpi_params()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_mpi_params </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Comm * </td> + <td class="paramname"><em>comm</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Info * </td> + <td class="paramname"><em>info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the MPI communicator and info. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">comm</td><td>MPI communicator </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">info</td><td>MPI info object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga5554cf0775f9d7ac3b0cd844533d4486" title="Get the MPI communicator and info.">H5Pget_mpi_params()</a> gets the MPI communicator and info stored in the file access property list <code>fapl_id</code>.</p> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000030">Todo:</a></b></dt><dd>When was this introduced?</dd></dl> + +</div> +</div> +<a id="ga251515e9fee4641037b4866a4f7c49fe"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga251515e9fee4641037b4866a4f7c49fe">◆ </a></span>H5Pget_multi_type()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_multi_type </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> * </td> + <td class="paramname"><em>type</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves type of data property for MULTI driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list or data transfer property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">type</td><td>Type of data</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga251515e9fee4641037b4866a4f7c49fe" title="Retrieves type of data property for MULTI driver.">H5Pget_multi_type()</a> retrieves the type of data setting from the file access or data transfer property list <code>fapl_id</code>. This enables a user application to specify the type of data the application wishes to access so that the application can retrieve a file handle for low-level access to the particular member of a set of MULTI files in which that type of data is stored. The file handle is retrieved with a separate call to <a class="el" href="group___h5_f.html#gae4020a66fb8da0586e3b74c81ffccea4" title="Returns pointer to the file handle from the virtual file driver.">H5Fget_vfd_handle()</a> (or, in special circumstances, to <a class="el" href="_h5_f_ddevelop_8h.html#a9fcfb5d6708f4c3f5d319b801ac252bc">H5FDget_vfd_handle()</a>; see the Virtual File Layer documentation for more information.</p> +<p>The type of data returned in <code>type</code> will be one of those listed in the discussion of the <code>type</code> parameter in the description of the function <a class="el" href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128" title="Specifies type of data to be accessed via the MULTI driver, enabling more direct access.">H5Pset_multi_type()</a>.</p> +<p>Use of this function is only appropriate for an HDF5 file written as a set of files with the MULTI file driver.</p> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="gadb66d434fd8d2f600213b0eec539564e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gadb66d434fd8d2f600213b0eec539564e">◆ </a></span>H5Pget_object_flush_cb()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_object_flush_cb </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a> * </td> + <td class="paramname"><em>func</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void ** </td> + <td class="paramname"><em>udata</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the object flush property values from the file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>The user-defined callback function </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">udata</td><td>The user-defined input data for the callback function</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e" title="Retrieves the object flush property values from the file access property list.">H5Pget_object_flush_cb()</a> gets the user-defined callback function that is set in the file access property list <code>fapl_id</code> and stored in the parameter <code>func</code>. The callback is invoked whenever an object flush occurs in the file. This routine also obtains the user-defined input data that is passed along to the callback function in the parameter <code>udata</code>.</p> +<dl class="section user"><dt>Example</dt><dd><p class="startdd">The example below illustrates the usage of this routine to obtain the object flush property values.</p> +<div class="fragment"><div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl_id;</div> +<div class="line"><span class="keywordtype">unsigned</span> counter;</div> +<div class="line">H5F_object_flush_t *ret_cb;</div> +<div class="line"><span class="keywordtype">unsigned</span> *ret_counter;</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Create a copy of the file access property list */</span></div> +<div class="line">fapl_id = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set up the object flush property values */</span></div> +<div class="line"><span class="comment">/* flush_cb: callback function to invoke when an object flushes (see below) */</span></div> +<div class="line"><span class="comment">/* counter: user data to pass along to the callback function */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19">H5Pset_object_flush_cb</a>(fapl_id, flush_cb, &counter);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file */</span></div> +<div class="line">file_id = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, <a class="code" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file access property list for the file */</span></div> +<div class="line">fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(file_id);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the object flush property values for the file */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e">H5Pget_object_flush_cb</a>(fapl, &ret_cb, &ret_counter);</div> +<div class="line"><span class="comment">/* ret_cb will point to flush_cb() */</span></div> +<div class="line"><span class="comment">/* ret_counter will point to counter */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">.</span></div> +<div class="line"><span class="comment">*/</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* The callback function for the object flush property */</span></div> +<div class="line"><span class="keyword">static</span> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a></div> +<div class="line">flush_cb(<a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> obj_id, <span class="keywordtype">void</span> *_udata)</div> +<div class="line">{</div> +<div class="line"> <span class="keywordtype">unsigned</span> *flush_ct = (<span class="keywordtype">unsigned</span> *)_udata;</div> +<div class="line"> ++(*flush_ct);</div> +<div class="line"> <span class="keywordflow">return</span> 0;</div> +<div class="line">}</div> +<div class="ttc" id="a_h5_fpublic_8h_html_a402673dec5c537b27a49a9a8bd6140b4"><div class="ttname"><a href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a></div><div class="ttdeci">#define H5F_ACC_RDWR</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:49</div></div> +<div class="ttc" id="a_h5_ipublic_8h_html_a0045db7ff9c22ad35db6ae91662e1943"><div class="ttname"><a href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></div><div class="ttdeci">int64_t hid_t</div><div class="ttdef"><b>Definition:</b> H5Ipublic.h:60</div></div> +<div class="ttc" id="a_h5public_8h_html_a3b079ecf932a5c599499cf7e298af160"><div class="ttname"><a href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a></div><div class="ttdeci">int herr_t</div><div class="ttdef"><b>Definition:</b> H5public.h:235</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_gab4a4a788af5b6e88381dda0df2efbf19"><div class="ttname"><a href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19">H5Pset_object_flush_cb</a></div><div class="ttdeci">herr_t H5Pset_object_flush_cb(hid_t plist_id, H5F_flush_cb_t func, void *udata)</div><div class="ttdoc">Sets a callback function to invoke when an object flush occurs in the file.</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_gadb66d434fd8d2f600213b0eec539564e"><div class="ttname"><a href="group___f_a_p_l.html#gadb66d434fd8d2f600213b0eec539564e">H5Pget_object_flush_cb</a></div><div class="ttdeci">herr_t H5Pget_object_flush_cb(hid_t plist_id, H5F_flush_cb_t *func, void **udata)</div><div class="ttdoc">Retrieves the object flush property values from the file access property list.</div></div> +</div><!-- fragment --> </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga0da11baf31cf424d053aa7952c933d98"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga0da11baf31cf424d053aa7952c933d98">◆ </a></span>H5Pget_page_buffer_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_page_buffer_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>buf_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned * </td> + <td class="paramname"><em>min_meta_perc</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned * </td> + <td class="paramname"><em>min_raw_perc</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the maximum size for the page buffer and the minimum percentage for metadata and raw data pages. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">buf_size</td><td>Maximum size, in bytes, of the page buffer </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">min_meta_perc</td><td>Minimum metadata percentage to keep in the page buffer before allowing pages containing metadata to be evicted</td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">min_raw_perc</td><td>Minimum raw data percentage to keep in the page buffer before allowing pages containing raw data to be evicted</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga0da11baf31cf424d053aa7952c933d98" title="Retrieves the maximum size for the page buffer and the minimum percentage for metadata and raw data p...">H5Pget_page_buffer_size()</a> retrieves <code>buf_size</code>, the maximum size in bytes of the page buffer, <code>min_meta_perc</code>, the minimum metadata percentage, and <code>min_raw_perc</code>, the minimum raw data percentage.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="gac2321d0c34bb2b3cf33cd7bf02ca8e66"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac2321d0c34bb2b3cf33cd7bf02ca8e66">◆ </a></span>H5Pget_sieve_buf_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_sieve_buf_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t * </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns maximum data sieve buffer size. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Maximum size, in bytes, of data sieve buffer</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac2321d0c34bb2b3cf33cd7bf02ca8e66" title="Returns maximum data sieve buffer size.">H5Pget_sieve_buf_size()</a> retrieves, size, the current maximum size of the data sieve buffer.</p> +<p>This value is set by <a class="el" href="group___f_a_p_l.html#ga24fd737955839194bf5605d5f47928ee" title="Sets the maximum size of the data sieve buffer.">H5Pset_sieve_buf_size()</a> and is retrieved from the file access property list fapl_id.</p> +<dl class="section version"><dt>Version</dt><dd>1.6.0 The <code>size</code> parameter has changed from type <code>hsize_t</code> to <code>size_t</code> </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga6896bea06d7744b56e22347f572f5470"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6896bea06d7744b56e22347f572f5470">◆ </a></span>H5Pget_small_data_block_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_small_data_block_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> * </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieves the current small data block size setting. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Maximum size, in bytes, of the small data block</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6896bea06d7744b56e22347f572f5470" title="Retrieves the current small data block size setting.">H5Pget_small_data_block_size()</a> retrieves the current setting for the size of the small data block.</p> +<p>If the returned value is zero (0), the small data block mechanism has been disabled for the file.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.4 </dd></dl> + +</div> +</div> +<a id="ga2ad4dc5c6e5e4271334a7b1c6ee0777d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga2ad4dc5c6e5e4271334a7b1c6ee0777d">◆ </a></span>H5Pget_vol_cap_flags()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_vol_cap_flags </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">uint64_t * </td> + <td class="paramname"><em>cap_flags</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Query the capability flags for the VOL connector that will be used with this file access property list (FAPL). </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">cap_flags</td><td>Flags that indicate the VOL connector capabilities</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga2ad4dc5c6e5e4271334a7b1c6ee0777d" title="Query the capability flags for the VOL connector that will be used with this file access property lis...">H5Pget_vol_cap_flags()</a> queries the current VOL connector information for a FAPL to retrieve the capability flags for the VOL connector stack, as will be used by a file open or create operation that uses this FAPL.</p> +<dl class="section note"><dt>Note</dt><dd>This routine supports the use of the HDF5_VOL_CONNECTOR environment variable to override the VOL connector set programmatically for the FAPL (with H5Pset_vol).</dd> +<dd> +The H5VL_CAP_FLAG_ASYNC flag can be checked to see if asynchronous operations are supported by the VOL connector stack.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga5f133bdf09ca5a32622688d1ba5cc838"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5f133bdf09ca5a32622688d1ba5cc838">◆ </a></span>H5Pget_vol_id()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_vol_id </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> * </td> + <td class="paramname"><em>vol_id</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns the identifier of the current VOL connector. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">vol_id</td><td>Current VOL connector identifier</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga5f133bdf09ca5a32622688d1ba5cc838" title="Returns the identifier of the current VOL connector.">H5Pget_vol_id()</a> returns the VOL connector identifier <code>vol_id</code> for the file access property list <code>plist_id</code>. This identifier should be closed with <a class="el" href="group___h5_v_l.html#gaa3324ac7aedf9362b498226903288094" title="Closes a VOL connector identifier.">H5VLclose()</a>.</p> +<dl class="section since"><dt>Since</dt><dd>1.12.0 </dd></dl> + +</div> +</div> +<a id="gafc58db23c257cdcf2f0c1c3ae911ab0f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gafc58db23c257cdcf2f0c1c3ae911ab0f">◆ </a></span>H5Pget_vol_info()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pget_vol_info </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void ** </td> + <td class="paramname"><em>vol_info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Returns a copy of the VOL information for a connector. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">vol_info</td><td>The VOL information for a connector</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gafc58db23c257cdcf2f0c1c3ae911ab0f" title="Returns a copy of the VOL information for a connector.">H5Pget_vol_info()</a> returns a copy of the VOL information <code>vol_info</code> for a connector specified by the file access property list <code>plist_id</code>.</p> +<dl class="section since"><dt>Since</dt><dd>1.12.0 </dd></dl> + +</div> +</div> +<a id="gab99d5af749aeb3896fd9e3ceb273677a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gab99d5af749aeb3896fd9e3ceb273677a">◆ </a></span>H5Pset_alignment()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_alignment </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>threshold</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>alignment</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets alignment properties of a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">threshold</td><td>Threshold value. Note that setting the threshold value to 0 (zero) has the effect of a special case, forcing everything to be aligned </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">alignment</td><td>Alignment value</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a" title="Sets alignment properties of a file access property list.">H5Pset_alignment()</a> sets the alignment properties of a file access property list so that any file object greater than or equal in size to <code>threshold</code> bytes will be aligned on an address that is a multiple of <code>alignment</code>. The addresses are relative to the end of the user block; the alignment is calculated by subtracting the user block size from the absolute file address and then adjusting the address to be a multiple of <code>alignment</code>.</p> +<p>Default values for <code>threshold</code> and <code>alignment</code> are one, implying no alignment. Generally the default values will result in the best performance for single-process access to the file. For MPI IO and other parallel systems, choose an alignment that is a multiple of the disk block size.</p> +<p>If the file space handling strategy is set to <a class="el" href="_h5_fpublic_8h.html#a9cc492c4b5c936e48716a8dab3691bccacd625bd864903e71132c9098929f5a0a">H5F_FSPACE_STRATEGY_PAGE</a>, then the alignment set via this routine is ignored. The file space handling strategy is set by <a class="el" href="group___f_c_p_l.html#ga167ff65f392ca3b7f1933b1cee1b9f70" title="Sets the file space handling strategy and persisting free-space values for a file creation property l...">H5Pset_file_space_strategy()</a>.</p> +<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl> + +</div> +</div> +<a id="ga034a5fc54d9b05296555544d8dd9fe89"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga034a5fc54d9b05296555544d8dd9fe89">◆ </a></span>H5Pset_cache()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_cache </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">int </td> + <td class="paramname"><em>mdc_nelmts</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>rdcc_nslots</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>rdcc_nbytes</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">double </td> + <td class="paramname"><em>rdcc_w0</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the raw data chunk cache parameters. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">mdc_nelmts</td><td>No longer used; any value passed is ignored </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">rdcc_nslots</td><td>The number of chunk slots in the raw data chunk cache for this dataset. Increasing this value reduces the number of cache collisions, but slightly increases the memory used. Due to the hashing strategy, this value should ideally be a prime number. As a rule of thumb, this value should be at least 10 times the number of chunks that can fit in <code>rdcc_nbytes</code> bytes. For maximum performance, this value should be set approximately 100 times that number of chunks. The default value is 521. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">rdcc_nbytes</td><td>Total size of the raw data chunk cache in bytes. The default size is 1 MB per dataset. </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">rdcc_w0</td><td>The chunk preemption policy for all datasets. This must be between 0 and 1 inclusive and indicates the weighting according to which chunks which have been fully read or written are penalized when determining which chunks to flush from cache. A value of 0 means fully read or written chunks are treated no differently than other chunks (the preemption is strictly LRU), while a value of 1 means fully read or written chunks are always preempted before other chunks. If your application only reads or writes data once, this can be safely set to 1. Otherwise, this should be set lower depending on how often you re-read or re-write the same data. The default value is 0.75. If the value passed is <a class="el" href="_h5_dpublic_8h.html#a4a01949e0020fa9471811cc8ed271ee7">H5D_CHUNK_CACHE_W0_DEFAULT</a>, then the property will not be set on the dataset access property list, and the parameter will come from the file access property list.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a> sets the number of elements, the total number of bytes, and the preemption policy value for all datasets in a file on the file’s file access property list.</p> +<p>The raw data chunk cache inserts chunks into the cache by first computing a hash value using the address of a chunk and then by using that hash value as the chunk’s index into the table of cached chunks. In other words, the size of this hash table and the number of possible hash values are determined by the <code>rdcc_nslots</code> parameter. If a different chunk in the cache has the same hash value, a collision will occur, which will reduce efficiency. If inserting the chunk into the cache would cause the cache to be too big, then the cache will be pruned according to the <code>rdcc_w0</code> parameter.</p> +<p>The <code>mdc_nelmts</code> parameter is no longer used; any value passed in that parameter will be ignored.</p> +<p><b>Motivation:</b> Setting raw data chunk cache parameters can be done with <a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a>, <a class="el" href="group___d_a_p_l.html#ga104d00442c31714ee073dee518f661f1" title="Sets the raw data chunk cache parameters.">H5Pset_chunk_cache()</a>, or a combination of both. <a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a> is used to adjust the chunk cache parameters for all datasets via a global setting for the file, and <a class="el" href="group___d_a_p_l.html#ga104d00442c31714ee073dee518f661f1" title="Sets the raw data chunk cache parameters.">H5Pset_chunk_cache()</a> is used to adjust the chunk cache parameters for individual datasets. When both are used, parameters set with <a class="el" href="group___d_a_p_l.html#ga104d00442c31714ee073dee518f661f1" title="Sets the raw data chunk cache parameters.">H5Pset_chunk_cache()</a> will override any parameters set with <a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a>.</p> +<dl class="section note"><dt>Note</dt><dd>Optimum chunk cache parameters may vary widely depending on different data layout and access patterns. For datasets with low performance requirements for example, changing the cache settings can save memory.</dd> +<dd> +Note: Raw dataset chunk caching is not currently supported when using the MPI I/O and MPI POSIX file drivers in read/write mode; see <a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff" title="Stores MPI IO communicator information to the file access property list.">H5Pset_fapl_mpio()</a>. When using this file driver, all calls to <a class="el" href="group___h5_d.html#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a> and <a class="el" href="group___h5_d.html#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> will access the disk directly, and <a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a> will have no effect on performance.</dd> +<dd> +Raw dataset chunk caching is supported when these drivers are used in read-only mode.</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.8.0 The use of the <code>mdc_nelmts</code> parameter was discontinued. Metadata cache configuration is managed with <a class="el" href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3" title="Set the initial metadata cache configuration in the indicated File Access Property List to the suppli...">H5Pset_mdc_config()</a> and <a class="el" href="group___f_a_p_l.html#ga3012f7f3310c7d25ada7617896bef1ee" title="Get the current initial metadata cache configuration from the provided file access property list.">H5Pget_mdc_config()</a>. </dd> +<dd> +1.6.0 The <code>rdcc_nbytes</code> and <code>rdcc_nelmts</code> parameters changed from type int to size_t. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl> + +</div> +</div> +<a id="ga6380f9929cf42c8203813f7e72dde35c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6380f9929cf42c8203813f7e72dde35c">◆ </a></span>H5Pset_coll_metadata_write()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_coll_metadata_write </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>is_collective</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets metadata write mode to be collective or independent (default) </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">is_collective</td><td>Boolean value indicating whether metadata writes are collective (<code>>0</code>) or independent (<code>0</code>). <em>Default mode:</em> Independent (<code>0</code>) </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c" title="Sets metadata write mode to be collective or independent (default)">H5Pset_coll_metadata_write()</a> tells the HDF5 library whether to perform metadata writes collectively (1) or independently (0).</p> +<p>If collective access is selected, then on a flush of the metadata cache, all processes will divide the metadata cache entries to be flushed evenly among themselves and issue a single MPI-IO collective write operation. This is the preferred method when the size of the metadata created by the application is large.</p> +<p>If independent access is selected, the library uses the default method for doing metadata I/O either from process zero or independently from each process.</p> +<dl class="section see"><dt>See also</dt><dd><ul> +<li><a class="el" href="group___g_a_p_l.html#ga8792cbe7eeace1382f588ed12a92092a" title="Retrieves metadata read mode setting.">H5Pget_all_coll_metadata_ops()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#gac83ab4e788a5b6e0d578f40ca67d8d00" title="Retrieves metadata write mode setting.">H5Pget_coll_metadata_write()</a> </li> +<li><a class="el" href="group___g_a_p_l.html#ga5bc0b1fc7e1e3961bf0b441e722949eb" title="Sets metadata I/O mode for read operations to be collective or independent (default)">H5Pset_all_coll_metadata_ops()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#ga6380f9929cf42c8203813f7e72dde35c" title="Sets metadata write mode to be collective or independent (default)">H5Pset_coll_metadata_write()</a> </li> +<li><a class="el" href="maybe_metadata_reads.html">Functions with No Access Property List Parameter that May Generate Metadata Reads</a></li> +</ul> +</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga237e300b96222a259896b24cf52405b0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga237e300b96222a259896b24cf52405b0">◆ </a></span>H5Pset_core_write_tracking()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_core_write_tracking </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>is_enabled</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>page_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets write tracking information for core driver, <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a>. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">is_enabled</td><td>Boolean value specifying whether feature is enabled </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">page_size</td><td>Positive integer specifying size, in bytes, of write aggregation pages Value of 1 (one) enables tracking with no paging.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>When a file is created or opened for writing using the core virtual file driver (VFD) with the backing store option turned on, the core driver can be configured to track changes to the file and write out only the modified bytes.</p> +<p>This write tracking feature is enabled and disabled with <code>is_enabled</code>. The default setting is that write tracking is disabled, or off.</p> +<p>To avoid a large number of small writes, changes can be aggregated into pages of a user-specified size, <code>page_size</code>.</p> +<p>Setting <code>page_size</code> to 1 enables tracking with no page aggregation.</p> +<p>The backing store option is set via the function H5Pset_fapl_core.</p> +<dl class="section attention"><dt>Attention</dt><dd><p class="startdd">This function is only for use with the core VFD and must be used after the call to <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>. It is an error to use this function with any other VFD.</p> +<p class="interdd">It is an error to use this function when the backing store flag has not been set using <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>.</p> +<p class="interdd">This function only applies to the backing store write operation which typically occurs when the file is flushed or closed. This function has no relationship to the increment parameter passed to <a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a>.</p> +<p class="interdd">For optimum performance, the <code>page_size</code> parameter should be a power of two.</p> +<p class="enddd">It is an error to set the page size to 0. </p> +</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.8.14 C function modified in this release to return error if <code>page_size</code> is set to 0 (zero). </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.13 </dd></dl> + +</div> +</div> +<a id="ga8bcce60e23e9d2a019212c63b146502e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8bcce60e23e9d2a019212c63b146502e">◆ </a></span>H5Pset_driver()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_driver </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>driver_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const void * </td> + <td class="paramname"><em>driver_info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets a file driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>Property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_id</td><td>The new driver identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_info</td><td>Optional struct containing driver properties</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga8bcce60e23e9d2a019212c63b146502e" title="Sets a file driver.">H5Pset_driver()</a> sets the file driver, driver_id, for a file access or data transfer property list, <code>plist_id</code>, and supplies an optional struct containing the driver-specific properties, <code>driver_info</code>.</p> +<p>The driver properties will be copied into the property list and the reference count on the driver will be incremented, allowing the caller to close the driver identifier but still use the property list.</p> +<dl class="section version"><dt>Version</dt><dd>1.8.2 Function publicized in this release; previous releases described this function only in the virtual file driver documentation. </dd></dl> + +</div> +</div> +<a id="ga156702db27ece40d21b37be5fe5e8b15"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga156702db27ece40d21b37be5fe5e8b15">◆ </a></span>H5Pset_driver_by_name()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_driver_by_name </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>driver_name</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>driver_config</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets a file driver according to a given driver name. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>Property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_name</td><td>The new driver name </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_config</td><td>Optional string containing driver properties</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga156702db27ece40d21b37be5fe5e8b15" title="Sets a file driver according to a given driver name.">H5Pset_driver_by_name()</a> sets the file driver, by the name driver_name, for a file access or data transfer property list, <code>plist_id</code>, and supplies an optional string containing the driver-specific properties, <code>driver_config</code>. The driver properties string will be copied into the property list.</p> +<p>If the driver specified by <code>driver_name</code> is not currently registered, an attempt will be made to load the driver as a plugin.</p> +<dl class="section version"><dt>Version</dt><dd>1.14.0 Function publicized in this release. </dd></dl> + +</div> +</div> +<a id="gac4426b1d36aa8766fbe2deaf67a18c06"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac4426b1d36aa8766fbe2deaf67a18c06">◆ </a></span>H5Pset_driver_by_value()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_driver_by_value </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_f_dpublic_8h.html#a17ff64731b589ac818c2309d0d0ce8fb">H5FD_class_value_t</a> </td> + <td class="paramname"><em>driver_value</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>driver_config</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets a file driver according to a given driver value (ID). </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>Property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_value</td><td>The new driver value (ID) </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">driver_config</td><td>Optional string containing driver properties</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac4426b1d36aa8766fbe2deaf67a18c06" title="Sets a file driver according to a given driver value (ID).">H5Pset_driver_by_value()</a> sets the file driver, by the value driver_value, for a file access or data transfer property list, <code>plist_id</code>, and supplies an optional string containing the driver-specific properties, <code>driver_config</code>. The driver properties string will be copied into the property list.</p> +<p>If the driver specified by <code>driver_value</code> is not currently registered, an attempt will be made to load the driver as a plugin.</p> +<dl class="section version"><dt>Version</dt><dd>1.14.0 Function publicized in this release. </dd></dl> + +</div> +</div> +<a id="gac21a815e9b133802df625c9f766ef325"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac21a815e9b133802df625c9f766ef325">◆ </a></span>H5Pset_elink_file_cache_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_elink_file_cache_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned </td> + <td class="paramname"><em>efc_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the number of files that can be held open in an external link open file cache. </p> +<dl class="section user"><dt>Motivation</dt><dd><p class="startdd">The <em>external link open file cache</em> holds files open after they have been accessed via an external link. This cache reduces the number of times such files are opened when external links are accessed repeatedly and can significantly improves performance in certain heavy-use situations and when low-level file opens or closes are expensive.</p> +<p class="enddd"><a class="el" href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325" title="Sets the number of files that can be held open in an external link open file cache.">H5Pset_elink_file_cache_size()</a> sets the number of files that will be held open in an external link open file cache. <a class="el" href="group___f_a_p_l.html#ga4c9bcfff90f48bfefa2c25e551485923" title="Retrieves the size of the external link open file cache.">H5Pget_elink_file_cache_size()</a> retrieves the size of an existing cache; and <a class="el" href="group___h5_f.html#gafcc153d8606829d4401e93305e5246d7" title="Clears the external link open file cache.">H5Fclear_elink_file_cache()</a> clears an existing cache without closing it. </p> +</dd></dl> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">efc_size</td><td>External link open file cache size in number of files <em>Default setting is 0 (zero).</em></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325" title="Sets the number of files that can be held open in an external link open file cache.">H5Pset_elink_file_cache_size()</a> specifies the number of files that will be held open in an external link open file cache.</p> +<p>The default external link open file cache size is 0 (zero), meaning that files accessed via an external link are not held open. Setting the cache size to a positive integer turns on the cache; setting the size back to zero turns it off.</p> +<p>With this property set, files are placed in the external link open file cache cache when they are opened via an external link. Files are then held open until either they are evicted from the cache or the parent file is closed. This property setting can improve performance when external links are repeatedly accessed.</p> +<p>When the cache is full, files will be evicted using a least recently used (LRU) scheme; the file which has gone the longest time without being accessed through the parent file will be evicted and closed if nothing else is holding that file open.</p> +<p>Files opened through external links inherit the parent file’s file access property list by default, and therefore inherit the parent file’s external link open file cache setting.</p> +<p>When child files contain external links of their own, the caches can form a graph of cached external files. Closing the last external reference to such a graph will recursively close all files in the graph, even if cycles are present. </p><dl class="section user"><dt>Example</dt><dd><p class="startdd">The following code sets up an external link open file cache that will hold open up to 8 files reached through external links:</p> +<div class="fragment"><div class="line">status = <a class="code" href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325">H5Pset_elink_file_cache_size</a>(fapl_id, 8);</div> +<div class="ttc" id="agroup___f_a_p_l_html_gac21a815e9b133802df625c9f766ef325"><div class="ttname"><a href="group___f_a_p_l.html#gac21a815e9b133802df625c9f766ef325">H5Pset_elink_file_cache_size</a></div><div class="ttdeci">herr_t H5Pset_elink_file_cache_size(hid_t plist_id, unsigned efc_size)</div><div class="ttdoc">Sets the number of files that can be held open in an external link open file cache.</div></div> +</div><!-- fragment --> </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.7 </dd></dl> + +</div> +</div> +<a id="gaa44cc0e592608e12082dad9305b3c74d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaa44cc0e592608e12082dad9305b3c74d">◆ </a></span>H5Pset_evict_on_close()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_evict_on_close </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>evict_on_close</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Controls the library's behavior of evicting metadata associated with a closed object. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">evict_on_close</td><td>Whether the HDF5 object should be evicted on close</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>The library's metadata cache is fairly conservative about holding on to HDF5 object metadata(object headers, chunk index structures, etc.), which can cause the cache size to grow, resulting in memory pressure on an application or system. When enabled, the "evict on + close" property will cause all metadata for an object to be evicted from the cache as long as metadata is not referenced by any other open object.</p> +<p>This function only applies to file access property lists.</p> +<p>The default library behavior is to not evict on object or file close.</p> +<p>When applied to a file access property list, any subsequently opened object will inherit the "evict on close" property and will have its metadata evicted when the object is closed.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="ga6b24e6daf4816bbfb89b63bab40aa982"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6b24e6daf4816bbfb89b63bab40aa982">◆ </a></span>H5Pset_family_offset()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_family_offset </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>offset</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets offset property for low-level access to a file in a family of files. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Offset in bytes within the HDF5 file</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6b24e6daf4816bbfb89b63bab40aa982" title="Sets offset property for low-level access to a file in a family of files.">H5Pset_family_offset()</a> sets the offset property in the file access property list <code>fapl_id</code> so that the user application can retrieve a file handle for low-level access to a particular member of a family of files. The file handle is retrieved with a separate call to <a class="el" href="group___h5_f.html#gae4020a66fb8da0586e3b74c81ffccea4" title="Returns pointer to the file handle from the virtual file driver.">H5Fget_vfd_handle()</a> (or, in special circumstances, to <a class="el" href="_h5_f_ddevelop_8h.html#a9fcfb5d6708f4c3f5d319b801ac252bc">H5FDget_vfd_handle()</a>; see <a class="el" href="_v_f_l.html">HDF5 Virtual File Layer</a>).</p> +<p>The value of <code>offset</code> is an offset in bytes from the beginning of the HDF5 file, identifying a user-determined location within the HDF5 file. The file handle the user application is seeking is for the specific member-file in the associated family of files to which this offset is mapped.</p> +<p>Use of this function is only appropriate for an HDF5 file written as a family of files with the <code>FAMILY</code> file driver.</p> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="ga6e6628f620a1c58c704129cf07282849"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6e6628f620a1c58c704129cf07282849">◆ </a></span>H5Pset_fapl_core()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_core </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>increment</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>backing_store</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Modifies the file access property list to use the <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">increment</td><td>Size, in bytes, of memory increments </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">backing_store</td><td>Boolean flag indicating whether to write the file contents to disk when the file is closed </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6e6628f620a1c58c704129cf07282849" title="Modifies the file access property list to use the H5FD_CORE driver.">H5Pset_fapl_core()</a> modifies the file access property list to use the <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver.</p> +<p>The <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver enables an application to work with a file in memory, speeding reads and writes as no disk access is made. File contents are stored only in memory until the file is closed. The <code>backing_store</code> parameter determines whether file contents are ever written to disk.</p> +<p><code>increment</code> specifies the increment by which allocated memory is to be increased each time more memory is required.</p> +<p>While using <a class="el" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4" title="Creates an HDF5 file.">H5Fcreate()</a> to create a core file, if the <code>backing_store</code> is set to 1 (TRUE), the file contents are flushed to a file with the same name as this core file when the file is closed or access to the file is terminated in memory.</p> +<p>The application is allowed to open an existing file with <a class="el" href="_h5_f_dcore_8h.html#ae449696f6b86abcd1120beab21fff76a">H5FD_CORE</a> driver. While using <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> to open an existing file, if the <code>backing_store</code> is set to 1 (TRUE) and the <code>flags</code> for <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> is set to <a class="el" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>, any change to the file contents are saved to the file when the file is closed. If <code>backing_store</code> is set to 0 (FALSE) and the <code>flags</code> for <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> is set to <a class="el" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>, any change to the file contents will be lost when the file is closed. If the flags for <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> is set to <a class="el" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>, no change to the file is allowed either in memory or on file.</p> +<dl class="section note"><dt>Note</dt><dd>Currently this driver cannot create or open family or multi files.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga2839252e149484ef30fb214ae7b44ac7"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga2839252e149484ef30fb214ae7b44ac7">◆ </a></span>H5Pset_fapl_direct()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_direct </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>alignment</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>block_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>cbuf_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets up use of the direct I/O driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">alignment</td><td>Required memory alignment boundary </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">block_size</td><td>File system block size </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">cbuf_size</td><td>Copy buffer size </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga2839252e149484ef30fb214ae7b44ac7" title="Sets up use of the direct I/O driver.">H5Pset_fapl_direct()</a> sets the file access property list, <code>fapl_id</code>, to use the direct I/O driver, <a class="el" href="_h5_f_ddirect_8h.html#a99213f218f9ab0c51f9c679228a1e436">H5FD_DIRECT</a>. With this driver, data is written to or read from the file synchronously without being cached by the system.</p> +<p>File systems usually require the data address in memory, the file address, and the size of the data to be aligned. The HDF5 library’s direct I/O driver is able to handle unaligned data, though that will consume some additional memory resources and may slow performance. To get better performance, use the system function <code>posix_memalign</code> to align the data buffer in memory and the HDF5 function <a class="el" href="group___f_a_p_l.html#gab99d5af749aeb3896fd9e3ceb273677a" title="Sets alignment properties of a file access property list.">H5Pset_alignment()</a> to align the data in the file. Be aware, however, that aligned data I/O may cause the HDF5 file to be bigger than the actual data size would otherwise require because the alignment may leave some holes in the file.</p> +<p><code>alignment</code> specifies the required alignment boundary in memory.</p> +<p><code>block_size</code> specifies the file system block size. A value of 0 (zero) means to use HDF5 library’s default value of 4KB.</p> +<p><code>cbuf_size</code> specifies the copy buffer size.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="ga95d19da25f196ce1ace10af00f49ab53"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga95d19da25f196ce1ace10af00f49ab53">◆ </a></span>H5Pset_fapl_family()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_family </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>memb_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>memb_fapl_id</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the file access property list to use the family driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_size</td><td>Size in bytes of each file member </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_fapl_id</td><td>Identifier of file access property list for each family member </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga95d19da25f196ce1ace10af00f49ab53" title="Sets the file access property list to use the family driver.">H5Pset_fapl_family()</a> sets the file access property list identifier, <code>fapl_id</code>, to use the family driver.</p> +<p><code>memb_size</code> is the size in bytes of each file member. This size will be saved in file when the property list <code>fapl_id</code> is used to create a new file. If <code>fapl_id</code> is used to open an existing file, <code>memb_size</code> has to be equal to the original size saved in file. A failure with an error message indicating the correct member size will be returned if <code>memb_size</code> does not match the size saved. If any user does not know the original size, <a class="el" href="_h5_fpublic_8h.html#aeae74ee757cb3e381abf8e3c480c06cc">H5F_FAMILY_DEFAULT</a> can be passed in. The library will retrieve the saved size.</p> +<p><code>memb_fapl_id</code> is the identifier of the file access property list to be used for each family member.</p> +<dl class="section version"><dt>Version</dt><dd>1.8.0 Behavior of the <code>memb_size</code> parameter was changed. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga970d077c8e712a4692f43fa4f38dde14"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga970d077c8e712a4692f43fa4f38dde14">◆ </a></span>H5Pset_fapl_hdfs()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_hdfs </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__hdfs__fapl__t.html">H5FD_hdfs_fapl_t</a> * </td> + <td class="paramname"><em>fa</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000015">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga714340ec9cbb65cb0a819e1d775825f0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga714340ec9cbb65cb0a819e1d775825f0">◆ </a></span>H5Pset_fapl_ioc()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_ioc </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__ioc__config__t.html">H5FD_ioc_config_t</a> * </td> + <td class="paramname"><em>vfd_config</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Modifies the specified File Access Property List to use the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">vfd_config</td><td>Pointer to <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver configuration structure. May be NULL. </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga714340ec9cbb65cb0a819e1d775825f0" title="Modifies the specified File Access Property List to use the H5FD_IOC driver.">H5Pset_fapl_ioc()</a> modifies the File Access Property List to use the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver.</p> +<p>The <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver is a reference implementation of an "I/O concentrator" file driver that works in conjunction with the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver and provides the I/O backend for servicing I/O requests to subfiles.</p> +<p>Typically, an HDF5 application won't need to call this routine directly. The <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver is usually set up as a side effect of an HDF5 application using the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver, but this routine is provided in case the application wishes to manually configure the <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> driver.</p> +<dl class="section note"><dt>Note</dt><dd>The <code>vfd_config</code> parameter may be NULL. In this case, the driver will be setup with default settings. Note that in this case, it is assumed the parent <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver was also setup with default settings. If the two drivers differ in configuration settings, application behavior may not be as expected.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga4e03be2fe83ed02b32266a6c81427beb"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga4e03be2fe83ed02b32266a6c81427beb">◆ </a></span>H5Pset_fapl_log()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_log </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>logfile</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned long long </td> + <td class="paramname"><em>flags</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>buf_size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets up the logging virtual file driver (<a class="el" href="_h5_f_dlog_8h.html#a027aaf28f5104c77c4f51ecd29a5f7f4">H5FD_LOG</a>) for use. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">logfile</td><td>Name of the log file </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>Flags specifying the types of logging activity </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">buf_size</td><td>The size of the logging buffers, in bytes (see description) </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga4e03be2fe83ed02b32266a6c81427beb" title="Sets up the logging virtual file driver (H5FD_LOG) for use.">H5Pset_fapl_log()</a> modifies the file access property list to use the logging driver, <a class="el" href="_h5_f_dlog_8h.html#a027aaf28f5104c77c4f51ecd29a5f7f4">H5FD_LOG</a>. The logging virtual file driver (VFD) is a clone of the standard SEC2 (<a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a>) driver with additional facilities for logging VFD metrics and activity to a file.</p> +<p><code>logfile</code> is the name of the file in which the logging entries are to be recorded.</p> +<p>The actions to be logged are specified in the parameter <code>flags</code> using the pre-defined constants described in the following table. Multiple flags can be set through the use of a logical <code>OR</code> contained in parentheses. For example, logging read and write locations would be specified as <code>(H5FD_LOG_LOC_READ|H5FD_LOG_LOC_WRITE)</code>.</p> +<table class="doxtable"> +<caption>Table1: Logging Flags</caption> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a120669aefa2b196e1654adc89ec573d1">H5FD_LOG_LOC_READ</a> </td><td rowspan="3">Track the location and length of every read, write, or seek operation. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a80fe0af18d00636c3f7b98e9d65ffd21">H5FD_LOG_LOC_SEEK</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a7367b1298e0b4c87fa9465dd28827dca">H5FD_LOG_LOC_IO</a> </td><td>Track all I/O locations and lengths. The logical equivalent of the following: <code>(<a class="el" href="_h5_f_dlog_8h.html#a120669aefa2b196e1654adc89ec573d1">H5FD_LOG_LOC_READ</a> | <a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> | <a class="el" href="_h5_f_dlog_8h.html#a80fe0af18d00636c3f7b98e9d65ffd21">H5FD_LOG_LOC_SEEK</a>)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ad6950042cea2cd02909798ef461a9684">H5FD_LOG_FILE_READ</a> </td><td rowspan="2">Track the number of times each byte is read or written. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a3953c5550fec9361e233c3d1aac41144">H5FD_LOG_FILE_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a494058d10b26c3059d499320f78528b3">H5FD_LOG_FILE_IO</a> </td><td>Track the number of times each byte is read and written. The logical equivalent of the following: <code>(<a class="el" href="_h5_f_dlog_8h.html#ad6950042cea2cd02909798ef461a9684">H5FD_LOG_FILE_READ</a> | <a class="el" href="_h5_f_dlog_8h.html#a3953c5550fec9361e233c3d1aac41144">H5FD_LOG_FILE_WRITE</a>)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ad5592d1612b80582c4440cc2352d29a6">H5FD_LOG_FLAVOR</a> </td><td>Track the type, or flavor, of information stored at each byte. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a98f658e5d600b477b458e2d48dc04cfe">H5FD_LOG_NUM_READ</a> </td><td rowspan="4">Track the total number of read, write, seek, or truncate operations that occur. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a4bb9fb65b42da293cb06b108e09b922a">H5FD_LOG_NUM_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a73258d8eba3fa5819869650dbbd31338">H5FD_LOG_NUM_SEEK</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a4c5f66077075477d56ad8424b171cbd9">H5FD_LOG_NUM_TRUNCATE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a73baff79dc4819dc5733aed41a2db676">H5FD_LOG_NUM_IO</a> </td><td>Track the total number of all types of I/O operations. The logical equivalent of the following: <code>(<a class="el" href="_h5_f_dlog_8h.html#a98f658e5d600b477b458e2d48dc04cfe">H5FD_LOG_NUM_READ</a> | <a class="el" href="_h5_f_dlog_8h.html#a4bb9fb65b42da293cb06b108e09b922a">H5FD_LOG_NUM_WRITE</a> | <a class="el" href="_h5_f_dlog_8h.html#a73258d8eba3fa5819869650dbbd31338">H5FD_LOG_NUM_SEEK</a> | <a class="el" href="_h5_f_dlog_8h.html#a4c5f66077075477d56ad8424b171cbd9">H5FD_LOG_NUM_TRUNCATE</a>)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ac253b663d693a3fa154a9f70de382e3e">H5FD_LOG_TIME_OPEN</a> </td><td rowspan="6">Track the time spent in open, stat, read, write, seek, or close operations. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a47fd3387519a8fc710cd0797e76fcef9">H5FD_LOG_TIME_STAT</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ae243e77f6140dd939c7def71c2d9e1e3">H5FD_LOG_TIME_READ</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a7e3f0ecd0d5065d9031e8da9446442d6">H5FD_LOG_TIME_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a1fc445a926ae7cd9af6546166c0af552">H5FD_LOG_TIME_CLOSE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ab2abf6744e67751f6f3236ee6214bfe4">H5FD_LOG_TIME_IO</a> </td><td>Track the time spent in each of the above operations. The logical equivalent of the following: <code>(<a class="el" href="_h5_f_dlog_8h.html#ac253b663d693a3fa154a9f70de382e3e">H5FD_LOG_TIME_OPEN</a> | <a class="el" href="_h5_f_dlog_8h.html#a47fd3387519a8fc710cd0797e76fcef9">H5FD_LOG_TIME_STAT</a> | <a class="el" href="_h5_f_dlog_8h.html#ae243e77f6140dd939c7def71c2d9e1e3">H5FD_LOG_TIME_READ</a> | <a class="el" href="_h5_f_dlog_8h.html#a7e3f0ecd0d5065d9031e8da9446442d6">H5FD_LOG_TIME_WRITE</a> | <a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> | <a class="el" href="_h5_f_dlog_8h.html#a1fc445a926ae7cd9af6546166c0af552">H5FD_LOG_TIME_CLOSE</a>)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#afcf6971d3787ddfe911726db7385f6ac">H5FD_LOG_ALLOC</a> </td><td>Track the allocation of space in the file. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ab3ad7b41fb549b5e8e5cd009b3999113">H5FD_LOG_ALL</a> </td><td>Track everything. The logical equivalent of the following: <code>(<a class="el" href="_h5_f_dlog_8h.html#afcf6971d3787ddfe911726db7385f6ac">H5FD_LOG_ALLOC</a> | <a class="el" href="_h5_f_dlog_8h.html#ab2abf6744e67751f6f3236ee6214bfe4">H5FD_LOG_TIME_IO</a> | <a class="el" href="_h5_f_dlog_8h.html#a73baff79dc4819dc5733aed41a2db676">H5FD_LOG_NUM_IO</a> | <a class="el" href="_h5_f_dlog_8h.html#ad5592d1612b80582c4440cc2352d29a6">H5FD_LOG_FLAVOR</a> | <a class="el" href="_h5_f_dlog_8h.html#a494058d10b26c3059d499320f78528b3">H5FD_LOG_FILE_IO</a> | <a class="el" href="_h5_f_dlog_8h.html#a7367b1298e0b4c87fa9465dd28827dca">H5FD_LOG_LOC_IO</a>)</code> </td></tr> +</table> +<p>The logging driver can track the number of times each byte in the file is read from or written to (using <a class="el" href="_h5_f_dlog_8h.html#ad6950042cea2cd02909798ef461a9684">H5FD_LOG_FILE_READ</a> and <a class="el" href="_h5_f_dlog_8h.html#a3953c5550fec9361e233c3d1aac41144">H5FD_LOG_FILE_WRITE</a>) and what kind of data is at that location (e.g., metadata, raw data; using <a class="el" href="_h5_f_dlog_8h.html#ad5592d1612b80582c4440cc2352d29a6">H5FD_LOG_FLAVOR</a>). This information is tracked in internal buffers of size buf_size, which must be at least the maximum size in bytes of the file to be logged while the log driver is in use.<br /> +One buffer of size buf_size will be created for each of <a class="el" href="_h5_f_dlog_8h.html#ad6950042cea2cd02909798ef461a9684">H5FD_LOG_FILE_READ</a>, <a class="el" href="_h5_f_dlog_8h.html#a3953c5550fec9361e233c3d1aac41144">H5FD_LOG_FILE_WRITE</a> and <a class="el" href="_h5_f_dlog_8h.html#ad5592d1612b80582c4440cc2352d29a6">H5FD_LOG_FLAVOR</a> when those flags are set; these buffers will not grow as the file increases in size.</p> +<dl class="section user"><dt>Output:</dt><dd>This section describes the logging driver (LOG VFD) output.<br /> +The table, immediately below, describes output of the various logging driver flags and function calls. A list of valid flavor values, describing the type of data stored, follows the table. <table class="doxtable"> +<caption>Table2: Logging Output</caption> +<tr> +<th>Flag</th><th>VFD Call</th><th>Output and Comments </th></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a120669aefa2b196e1654adc89ec573d1">H5FD_LOG_LOC_READ</a> </td><td>Read </td><td><code>%10a-%10a (%10Zu bytes) (s) Read</code><br /> +<br /> +Start position<br /> +End position<br /> +Number of bytes<br /> +Flavor of read<br /> +<br /> +Adds <code>(%f s)</code> and seek time if <a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> is also set. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a120669aefa2b196e1654adc89ec573d1">H5FD_LOG_LOC_READ</a> </td><td>Read Error </td><td><code>Error! Reading: %10a-%10a (%10Zu bytes)</code><br /> +<br /> +Same parameters as non-error entry. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> </td><td>Write </td><td><code>%10a-%10a (%10Zu bytes) (s) Written</code><br /> +<br /> +Start position<br /> +End position<br /> +Number of bytes<br /> +Flavor of write<br /> +<br /> +Adds <code>(%f s)</code> and seek time if <a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> is also set. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> </td><td>Write Error </td><td><code>Error! Writing: %10a-%10a (%10Zu bytes)</code><br /> +<br /> +Same parameters as non-error entry. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a80fe0af18d00636c3f7b98e9d65ffd21">H5FD_LOG_LOC_SEEK</a> </td><td>Read, Write </td><td><code>Seek: From %10a-%10a</code><br /> +<br /> +Start position<br /> +End position<br /> +<br /> +Adds <code>(%f s)</code> and seek time if <a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> is also set. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ad6950042cea2cd02909798ef461a9684">H5FD_LOG_FILE_READ</a> </td><td>Close </td><td>Begins with:<br /> +Dumping read I/O information<br /> +<br /> +Then, for each range of identical values, there is this line:<br /> +<code>Addr %10-%10 (%10lu bytes) read from %3d times</code><br /> +<br /> +Start address<br /> +End address<br /> +Number of bytes<br /> +Number of times read<br /> +<br /> +Note: The data buffer is scanned and each range of identical values gets one entry in the log file to save space and make it easier to read. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a3953c5550fec9361e233c3d1aac41144">H5FD_LOG_FILE_WRITE</a> </td><td>Close </td><td>Begins with:<br /> +Dumping read I/O information<br /> +<br /> +Then, for each range of identical values, there is this line:<br /> +<code>Addr %10-%10 (%10lu bytes) written to %3d times</code><br /> +<br /> +Start address<br /> +End address<br /> +Number of bytes<br /> +Number of times written<br /> +<br /> +Note: The data buffer is scanned and each range of identical values gets one entry in the log file to save space and make it easier to read. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ad5592d1612b80582c4440cc2352d29a6">H5FD_LOG_FLAVOR</a> </td><td>Close </td><td>Begins with:<br /> +Dumping I/O flavor information<br /> +<br /> +Then, for each range of identical values, there is this line:<br /> +<code>Addr %10-%10 (%10lu bytes) flavor is s</code><br /> +<br /> +Start address<br /> +End address<br /> +Number of bytes<br /> +Flavor<br /> +<br /> +Note: The data buffer is scanned and each range of identical values gets one entry in the log file to save space and make it easier to read. </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a98f658e5d600b477b458e2d48dc04cfe">H5FD_LOG_NUM_READ</a> </td><td>Close </td><td>Total number of read operations: <code>%11u</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a4bb9fb65b42da293cb06b108e09b922a">H5FD_LOG_NUM_WRITE</a> </td><td>Close </td><td>Total number of write operations: <code>%11u</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a73258d8eba3fa5819869650dbbd31338">H5FD_LOG_NUM_SEEK</a> </td><td>Close </td><td>Total number of seek operations: <code>%11u</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a4c5f66077075477d56ad8424b171cbd9">H5FD_LOG_NUM_TRUNCATE</a> </td><td>Close </td><td>Total number of truncate operations: <code>%11u</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ac253b663d693a3fa154a9f70de382e3e">H5FD_LOG_TIME_OPEN</a> </td><td>Open </td><td>Open took: <code>(%f s)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#ae243e77f6140dd939c7def71c2d9e1e3">H5FD_LOG_TIME_READ</a> </td><td>Close, Read </td><td>Total time in read operations: <code>%f s</code><br /> +<br /> +See also: <a class="el" href="_h5_f_dlog_8h.html#a120669aefa2b196e1654adc89ec573d1">H5FD_LOG_LOC_READ</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a7e3f0ecd0d5065d9031e8da9446442d6">H5FD_LOG_TIME_WRITE</a> </td><td>Close, Write </td><td>Total time in write operations: <code>%f s</code><br /> +<br /> +See also: <a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> </td><td>Close, Read, Write </td><td>Total time in write operations: <code>%f s</code><br /> +<br /> +See also: <a class="el" href="_h5_f_dlog_8h.html#a80fe0af18d00636c3f7b98e9d65ffd21">H5FD_LOG_LOC_SEEK</a> or <a class="el" href="_h5_f_dlog_8h.html#aad9b1373eda57a82cf4e5d671e1840c1">H5FD_LOG_LOC_WRITE</a> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a1fc445a926ae7cd9af6546166c0af552">H5FD_LOG_TIME_CLOSE</a> </td><td>Close </td><td>Close took: <code>(%f s)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#a47fd3387519a8fc710cd0797e76fcef9">H5FD_LOG_TIME_STAT</a> </td><td>Open </td><td>Stat took: <code>(%f s)</code> </td></tr> +<tr> +<td><a class="el" href="_h5_f_dlog_8h.html#afcf6971d3787ddfe911726db7385f6ac">H5FD_LOG_ALLOC</a> </td><td>Alloc </td><td><code>%10-%10 (%10Hu bytes) (%s) Allocated</code><br /> +<br /> +Start of address space<br /> +End of address space<br /> +Total size allocation<br /> +Flavor of allocation </td></tr> +</table> +</dd></dl> +<dl class="section user"><dt>Flavors:</dt><dd>The <em>flavor</em> describes the type of stored information. The following table lists the flavors that appear in log output and briefly describes each. These terms are provided here to aid in the construction of log message parsers; a full description is beyond the scope of this document. <table class="doxtable"> +<caption>Table3: Flavors of logged data</caption> +<tr> +<th>Flavor</th><th>Description </th></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a06b02f5b50dcf7e78a94acada33979bb">H5FD_MEM_NOLIST</a> </td><td>Error value </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a137331d00cf5b0c84ef7dfa725429f90">H5FD_MEM_DEFAULT</a> </td><td>Value not yet set.<br /> + May also be a datatype set in a larger allocation that will be suballocated by the library. </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a> </td><td>Superblock data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a29b8528e16990fbe265682559b917fa3">H5FD_MEM_BTREE</a> </td><td>B-tree data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a> </td><td>Raw data (for example, contents of a dataset) </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a020d6245f874e8262058c3278fefe58e">H5FD_MEM_GHEAP</a> </td><td>Global heap data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae7536174d3ae2a842a71d6c192b43a13">H5FD_MEM_LHEAP</a> </td><td>Local heap data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a4337f7056fb57717e82fa1081f496d75">H5FD_MEM_OHDR</a> </td><td>Object header data </td></tr> +</table> +</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.8.7 The flags parameter has been changed from <code>unsigned int</code> to <code>unsigned long long</code>. The implementation of the <a class="el" href="_h5_f_dlog_8h.html#ac253b663d693a3fa154a9f70de382e3e">H5FD_LOG_TIME_OPEN</a>, <a class="el" href="_h5_f_dlog_8h.html#ae243e77f6140dd939c7def71c2d9e1e3">H5FD_LOG_TIME_READ</a>, <a class="el" href="_h5_f_dlog_8h.html#a7e3f0ecd0d5065d9031e8da9446442d6">H5FD_LOG_TIME_WRITE</a>, and <a class="el" href="_h5_f_dlog_8h.html#a96b366d078d5b93cd5a3b5c25ff3811f">H5FD_LOG_TIME_SEEK</a> flags has been finished. New flags were added: <a class="el" href="_h5_f_dlog_8h.html#a4c5f66077075477d56ad8424b171cbd9">H5FD_LOG_NUM_TRUNCATE</a> and <a class="el" href="_h5_f_dlog_8h.html#a47fd3387519a8fc710cd0797e76fcef9">H5FD_LOG_TIME_STAT</a>. </dd> +<dd> +1.6.0 The <code>verbosity</code> parameter has been removed. Two new parameters have been added: <code>flags</code> of type <code>unsigned</code> and <code>buf_size</code> of type <code>size_t</code>. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga8491676811ccc7ba582e30fb63da6563"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8491676811ccc7ba582e30fb63da6563">◆ </a></span>H5Pset_fapl_mirror()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_mirror </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__mirror__fapl__t.html">H5FD_mirror_fapl_t</a> * </td> + <td class="paramname"><em>fa</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000017">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="gaa0204810c1fea1667d62cf7c176416ff"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaa0204810c1fea1667d62cf7c176416ff">◆ </a></span>H5Pset_fapl_mpio()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_mpio </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Comm </td> + <td class="paramname"><em>comm</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Info </td> + <td class="paramname"><em>info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Stores MPI IO communicator information to the file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">comm</td><td>MPI-2 communicator </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>MPI-2 info object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff" title="Stores MPI IO communicator information to the file access property list.">H5Pset_fapl_mpio()</a> stores the user-supplied MPI IO parameters <code>comm</code>, for communicator, and <code>info</code>, for information, in the file access property list <code>fapl_id</code>. That property list can then be used to create and/or open a file.</p> +<p><a class="el" href="group___f_a_p_l.html#gaa0204810c1fea1667d62cf7c176416ff" title="Stores MPI IO communicator information to the file access property list.">H5Pset_fapl_mpio()</a> is available only in the parallel HDF5 library and is not a collective function.</p> +<p><code>comm</code> is the MPI communicator to be used for file open, as defined in <code>MPI_File_open</code> of MPI-2. This function makes a duplicate of the communicator, so modifications to <code>comm</code> after this function call returns have no effect on the file access property list.</p> +<p><code>info</code> is the MPI Info object to be used for file open, as defined in MPI_File_open() of MPI-2. This function makes a duplicate copy of the Info object, so modifications to the Info object after this function call returns will have no effect on the file access property list.</p> +<p>If the file access property list already contains previously-set communicator and Info values, those values will be replaced and the old communicator and Info object will be freed.</p> +<dl class="section note"><dt>Note</dt><dd>Raw dataset chunk caching is not currently supported when using this file driver in read/write mode. All calls to <a class="el" href="group___h5_d.html#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a> and <a class="el" href="group___h5_d.html#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> will access the disk directly, and <a class="el" href="group___f_a_p_l.html#ga034a5fc54d9b05296555544d8dd9fe89" title="Sets the raw data chunk cache parameters.">H5Pset_cache()</a> and <a class="el" href="group___d_a_p_l.html#ga104d00442c31714ee073dee518f661f1" title="Sets the raw data chunk cache parameters.">H5Pset_chunk_cache()</a> will have no effect on performance.<br /> + Raw dataset chunk caching is supported when this driver is used in read-only mode.</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.4.5 Handling of the MPI Communicator and Info object changed at this release. A duplicate of each of these is now stored in the property list instead of pointers to each. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga296bd22cc1e462351f8f0a00a46baf58"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga296bd22cc1e462351f8f0a00a46baf58">◆ </a></span>H5Pset_fapl_multi()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_multi </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> * </td> + <td class="paramname"><em>memb_map</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> * </td> + <td class="paramname"><em>memb_fapl</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char *const * </td> + <td class="paramname"><em>memb_name</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> * </td> + <td class="paramname"><em>memb_addr</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>relax</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets up use of the multi-file driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_map</td><td>Maps memory usage types to other memory usage types </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_fapl</td><td>Property list for each memory usage type </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_name</td><td>Name generator for names of member files </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">memb_addr</td><td>The offsets within the virtual address space, from 0 (zero) to <a class="el" href="_h5public_8h.html#a49742d33813ee38ef58eca9fbeda6b86">HADDR_MAX</a>, at which each type of data storage begins </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">relax</td><td>Allows read-only access to incomplete file sets when <code>TRUE</code> </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58" title="Sets up use of the multi-file driver.">H5Pset_fapl_multi()</a> sets the file access property list <code>fapl_id</code> to use the multi-file driver.</p> +<p>The multi-file driver enables different types of HDF5 data and metadata to be written to separate files. These files are viewed by the HDF5 library and the application as a single virtual HDF5 file with a single HDF5 file address space. The types of data that can be broken out into separate files include raw data, the superblock, B-tree data, global heap data, local heap data, and object headers. At the programmer's discretion, two or more types of data can be written to the same file while other types of data are written to separate files.</p> +<p>The array <code>memb_map</code> maps memory usage types to other memory usage types and is the mechanism that allows the caller to specify how many files are created. The array contains <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a> entries, which are either the value <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a137331d00cf5b0c84ef7dfa725429f90">H5FD_MEM_DEFAULT</a> or a memory usage type. The number of unique values determines the number of files that are opened.</p> +<p>The array <code>memb_fapl</code> contains a property list for each memory usage type that will be associated with a file.</p> +<p>The array <code>memb_name</code> should be a name generator (a <code>printf</code>-style format with a <code>s</code> which will be replaced with the name passed to <a class="el" href="_h5_f_ddevelop_8h.html#adc1c79631e8d73baa19bf488549dabb1">H5FDopen()</a>, usually from <a class="el" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4" title="Creates an HDF5 file.">H5Fcreate()</a> or <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a>).</p> +<p>The array <code>memb_addr</code> specifies the offsets within the virtual address space, from 0 (zero) to <a class="el" href="_h5public_8h.html#a49742d33813ee38ef58eca9fbeda6b86">HADDR_MAX</a>, at which each type of data storage begins.</p> +<p>If <code>relax</code> is set to 1 (TRUE), then opening an existing file for read-only access will not fail if some file members are missing. This allows a file to be accessed in a limited sense if just the meta data is available.</p> +<p>Default values for each of the optional arguments are as follows: </p><table class="doxtable"> +<tr> +<td><code>memb_map</code> </td><td>The default member map contains the value <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a137331d00cf5b0c84ef7dfa725429f90">H5FD_MEM_DEFAULT</a> for each element. </td></tr> +<tr> +<td><code>memb_fapl</code> </td><td>The default value is <a class="el" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a> for each element. </td></tr> +<tr> +<td><code>memb_name</code> </td><td>The default string is <code>s-X.h5</code> where <code>X</code> is one of the following letters:<ul> +<li><code>s</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a></li> +<li><code>b</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a29b8528e16990fbe265682559b917fa3">H5FD_MEM_BTREE</a></li> +<li><code>r</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a></li> +<li><code>g</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a020d6245f874e8262058c3278fefe58e">H5FD_MEM_GHEAP</a></li> +<li><code>l</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae7536174d3ae2a842a71d6c192b43a13">H5FD_MEM_LHEAP</a></li> +<li><code>o</code> for <a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a4337f7056fb57717e82fa1081f496d75">H5FD_MEM_OHDR</a> </li> +</ul> +</td></tr> +<tr> +<td><code>memb_addr</code> </td><td>The default setting is that the address space is equally divided among all of the elements:<ul> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a> <code>-> 0 * (HADDR_MAX/6)</code></li> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a29b8528e16990fbe265682559b917fa3">H5FD_MEM_BTREE</a> <code>-> 1 * (HADDR_MAX/6)</code></li> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a> <code>-> 2 * (HADDR_MAX/6)</code></li> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a020d6245f874e8262058c3278fefe58e">H5FD_MEM_GHEAP</a> <code>-> 3 * (HADDR_MAX/6)</code></li> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae7536174d3ae2a842a71d6c192b43a13">H5FD_MEM_LHEAP</a> <code>-> 4 * (HADDR_MAX/6)</code></li> +<li><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a4337f7056fb57717e82fa1081f496d75">H5FD_MEM_OHDR</a> <code>-> 5 * (HADDR_MAX/6)</code> </li> +</ul> +</td></tr> +</table> +<dl class="section user"><dt>Example:</dt><dd>The following code sample sets up a multi-file access property list that partitions data into meta and raw files, each being one-half of the address:<br /> +<div class="fragment"><div class="line"><a class="code" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> mt, memb_map[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a>];</div> +<div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> memb_fapl[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a>];</div> +<div class="line"><span class="keyword">const</span> <span class="keywordtype">char</span> *memb[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a>];</div> +<div class="line"><a class="code" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> memb_addr[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a>];</div> +<div class="line"> </div> +<div class="line"><span class="comment">// The mapping...</span></div> +<div class="line"><span class="keywordflow">for</span> (mt=0; mt<<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a>; mt++) {</div> +<div class="line"> memb_map[mt] = <a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a>;</div> +<div class="line">}</div> +<div class="line">memb_map[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a>] = <a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a>;</div> +<div class="line"> </div> +<div class="line"><span class="comment">// Member information</span></div> +<div class="line">memb_fapl[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a>] = <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>;</div> +<div class="line">memb_name[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a>] = <span class="stringliteral">"%s.meta"</span>;</div> +<div class="line">memb_addr[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a>] = 0;</div> +<div class="line"> </div> +<div class="line">memb_fapl[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a>] = <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>;</div> +<div class="line">memb_name[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a>] = <span class="stringliteral">"%s.raw"</span>;</div> +<div class="line">memb_addr[<a class="code" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a>] = <a class="code" href="_h5public_8h.html#a49742d33813ee38ef58eca9fbeda6b86">HADDR_MAX</a>/2;</div> +<div class="line"> </div> +<div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58">H5Pset_fapl_multi</a>(fapl, memb_map, memb_fapl,</div> +<div class="line"> memb_name, memb_addr, TRUE);</div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_a02887a6f018be1a0ce7358522095578b"><div class="ttname"><a href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a></div><div class="ttdeci">enum H5F_mem_t H5FD_mem_t</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:259</div></div> +<div class="ttc" id="a_h5_fpublic_8h_html_a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566"><div class="ttname"><a href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a3be201777da432df4a8e2c1b618a7566">H5FD_MEM_NTYPES</a></div><div class="ttdeci">@ H5FD_MEM_NTYPES</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:168</div></div> +<div class="ttc" id="a_h5_fpublic_8h_html_a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e"><div class="ttname"><a href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a></div><div class="ttdeci">@ H5FD_MEM_DRAW</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:163</div></div> +<div class="ttc" id="a_h5_fpublic_8h_html_a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce"><div class="ttname"><a href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a></div><div class="ttdeci">@ H5FD_MEM_SUPER</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:161</div></div> +<div class="ttc" id="a_h5public_8h_html_a49742d33813ee38ef58eca9fbeda6b86"><div class="ttname"><a href="_h5public_8h.html#a49742d33813ee38ef58eca9fbeda6b86">HADDR_MAX</a></div><div class="ttdeci">#define HADDR_MAX</div><div class="ttdef"><b>Definition:</b> H5public.h:328</div></div> +<div class="ttc" id="a_h5public_8h_html_a8c86e866f40d7167cf9a1934c72b856f"><div class="ttname"><a href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a></div><div class="ttdeci">uint64_t haddr_t</div><div class="ttdef"><b>Definition:</b> H5public.h:319</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_ga296bd22cc1e462351f8f0a00a46baf58"><div class="ttname"><a href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58">H5Pset_fapl_multi</a></div><div class="ttdeci">H5_DLL herr_t H5Pset_fapl_multi(hid_t fapl_id, const H5FD_mem_t *memb_map, const hid_t *memb_fapl, const char *const *memb_name, const haddr_t *memb_addr, hbool_t relax)</div><div class="ttdoc">Sets up use of the multi-file driver.</div></div> +</div><!-- fragment --></dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.6.3 <code>memb_name</code> parameter type changed to <code>const char* const*</code>. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga4d053c7682e54287e550113972b7dda6"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga4d053c7682e54287e550113972b7dda6">◆ </a></span>H5Pset_fapl_onion()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_onion </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> * </td> + <td class="paramname"><em>fa</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>set the onion info for the file access property list </p> +<hr /> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">fa</td><td>The pointer to the structure <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga4d053c7682e54287e550113972b7dda6" title="set the onion info for the file access property list">H5Pset_fapl_onion()</a> sets the structure <a class="el" href="struct_h5_f_d__onion__fapl__info__t.html">H5FD_onion_fapl_info_t</a> for the file access property list that is set for the onion VFD driver.</p> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="gaad28d8c24f236590193215c5ae7a8f18"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaad28d8c24f236590193215c5ae7a8f18">◆ </a></span>H5Pset_fapl_ros3()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_ros3 </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="struct_h5_f_d__ros3__fapl__t.html">H5FD_ros3_fapl_t</a> * </td> + <td class="paramname"><em>fa</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000019">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga502f1ad38f5143cf281df8282fef26ed"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga502f1ad38f5143cf281df8282fef26ed">◆ </a></span>H5Pset_fapl_split()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_split </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>meta_ext</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>meta_plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>raw_ext</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>raw_plist_id</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Emulates the old split file driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">meta_ext</td><td>Metadata filename extension </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">meta_plist_id</td><td>File access property list identifier for the metadata file </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">raw_ext</td><td>Raw data filename extension </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">raw_plist_id</td><td></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed" title="Emulates the old split file driver.">H5Pset_fapl_split()</a> is a compatibility function that enables the multi-file driver to emulate the split driver from HDF5 Releases 1.0 and 1.2. The split file driver stored metadata and raw data in separate files but provided no mechanism for separating types of metadata.</p> +<p><code>fapl</code> is a file access property list identifier.</p> +<p><code>meta_ext</code> is the filename extension for the metadata file. The extension is appended to the name passed to <a class="el" href="_h5_f_ddevelop_8h.html#adc1c79631e8d73baa19bf488549dabb1">H5FDopen()</a>, usually from <a class="el" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4" title="Creates an HDF5 file.">H5Fcreate()</a> or <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a>, to form the name of the metadata file. If the string <code>s</code> is used in the extension, it works like the name generator as in <a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58" title="Sets up use of the multi-file driver.">H5Pset_fapl_multi()</a>.</p> +<p><code>meta_plist_id</code> is the file access property list identifier for the metadata file.</p> +<p><code>raw_ext</code> is the filename extension for the raw data file. The extension is appended to the name passed to <a class="el" href="_h5_f_ddevelop_8h.html#adc1c79631e8d73baa19bf488549dabb1">H5FDopen()</a>, usually from <a class="el" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4" title="Creates an HDF5 file.">H5Fcreate()</a> or <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a>, to form the name of the raw data file. If the string <code>s</code> is used in the extension, it works like the name generator as in <a class="el" href="group___f_a_p_l.html#ga296bd22cc1e462351f8f0a00a46baf58" title="Sets up use of the multi-file driver.">H5Pset_fapl_multi()</a>.</p> +<p><code>raw_plist_id</code> is the file access property list identifier for the raw data file.</p> +<p>If a user wishes to check to see whether this driver is in use, the user must call <a class="el" href="group___f_a_p_l.html#ga43a733fe9723dd15f5ad7abda909a1b8" title="Returns low-lever driver identifier.">H5Pget_driver()</a> and compare the returned value to the string <a class="el" href="_h5_f_dmulti_8h.html#a754e05ae5e0f2d86f64002b338c0fd5c">H5FD_MULTI</a>. A positive match will confirm that the multi driver is in use; HDF5 provides no mechanism to determine whether it was called as the special case invoked by <a class="el" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed" title="Emulates the old split file driver.">H5Pset_fapl_split()</a>.</p> +<dl class="section user"><dt>Example:</dt><dd><div class="fragment"><div class="line"><span class="comment">// Example 1: Both metadata and raw data files are in the same</span></div> +<div class="line"><span class="comment">// directory. Use Station1-m.h5 and Station1-r.h5 as</span></div> +<div class="line"><span class="comment">// the metadata and raw data files.</span></div> +<div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl, fid;</div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed">H5Pset_fapl_split</a>(fapl, <span class="stringliteral">"-m.h5"</span>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <span class="stringliteral">"-r.h5"</span>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line">fid=<a class="code" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4">H5Fcreate</a>(<span class="stringliteral">"Station1"</span>,<a class="code" href="_h5_fpublic_8h.html#a5a2d6726f9ad8d2bca8df2b817e5ad6a">H5F_ACC_TRUNC</a>,<a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>,fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">// Example 2: metadata and raw data files are in different</span></div> +<div class="line"><span class="comment">// directories. Use PointA-m.h5 and /pfs/PointA-r.h5 as</span></div> +<div class="line"><span class="comment">// the metadata and raw data files.</span></div> +<div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fapl, fid;</div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed">H5Pset_fapl_split</a>(fapl, <span class="stringliteral">"-m.h5"</span>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <span class="stringliteral">"/pfs/%s-r.h5"</span>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line">fid=<a class="code" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4">H5Fcreate</a>(<span class="stringliteral">"PointA"</span>,<a class="code" href="_h5_fpublic_8h.html#a5a2d6726f9ad8d2bca8df2b817e5ad6a">H5F_ACC_TRUNC</a>,<a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>,fapl);</div> +<div class="ttc" id="a_h5_fpublic_8h_html_a5a2d6726f9ad8d2bca8df2b817e5ad6a"><div class="ttname"><a href="_h5_fpublic_8h.html#a5a2d6726f9ad8d2bca8df2b817e5ad6a">H5F_ACC_TRUNC</a></div><div class="ttdeci">#define H5F_ACC_TRUNC</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:50</div></div> +<div class="ttc" id="agroup___f_a_p_l_html_ga502f1ad38f5143cf281df8282fef26ed"><div class="ttname"><a href="group___f_a_p_l.html#ga502f1ad38f5143cf281df8282fef26ed">H5Pset_fapl_split</a></div><div class="ttdeci">H5_DLL herr_t H5Pset_fapl_split(hid_t fapl, const char *meta_ext, hid_t meta_plist_id, const char *raw_ext, hid_t raw_plist_id)</div><div class="ttdoc">Emulates the old split file driver.</div></div> +<div class="ttc" id="agroup___h5_f_html_gae64b51ee9ac0781bc4ccc599d98387f4"><div class="ttname"><a href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4">H5Fcreate</a></div><div class="ttdeci">hid_t H5Fcreate(const char *filename, unsigned flags, hid_t fcpl_id, hid_t fapl_id)</div><div class="ttdoc">Creates an HDF5 file.</div></div> +</div><!-- fragment --></dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga49f386ea235bb48128e54c962c499f07"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga49f386ea235bb48128e54c962c499f07">◆ </a></span>H5Pset_fapl_splitter()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_splitter </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__splitter__vfd__config__t.html">H5FD_splitter_vfd_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000020">Todo:</a></b></dt><dd>Add missing documentation </dd></dl> + +</div> +</div> +<a id="ga77f0643117835e7f7992d573761b5052"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga77f0643117835e7f7992d573761b5052">◆ </a></span>H5Pset_fapl_stdio()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_stdio </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the standard I/O driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga77f0643117835e7f7992d573761b5052" title="Sets the standard I/O driver.">H5Pset_fapl_stdio()</a> modifies the file access property list to use the standard I/O driver, H5FDstdio().</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga65dbddbba216fdd0bdf99b4feaa74db2"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga65dbddbba216fdd0bdf99b4feaa74db2">◆ </a></span>H5Pset_fapl_subfiling()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_subfiling </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const <a class="el" href="struct_h5_f_d__subfiling__config__t.html">H5FD_subfiling_config_t</a> * </td> + <td class="paramname"><em>vfd_config</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Modifies the specified File Access Property List to use the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">vfd_config</td><td>Pointer to <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver configuration structure. May be NULL. </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga65dbddbba216fdd0bdf99b4feaa74db2" title="Modifies the specified File Access Property List to use the H5FD_SUBFILING driver.">H5Pset_fapl_subfiling()</a> modifies the File Access Property List to use the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver.</p> +<p>The <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver is an MPI-based file driver that allows an HDF5 application to distribute a logical HDF5 file across a collection of "subfiles" in equal-sized data segment "stripes". I/O to the logical HDF5 file is then directed to the appropriate "subfile" according to the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> configuration and a system of I/O concentrators, which are MPI ranks operating worker threads.</p> +<p>By allowing a configurable stripe size, number of I/O concentrators and method for selecting MPI ranks as I/O concentrators, the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver aims to enable an HDF5 application to find a middle ground between the single shared file and file-per-process approaches to parallel file I/O for the particular machine the application is running on. In general, the goal is to avoid some of the complexity of the file-per-process approach while also minimizing the locking issues of the single shared file approach on a parallel file system.</p> +<dl class="section note"><dt>Note</dt><dd>Since the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver is an MPI-based file driver, the HDF5 application should ensure that <a class="el" href="group___f_a_p_l.html#ga6daceb4a9e51fca7cb198f964b67baf0" title="Set the MPI communicator and info.">H5Pset_mpi_params()</a> is called before this routine so that the appropriate MPI communicator and info objects will be setup for use by the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> and <a class="el" href="_h5_f_dioc_8h.html#a9d6649a67050fb1101cca3596421b986">H5FD_IOC</a> drivers.</dd> +<dd> +The current architecture of the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver requires that the HDF5 application must have been initialized with MPI_Init_thread() using a value of MPI_THREAD_MULTIPLE for the thread support level.</dd> +<dd> +The <code>vfd_config</code> parameter may be NULL. In this case, the reference implementation I/O concentrator VFD will be used with the default settings of one I/O concentrator per node and a stripe size of 32MiB. Refer to the <a class="el" href="struct_h5_f_d__subfiling__config__t.html" title="Configuration structure for H5Pset_fapl_subfiling() / H5Pget_fapl_subfiling()">H5FD_subfiling_config_t</a> documentation for information about configuration for the <a class="el" href="_h5_f_dsubfiling_8h.html#a070ba7b51cfe718ba4da75b308066a9d">H5FD_SUBFILING</a> driver.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl> + +</div> +</div> +<a id="ga0017f78e0f3de465621fde556f679830"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga0017f78e0f3de465621fde556f679830">◆ </a></span>H5Pset_fapl_windows()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">H5_DLL <a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fapl_windows </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the Windows I/O driver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830" title="Sets the Windows I/O driver.">H5Pset_fapl_windows()</a> sets the default HDF5 Windows I/O driver on Windows systems.</p> +<p>Since the HDF5 library uses this driver, <a class="el" href="_h5_f_dwindows_8h.html#ab5173993ddefd103bfb3d37c2837a9a4">H5FD_WINDOWS</a>, by default on Windows systems, it is not normally necessary for a user application to call <a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830" title="Sets the Windows I/O driver.">H5Pset_fapl_windows()</a>. While it is not recommended, there may be times when a user chooses to set a different HDF5 driver, such as the standard I/O driver (<a class="el" href="_h5_f_dstdio_8h.html#a030a03b96a9f6e46035ce64e25389085">H5FD_STDIO</a>) or the sec2 driver (<a class="el" href="_h5_f_dsec2_8h.html#a15ae1f958e1cf11cb239916d76b10606">H5FD_SEC2</a>), in a Windows application. <a class="el" href="group___f_a_p_l.html#ga0017f78e0f3de465621fde556f679830" title="Sets the Windows I/O driver.">H5Pset_fapl_windows()</a> is provided so that the application can return to the Windows I/O driver when the time comes.</p> +<p>Only the Windows driver is tested on Windows systems; other drivers are used at the application’s and the user’s risk.</p> +<p>Furthermore, the Windows driver is tested and available only on Windows systems; it is not available on non-Windows systems.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="ga60e3567f677fd3ade75b909b636d7b9c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga60e3567f677fd3ade75b909b636d7b9c">◆ </a></span>H5Pset_fclose_degree()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_fclose_degree </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475f">H5F_close_degree_t</a> </td> + <td class="paramname"><em>degree</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the file close degree. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">degree</td><td>Pointer to a location containing the file close degree property, the value of <code>degree</code> </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga60e3567f677fd3ade75b909b636d7b9c" title="Sets the file close degree.">H5Pset_fclose_degree()</a> sets the file close degree property <code>degree</code> in the file access property list <code>fapl_id</code>.</p> +<p>The value of <code>degree</code> determines how aggressively <a class="el" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124" title="Terminates access to an HDF5 file.">H5Fclose()</a> deals with objects within a file that remain open when <a class="el" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124" title="Terminates access to an HDF5 file.">H5Fclose()</a> is called to close that file. <code>degree</code> can have any one of four valid values:</p> +<table class="doxtable"> +<tr> +<th>Degree name </th><th>H5Fclose behavior with no open object in file </th><th>H5Fclose behavior with open object(s) in file </th></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475faea1127311a219b44e4af3cb12609035f">H5F_CLOSE_WEAK</a> </td><td>Actual file is closed. </td><td>Access to file identifier is terminated; actual file close is delayed until all objects in file are closed </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475fa2d0bd1af3f7a3e287b42d773a2c01001">H5F_CLOSE_SEMI</a> </td><td>Actual file is closed. </td><td>Function returns FAILURE </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475fae6af53249bfe320745828497f28b6390">H5F_CLOSE_STRONG</a> </td><td>Actual file is closed. </td><td>All open objects remaining in the file are closed then file is closed </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475fa8f4acef5a05a854c636ce72c3dc244c7">H5F_CLOSE_DEFAULT</a> </td><td>The VFL driver chooses the behavior. Currently, all VFL drivers set this value to <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475faea1127311a219b44e4af3cb12609035f">H5F_CLOSE_WEAK</a>, except for the MPI-I/O driver, which sets it to <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475fa2d0bd1af3f7a3e287b42d773a2c01001">H5F_CLOSE_SEMI</a>. </td><td><p class="starttd"></p> +<p class="endtd"></p> +</td></tr> +</table> +<dl class="section warning"><dt>Warning</dt><dd>If a file is opened multiple times without being closed, each open operation must use the same file close degree setting. For example, if a file is already open with <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475faea1127311a219b44e4af3cb12609035f">H5F_CLOSE_WEAK</a>, an <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> call with <a class="el" href="_h5_fpublic_8h.html#aa85fa00d037d2b0401cf72edf9a6475fae6af53249bfe320745828497f28b6390">H5F_CLOSE_STRONG</a> will fail.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="ga31d0299f6ad287e013b2a02a8ccc1fa2"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga31d0299f6ad287e013b2a02a8ccc1fa2">◆ </a></span>H5Pset_file_image()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_file_image </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void * </td> + <td class="paramname"><em>buf_ptr</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>buf_len</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets an initial file image in a memory buffer. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">buf_ptr</td><td>Pointer to the initial file image, or NULL if no initial file image is desired </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">buf_len</td><td>Size of the supplied buffer, or 0 (zero) if no initial image is desired</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a> allows an application to provide a file image to be used as the initial contents of a file. Calling <a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a>makes a copy of the buffer specified in <code>buf_ptr</code> of size <code>buf_len</code>.</p> +<dl class="section user"><dt>Motivation:</dt><dd><a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a> and other elements of HDF5 are used to load an image of an HDF5 file into system memory and open that image as a regular HDF5 file. An application can then use the file without the overhead of disk I/O.</dd></dl> +<dl class="section user"><dt>Recommended Reading:</dt><dd>This function is part of the file image operations feature set. It is highly recommended to study the guide <a href="https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations"><em>HDF5 File Image Operations</em></a> before using this feature set. See the “See Also” section below for links to other elements of HDF5 file image operations.</dd></dl> +<dl class="section see"><dt>See also</dt><dd><ul> +<li><a class="el" href="group___h5_l_t.html#ga07fcf2af194e87a3e45252544ebe4aa4" title="Opens an HDF5 file image in memory.">H5LTopen_file_image()</a> </li> +<li><a class="el" href="group___h5_f.html#gadc53f4e76b1199cb5d2a8cb7fbb114ad" title="Retrieves a copy of the image of an existing, open file.">H5Fget_file_image()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b" title="Retrieves a copy of the file image designated as the initial content and structure of a file.">H5Pget_file_image()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> </li> +<li><a class="el" href="group___f_a_p_l.html#gae17e38082dfdbadd75c897f1e6a9096e" title="Retrieves callback routines for working with file images.">H5Pget_file_image_callbacks()</a></li> +</ul> +<ul> +<li><a href="https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations">HDF5 File Image Operations</a> in <a href="https://portal.hdfgroup.org/display/HDF5/Advanced+Topics+in+HDF5">Advanced Topics in HDF5</a></li> +</ul> +<ul> +<li>Within <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a>: </li> +<li>Callback <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> </li> +<li>Callback <a class="el" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a></li> +</ul> +</dd></dl> +<dl class="section version"><dt>Version</dt><dd>1.8.13 Fortran subroutine added in this release. </dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.9 </dd></dl> + +</div> +</div> +<a id="ga14ea3598215afd078b964b672b40d63c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga14ea3598215afd078b964b672b40d63c">◆ </a></span>H5Pset_file_image_callbacks()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_file_image_callbacks </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> * </td> + <td class="paramname"><em>callbacks_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the callbacks for working with file images. </p> +<dl class="section note"><dt>Note</dt><dd><b>Motivation:</b> <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> and other elements of HDF5 are used to load an image of an HDF5 file into system memory and open that image as a regular HDF5 file. An application can then use the file without the overhead of disk I/O.<br /> + <b>Recommended Reading:</b> This function is part of the file image operations feature set. It is highly recommended to study the guide <a href="https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations">HDF5 File Image Operations</a> before using this feature set. See the “See Also” section below for links to other elements of HDF5 file image operations.</dd></dl> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in,out]</td><td class="paramname">callbacks_ptr</td><td>Pointer to the instance of the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> structure</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value. <br /> + <b>Failure Modes</b>: Due to interactions between this function and <a class="el" href="group___f_a_p_l.html#ga31d0299f6ad287e013b2a02a8ccc1fa2" title="Sets an initial file image in a memory buffer.">H5Pset_file_image()</a> and <a class="el" href="group___f_a_p_l.html#ga337626cc516d5d1e3303ea6bc350e56b" title="Retrieves a copy of the file image designated as the initial content and structure of a file.">H5Pget_file_image()</a>, <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> will fail if a file image has already been set in the target file access property list, <code>fapl_id</code>.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> sets callback functions for working with file images in memory.</p> +<p><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> allows an application to control the management of file image buffers through user defined callbacks. These callbacks can be used in the management of file image buffers in property lists and with certain file drivers.</p> +<p><a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> must be used before any file image has been set in the file access property list. Once a file image has been set, the function will fail.</p> +<p>The callback routines set up by <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> are invoked when a new file image buffer is allocated, when an existing file image buffer is copied or resized, or when a file image buffer is released from use.</p> +<p>Some file drivers allow the use of user-defined callback functions for allocating, freeing, and copying the driver’s internal buffer, potentially allowing optimizations such as avoiding large <code>malloc</code> and <code>memcpy</code> operations, or to perform detailed logging.</p> +<p>From the perspective of the HDF5 library, the operations of the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#afb936c7647c5704f666d779bbb73b645">image_malloc</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#aa1a0f08fab985cca0f9b871933e97c97">image_memcpy</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a16858b8fdd29678868e3c9294f19d5aa">image_realloc</a>, and <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> callbacks must be identical to those of the corresponding C standard library calls (<code>malloc</code>, <code>memcpy</code>, <code>realloc</code>, and <code>free</code>). While the operations must be identical, the file image callbacks have more parameters. The return values of <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#afb936c7647c5704f666d779bbb73b645">image_malloc</a> and <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a16858b8fdd29678868e3c9294f19d5aa">image_realloc</a> are identical to the return values of <code>malloc</code> and <code>realloc</code>. The return values of <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#afb936c7647c5704f666d779bbb73b645">image_malloc</a> and <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> differ from the return values of <code>memcpy</code> and <code>free</code> in that the return values of <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#aa1a0f08fab985cca0f9b871933e97c97">image_memcpy</a> and <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> can also indicate failure.</p> +<p>The callbacks and their parameters, along with a struct and an <code>ENUM</code> required for their use, are described below.</p> +<p><b>Callback struct and <code>ENUM:</b></code> </p> +<p>The callback functions set up by <a class="el" href="group___f_a_p_l.html#ga14ea3598215afd078b964b672b40d63c" title="Sets the callbacks for working with file images.">H5Pset_file_image_callbacks()</a> use a struct and an <code>ENUM</code> that are defined as follows</p> +<p>The struct <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> serves as a container for the callback functions and a pointer to user-supplied data. The struct is defined as follows: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>{</div> +<div class="line"> <span class="keywordtype">void</span> *(*image_malloc)(<span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <span class="keywordtype">void</span> *(*image_memcpy)(<span class="keywordtype">void</span> *dest, <span class="keyword">const</span> <span class="keywordtype">void</span> *src, <span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op,</div> +<div class="line"> <span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <span class="keywordtype">void</span> *(*image_realloc)(<span class="keywordtype">void</span> *ptr, <span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> (*image_free)(<span class="keywordtype">void</span> *ptr, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <span class="keywordtype">void</span> *(*udata_copy)(<span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> (*udata_free)(<span class="keywordtype">void</span> *udata);</div> +<div class="line"> </div> +<div class="line"> <span class="keywordtype">void</span> *udata;</div> +<div class="line">} <a class="code" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>;</div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dd"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a></div><div class="ttdeci">H5FD_file_image_op_t</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:265</div></div> +<div class="ttc" id="astruct_h5_f_d__file__image__callbacks__t_html"><div class="ttname"><a href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a></div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:301</div></div> +</div><!-- fragment --><p> Elements of the <a class="el" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> are used by the callbacks to invoke certain operations on file images. The ENUM is defined as follows: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">enum</span> {</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda275b53cff617478e11e382e9059353e5">H5FD_FILE_IMAGE_OP_NO_OP</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008ddad3f1a08d78d24f99705bc5fc8a249123">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008ddacb33fad1a4edf0f8e84d79fe026dcccc">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda96e2ba60483056e7723abc467ce247c7">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda17c03c08f4185a5a2c40be82d9795356">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda4938a7bef146b2185c711e7fbb8df2cc">H5FD_FILE_IMAGE_OP_FILE_OPEN</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda5f979f4e4af545e6aba40f9b2af14caf">H5FD_FILE_IMAGE_OP_FILE_RESIZE</a>,</div> +<div class="line"> <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda9dd8cfa5ee60537d396c98e8d0646f65">H5FD_FILE_IMAGE_OP_FILE_CLOSE</a></div> +<div class="line">} <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a>;</div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda17c03c08f4185a5a2c40be82d9795356"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda17c03c08f4185a5a2c40be82d9795356">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:277</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda275b53cff617478e11e382e9059353e5"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda275b53cff617478e11e382e9059353e5">H5FD_FILE_IMAGE_OP_NO_OP</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_NO_OP</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:266</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda4938a7bef146b2185c711e7fbb8df2cc"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda4938a7bef146b2185c711e7fbb8df2cc">H5FD_FILE_IMAGE_OP_FILE_OPEN</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_FILE_OPEN</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:280</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda5f979f4e4af545e6aba40f9b2af14caf"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda5f979f4e4af545e6aba40f9b2af14caf">H5FD_FILE_IMAGE_OP_FILE_RESIZE</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_FILE_RESIZE</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:288</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda96e2ba60483056e7723abc467ce247c7"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda96e2ba60483056e7723abc467ce247c7">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:274</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008dda9dd8cfa5ee60537d396c98e8d0646f65"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dda9dd8cfa5ee60537d396c98e8d0646f65">H5FD_FILE_IMAGE_OP_FILE_CLOSE</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_FILE_CLOSE</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:291</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008ddacb33fad1a4edf0f8e84d79fe026dcccc"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008ddacb33fad1a4edf0f8e84d79fe026dcccc">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:271</div></div> +<div class="ttc" id="a_h5_f_dpublic_8h_html_aa95ee1806ea4db9f035cd53844c008ddad3f1a08d78d24f99705bc5fc8a249123"><div class="ttname"><a href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008ddad3f1a08d78d24f99705bc5fc8a249123">H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET</a></div><div class="ttdeci">@ H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET</div><div class="ttdef"><b>Definition:</b> H5FDpublic.h:267</div></div> +</div><!-- fragment --><p> The elements of the <a class="el" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> are used in the following callbacks:</p> +<ul> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#afb936c7647c5704f666d779bbb73b645">image_malloc</a> callback contains a pointer to a function that must appear to HDF5 to have functionality identical to that of the standard C library <code>malloc()</code> call.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <span class="keywordtype">void</span> *(*image_malloc)(<span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --> <br /> +</li> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#aa1a0f08fab985cca0f9b871933e97c97">image_memcpy</a> callback contains a pointer to a function that must appear to HDF5 to have functionality identical to that of the standard C library <code>memcopy()</code> call, except that it returns a <code>NULL</code> on failure. (The <code>memcpy</code> C Library routine is defined to return the <code>dest</code> parameter in all cases.)</li> +<li>Setting <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#aa1a0f08fab985cca0f9b871933e97c97">image_memcpy</a> to <code>NULL</code> indicates that HDF5 should invoke the standard C library <code>memcpy()</code> routine when copying buffers.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <span class="keywordtype">void</span> *(*image_memcpy)(<span class="keywordtype">void</span> *dest, <span class="keyword">const</span> <span class="keywordtype">void</span> *src, <span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op,</div> +<div class="line"> <span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --> <br /> +</li> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a16858b8fdd29678868e3c9294f19d5aa">image_realloc</a> callback contains a pointer to a function that must appear to HDF5 to have functionality identical to that of the standard C library <code>realloc()</code> call.</li> +<li>Setting <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a16858b8fdd29678868e3c9294f19d5aa">image_realloc</a> to <code>NULL</code> indicates that HDF5 should invoke the standard C library <code>realloc()</code> routine when resizing file image buffers.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <span class="keywordtype">void</span> *(*image_realloc)(<span class="keywordtype">void</span> *ptr, <span class="keywordtype">size_t</span> size, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --> <br /> +</li> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> callback contains a pointer to a function that must appear to HDF5 to have functionality identical to that of the standard C library <code>free()</code> call, except that it will return <code>0</code> (<code>SUCCEED</code>) on success and <code>-1</code> (<code>FAIL</code>) on failure.</li> +<li>Setting <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> to <code>NULL</code> indicates that HDF5 should invoke the standard C library <code>free()</code> routine when releasing file image buffers.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> (*image_free)(<span class="keywordtype">void</span> *ptr, <a class="code" href="_h5_f_dpublic_8h.html#aa95ee1806ea4db9f035cd53844c008dd">H5FD_file_image_op_t</a> file_image_op, <span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --> <br /> +</li> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a3a2f50d45f9f5342a36d14c1ae7d55f0">udata_copy</a> callback contains a pointer to a function that, from the perspective of HDF5, allocates a buffer of suitable size, copies the contents of the supplied <code>udata</code> into the new buffer, and returns the address of the new buffer. The function returns NULL on failure. This function is necessary if a non-NULL <code>udata</code> parameter is supplied, so that property lists containing the image callbacks can be copied. If the <code>udata</code> parameter below is <code>NULL</code>, then this parameter should be <code>NULL</code> as well.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <span class="keywordtype">void</span> *(*udata_copy)(<span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --> <br /> +</li> +<li>The <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a72907de159ae0b35408bbfe75f7c3359">udata_free</a> callback contains a pointer to a function that, from the perspective of HDF5, frees a user data block. This function is necessary if a non-NULL udata parameter is supplied so that property lists containing image callbacks can be discarded without a memory leak. If the udata parameter below is <code>NULL</code>, this parameter should be <code>NULL</code> as well.</li> +<li>Signature in <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a>: <div class="fragment"><div class="line"> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> (*udata_free)(<span class="keywordtype">void</span> *udata);</div> +</div><!-- fragment --></li> +<li><code><b>udata</b></code>, the final field in the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html">H5FD_file_image_callbacks_t</a> struct, provides a pointer to user-defined data. This pointer will be passed to the <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#afb936c7647c5704f666d779bbb73b645">image_malloc</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#aa1a0f08fab985cca0f9b871933e97c97">image_memcpy</a>, <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a16858b8fdd29678868e3c9294f19d5aa">image_realloc</a>, and <a class="el" href="struct_h5_f_d__file__image__callbacks__t.html#a7e81e4662ea07b93e9380f5f78fee890">image_free</a> callbacks. Define udata as <code>NULL</code> if no user-defined data is provided.</li> +</ul> +<dl class="section since"><dt>Since</dt><dd>1.8.9 </dd></dl> + +</div> +</div> +<a id="ga503e9ff6121a67cf53f8b67054ed9391"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga503e9ff6121a67cf53f8b67054ed9391">◆ </a></span>H5Pset_file_locking()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_file_locking </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>use_file_locking</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>ignore_when_disabled</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the file locking property values. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">use_file_locking</td><td>Toggle to specify file locking (or not) </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">ignore_when_disabled</td><td>Toggle to ignore when disabled (or not)</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga503e9ff6121a67cf53f8b67054ed9391" title="Sets the file locking property values.">H5Pset_file_locking()</a> overrides the default file locking flag setting that was set when the library was configured.</p> +<p>This setting can be overridden by the <code>HDF5_USE_FILE_LOCKING</code> environment variable.</p> +<p>File locking is used when creating/opening a file to prevent problematic file accesses.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.7 </dd></dl> + +</div> +</div> +<a id="ga61f01a12d5392ccf1321168f3c28f36f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga61f01a12d5392ccf1321168f3c28f36f">◆ </a></span>H5Pset_gc_references()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_gc_references </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned </td> + <td class="paramname"><em>gc_ref</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets garbage collecting references flag. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">gc_ref</td><td>Flag setting reference garbage collection to on (1) or off (0)</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga61f01a12d5392ccf1321168f3c28f36f" title="Sets garbage collecting references flag.">H5Pset_gc_references()</a> sets the flag for garbage collecting references for the file.</p> +<p>Dataset region references and other reference types use space in an HDF5 file's global heap. If garbage collection is on and the user passes in an uninitialized value in a reference structure, the heap might get corrupted. When garbage collection is off, however, and the user re-uses a reference, the previous heap block will be orphaned and not returned to the free heap space.</p> +<p>When garbage collection is on, the user must initialize the reference structures to 0 or risk heap corruption.</p> +<p>The default value for garbage collecting references is off. </p> + +</div> +</div> +<a id="gacbe1724e7f70cd17ed687417a1d2a910"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gacbe1724e7f70cd17ed687417a1d2a910">◆ </a></span>H5Pset_libver_bounds()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_libver_bounds </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> </td> + <td class="paramname"><em>low</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> </td> + <td class="paramname"><em>high</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Controls the range of library release versions used when creating objects in a file. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">low</td><td>The earliest version of the library that will be used for writing objects </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">high</td><td>The latest version of the library that will be used for writing objects</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gacbe1724e7f70cd17ed687417a1d2a910" title="Controls the range of library release versions used when creating objects in a file.">H5Pset_libver_bounds()</a> controls the range of library release versions that will be used when creating objects in a file. The object format versions are determined indirectly from the library release versions specified in the call.</p> +<p>This property is set in the file access property list specified by the parameter <code>fapl_id</code>.</p> +<p>The parameter <code>low</code> sets the earliest possible format versions that the library will use when creating objects in the file. Note that earliest possible is different from earliest, as some features introduced in library versions later than 1.0.0 resulted in updates to object formats. The parameter <code>high</code> sets the latest format versions that the library will be allowed to use when creating objects in the file.</p> +<p>The parameters <code>low</code> and <code>high</code> must be one of the enumerated values in the <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a> struct, which is defined in <a class="el" href="_h5_fpublic_8h.html">H5Fpublic.h</a>.</p> +<p>The macro <a class="el" href="_h5_fpublic_8h.html#a47d050173da48a2b85c730446f0771c0">H5F_LIBVER_LATEST</a> is aliased to the highest enumerated value in <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a>, indicating that this is currently the latest format available.</p> +<p>The library supports the following five pairs of (<code>low</code>, <code>high</code>) combinations as derived from the values in <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a>:</p> +<table class="doxtable"> +<tr> +<th>Value of <code>low</code> and <code>high</code> </th><th>Result </th></tr> +<tr> +<td><code>low=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2abed98059b4a02d048b1eb3985fba5fa1">H5F_LIBVER_EARLIEST</a></code> <br /> + <code>high=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a></code> </td><td><ul> +<li>The library will create objects with the earliest possible format versions. </li> +<li>The library will allow objects to be created with the latest format versions available to library release 1.8.x. </li> +<li>API calls that create objects or features that are available to versions of the library greater than 1.8.x release will fail. </li> +</ul> +</td></tr> +<tr> +<td><code>low=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2abed98059b4a02d048b1eb3985fba5fa1">H5F_LIBVER_EARLIEST</a></code> <br /> + <code>high=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a33c6cdc401a3a32dbf63d74019fad4b3">H5F_LIBVER_V110</a></code> </td><td><ul> +<li>The library will create objects with the earliest possible format versions. </li> +<li>The library will allow objects to be created with the latest format versions available to library release 1.10.x. Since 1.10.x is also <a class="el" href="_h5_fpublic_8h.html#a47d050173da48a2b85c730446f0771c0">H5F_LIBVER_LATEST</a>, there is no upper limit on the format versions to use. For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created. </li> +<li>This is the library default setting and provides the greatest format compatibility. </li> +</ul> +</td></tr> +<tr> +<td><code>low=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a></code> <br /> + <code>high=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a></code> </td><td><ul> +<li>The library will create objects with the latest format versions available to library release 1.8.x. </li> +<li>API calls that create objects or features that are available to versions of the library greater than 1.8.x release will fail. </li> +<li>Earlier versions of the library may not be able to access objects created with this setting. </li> +</ul> +</td></tr> +<tr> +<td><code>low=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a></code> <br /> + <code>high=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a33c6cdc401a3a32dbf63d74019fad4b3">H5F_LIBVER_V110</a></code> </td><td><ul> +<li>The library will create objects with the latest format versions available to library release 1.8.x. </li> +<li>The library will allow objects to be created with the latest format versions available to library release 1.10.x. Since 1.10.x is also <a class="el" href="_h5_fpublic_8h.html#a47d050173da48a2b85c730446f0771c0">H5F_LIBVER_LATEST</a>, there is no upper limit on the format versions to use. For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created. </li> +<li>Earlier versions of the library may not be able to access objects created with this setting. </li> +</ul> +</td></tr> +<tr> +<td><code>low=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a33c6cdc401a3a32dbf63d74019fad4b3">H5F_LIBVER_V110</a></code> <br /> + <code>high=<a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a33c6cdc401a3a32dbf63d74019fad4b3">H5F_LIBVER_V110</a></code> </td><td><ul> +<li>The library will create objects with the latest format versions available to library release 1.10.x. </li> +<li>The library will allow objects to be created with the latest format versions available to library release 1.10.x. Since 1.10.x is also <a class="el" href="_h5_fpublic_8h.html#a47d050173da48a2b85c730446f0771c0">H5F_LIBVER_LATEST</a>, there is no upper limit on the format versions to use. For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created. </li> +<li>This setting allows users to take advantage of the latest features and performance enhancements in the library. However, objects written with this setting may be accessible to a smaller range of library versions than would be the case if low is set to <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2abed98059b4a02d048b1eb3985fba5fa1">H5F_LIBVER_EARLIEST</a>. </li> +<li>Earlier versions of the library may not be able to access objects created with this setting. </li> +</ul> +</td></tr> +</table> +<dl class="section version"><dt>Version</dt><dd>1.10.2 <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2a434ca8def77a117013577c8cec6af0d8">H5F_LIBVER_V18</a> added to the enumerated defines in <a class="el" href="_h5_fpublic_8h.html#a2d963b599894f684571fbd4d5e8a96a2">H5F_libver_t</a>.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="gaf234199ad4cf9c708f45893f7f9cd4d3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaf234199ad4cf9c708f45893f7f9cd4d3">◆ </a></span>H5Pset_mdc_config()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_mdc_config </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Set the initial metadata cache configuration in the indicated File Access Property List to the supplied value. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">config_ptr</td><td>Pointer to the instance of <code><a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a></code> containing the desired configuration </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>The fields of the <a class="el" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> structure are shown below: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a> {</div> +<div class="line"> <span class="comment">/* general configuration fields: */</span></div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#aad880fc4455c253781e8968f2239d56f">version</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#aab04b3e770d1c2decc03f6fd94b64b17">rpt_fcn_enabled</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a6c03d051d5efb0e64bdca5d0b354a8b1">open_trace_file</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#aced3486ae892a53209b7aae069a34be9">close_trace_file</a>;</div> +<div class="line"> <span class="keywordtype">char</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a92e7d20eb2b7b353961c64558ddac080">trace_file_name</a>[<a class="code" href="_h5_a_cpublic_8h.html#a717f1f3545cfc3d1b2208c96cc0c3bd3">H5AC__MAX_TRACE_FILE_NAME_LEN</a> + 1];</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a3d6e32c7a9bf8f65848c6840e1de8c6e">evictions_enabled</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a707198a337ece01a37dfec6e01275d82">set_initial_size</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a649236e7dd714855a50f122aa5caca9f">initial_size</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#abd805b98f873c1720f34a0ce937838fd">min_clean_fraction</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#af4728438dee601cb2554d9bf18d78a43">max_size</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#af99ca22b80e05fd5b3603806348ab647">min_size</a>;</div> +<div class="line"> <span class="keywordtype">long</span> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac998e51b01e0eef09d9a29c43f97e4bf">epoch_length</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* size increase control fields: */</span></div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#a040d488146ff1ca0a82209e9af3918fa">H5C_cache_incr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#ae825aaf759060239e92170d20eb97d26">incr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a20f323fcb4747fc7228d2d74bb965586">lower_hr_threshold</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac504dff76b24ab9f15536c51aec9fbbb">increment</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a322f2a955e71ab7ede483e991e76f806">apply_max_increment</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#ad5a729f1d611f2780679a35b3524052c">max_increment</a>;</div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#aaaa13ca7756d135b7df6d5a6779ee908">H5C_cache_flash_incr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a0e25a1dc2c695bea335df0e23ed6363c">flash_incr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a77b1812e0407c9122db524462a5c9633">flash_multiple</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a95fb1e03a77ef5c109d0c851416ced55">flash_threshold</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* size decrease control fields: */</span></div> +<div class="line"> <span class="keyword">enum</span> <a class="code" href="_h5_cpublic_8h.html#a4f8534794ad9a977185a5d608c0af04f">H5C_cache_decr_mode</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a5df68196b281c19d8ab7da0788566aec">decr_mode</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a84a5ff4ac69196aa27c14f6f796db596">upper_hr_threshold</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a54007d3f2afb718b437f499a5c8b46d9">decrement</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#ac2c89a735413e4c36d6f463c4890ab42">apply_max_decrement</a>;</div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a75e875a61c9da7f82482d0f6fe6e7152">max_decrement</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a7ac41e345300bdecd9943e855d55b71b">epochs_before_eviction</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__config__t.html#a6c5cff8e8a21230cc7f21859d8d6bd22">apply_empty_reserve</a>;</div> +<div class="line"> <span class="keywordtype">double</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a9c1ae995513b55737aad09e11beff733">empty_reserve</a>;</div> +<div class="line"> </div> +<div class="line"> <span class="comment">/* parallel configuration fields: */</span></div> +<div class="line"> <span class="keywordtype">size_t</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a8e3c2a2d300b7a8f8d3705fc5e59a3c1">dirty_bytes_threshold</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__config__t.html#a83a536128dbb7785b2553c294f33d1fe">metadata_write_strategy</a>;</div> +<div class="line">} <a class="code" href="struct_h5_a_c__cache__config__t.html">H5AC_cache_config_t</a>;</div> +</div><!-- fragment --><p> (Click on a enumerator, field, or type for more information.)</p> +<p><a class="el" href="group___f_a_p_l.html#gaf234199ad4cf9c708f45893f7f9cd4d3" title="Set the initial metadata cache configuration in the indicated File Access Property List to the suppli...">H5Pset_mdc_config()</a> attempts to set the initial metadata cache configuration to the supplied value. It will fail if an invalid configuration is detected. This configuration is used when the file is opened.</p> +<p>See the overview of the metadata cache in the special topics section of the user manual for details on what is being configured. If you have not read and understood that documentation, you really should not be using this API call.</p> +<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl> + +</div> +</div> +<a id="ga65cf9fea33d1324009efc2d5db848434"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga65cf9fea33d1324009efc2d5db848434">◆ </a></span>H5Pset_mdc_image_config()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_mdc_image_config </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> * </td> + <td class="paramname"><em>config_ptr</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the metadata cache image option for a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[out]</td><td class="paramname">config_ptr</td><td>Pointer to metadata cache image configuration values </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434" title="Sets the metadata cache image option for a file access property list.">H5Pset_mdc_image_config()</a> sets the metadata cache image option with configuration values specified by <code>config_ptr</code> for the file access property list specified in <code>plist_id</code>.</p> +<p><a class="el" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> is defined as follows: </p><div class="fragment"><div class="line"> </div> +<div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a> {</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#aad880fc4455c253781e8968f2239d56f">version</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#ad6540e7705dd036e71421880b33ef538">generate_image</a>;</div> +<div class="line"> <a class="code" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#a4e3d7f62b6ed0d946acf335dc314e303">save_resize_status</a>;</div> +<div class="line"> <span class="keywordtype">int</span> <a class="code" href="struct_h5_a_c__cache__image__config__t.html#aec92d40c46311615f2155573aca27ec4">entry_ageout</a>;</div> +<div class="line">} <a class="code" href="struct_h5_a_c__cache__image__config__t.html">H5AC_cache_image_config_t</a>;</div> +<div class="line"> </div> +</div><!-- fragment --><p> (Click on a enumerator, field, or type for more information.)</p> +<dl class="section user"><dt>Limitations: While it is an obvious error to request a cache image when</dt><dd>opening the file read only, it is not in general possible to test for this error in the <a class="el" href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434" title="Sets the metadata cache image option for a file access property list.">H5Pset_mdc_image_config()</a> call. Rather than fail the subsequent file open, the library silently ignores the file image request in this case.<br /> + It is also an error to request a cache image on a file that does not support superblock extension messages (i.e. a superblock version less than 2). As above, it is not always possible to detect this error in the <a class="el" href="group___f_a_p_l.html#ga65cf9fea33d1324009efc2d5db848434" title="Sets the metadata cache image option for a file access property list.">H5Pset_mdc_image_config()</a> call, and thus the request for a cache image will fail silently in this case as well.<br /> + Creation of cache images is currently disabled in parallel – as above, any request for a cache image in this context will fail silently.<br /> + Files with cache images may be read in parallel applications, but note that the load of the cache image is a collective operation triggered by the first operation that accesses metadata after file open (or, if persistent free space managers are enabled, on the first allocation or deallocation of file space, or read of file space manager status, whichever comes first). Thus the parallel process may deadlock if any process does not participate in this access.<br /> + In long sequences of file closes and opens, infrequently accessed metadata can accumulate in the cache image to the point where the cost of storing and restoring this metadata exceeds the benefit of retaining frequently used metadata in the cache image. When implemented, the <a class="el" href="struct_h5_a_c__cache__image__config__t.html#aec92d40c46311615f2155573aca27ec4">H5AC_cache_image_config_t::entry_ageout</a> should address this problem. In the interim, not requesting a cache image every n file close/open cycles may be an acceptable work around. The choice of <code>n</code> will be driven by application behavior, but <code>n = 10</code> seems a good starting point.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="ga4d7206c5679d7243410058eceae59b2c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga4d7206c5679d7243410058eceae59b2c">◆ </a></span>H5Pset_mdc_log_options()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_mdc_log_options </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>is_enabled</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>location</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#ad470b00eccd2115c707c02de5fa1120d">hbool_t</a> </td> + <td class="paramname"><em>start_on_access</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets metadata cache logging options. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">is_enabled</td><td>Whether logging is enabled </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">location</td><td>Location of log in UTF-8/ASCII (file path/name) (On Windows, this must be ASCII) </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">start_on_access</td><td>Whether the logging will begin as soon as the file is opened or created</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p>The metadata cache is a central part of the HDF5 library through which all file metadata reads and writes take place. File metadata is normally invisible to the user and is used by the library for purposes such as locating and indexing data. File metadata should not be confused with user metadata, which consists of attributes created by users and attached to HDF5 objects such as datasets via H5A API calls.</p> +<p>Due to the complexity of the cache, a trace/logging feature has been created that can be used by HDF5 developers for debugging and performance analysis. The functions that control this functionality will normally be of use to a very limited number of developers outside of The HDF Group. The functions have been documented to help users create logs that can be sent with bug reports.</p> +<p>Control of the log functionality is straightforward. Logging is enabled via the <a class="el" href="group___f_a_p_l.html#ga4d7206c5679d7243410058eceae59b2c" title="Sets metadata cache logging options.">H5Pset_mdc_log_options()</a> function, which will modify the file access property list used to open or create a file. This function has a flag that determines whether logging begins at file open or starts in a paused state. Log messages can then be controlled via the <a class="el" href="group___m_d_c.html#ga378fb5863071278b47070cf205f53e67" title="Starts logging metadata cache events if logging was previously enabled.">H5Fstart_mdc_logging()</a> and <a class="el" href="group___m_d_c.html#ga78627b23010f82002b837f4d312bf234" title="Stops logging metadata cache events if logging was previously enabled and is currently ongoing.">H5Fstop_mdc_logging()</a> function.</p> +<p><a class="el" href="group___f_a_p_l.html#gaa3a1ca6e294cc5074933239cc3d0e4a3" title="Gets metadata cache logging options.">H5Pget_mdc_log_options()</a> can be used to examine a file access property list, and <a class="el" href="group___m_d_c.html#ga998ebdc7b5190cf3d0fdf2fbe71e9780" title="Gets the current metadata cache logging status.">H5Fget_mdc_logging_status()</a> will return the current state of the logging flags.</p> +<p>The log format is described in <a href="https://portal.hdfgroup.org/display/HDF5/Fine-tuning+the+Metadata+Cache"><em>Metadata Cache Logging</em></a>.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga8822e3dedc8e1414f20871a87d533cb1"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8822e3dedc8e1414f20871a87d533cb1">◆ </a></span>H5Pset_meta_block_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_meta_block_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the minimum metadata block size. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Minimum size, in bytes, of metadata block allocations</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1" title="Sets the minimum metadata block size.">H5Pset_meta_block_size()</a> sets the minimum size, in bytes, of metadata block allocations when <a class="el" href="_h5_f_dpublic_8h.html#a679a56f7b84eba3ce4cf116666997e97">H5FD_FEAT_AGGREGATE_METADATA</a> is set by a VFL driver.</p> +<p>Each raw metadata block is initially allocated to be of the given size. Specific metadata objects (e.g., object headers, local heaps, B-trees) are then sub-allocated from this block.</p> +<p>The default setting is 2048 bytes, meaning that the library will attempt to aggregate metadata in at least 2K blocks in the file. Setting the value to zero (<code>0</code>) with this function will turn off metadata aggregation, even if the VFL driver attempts to use the metadata aggregation strategy.</p> +<p>Metadata aggregation reduces the number of small data objects in the file that would otherwise be required for metadata. The aggregated block of metadata is usually written in a single write action and always in a contiguous block, potentially significantly improving library and application performance.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="gab827cef16ec569c87cec94a8b3f350c5"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gab827cef16ec569c87cec94a8b3f350c5">◆ </a></span>H5Pset_metadata_read_attempts()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_metadata_read_attempts </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned </td> + <td class="paramname"><em>attempts</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the number of read attempts in a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">attempts</td><td>The number of read attempts. Must be a value greater than <code>0</code></td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd> +<dd> +Failure Modes:<ul> +<li>When the user sets the number of read attempts to <code>0</code>.</li> +<li>When the input property list is not a file access property list.</li> +<li><p class="startli">When the library is unable to set the number of read attempts in the file access property list.</p> +<p class="startli"><a class="el" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5" title="Sets the number of read attempts in a file access property list.">H5Pset_metadata_read_attempts()</a> sets the number of reads that the library will try when reading checksummed metadata in an HDF5 file opened with SWMR access. When reading such metadata, the library will compare the checksum computed for the metadata just read with the checksum stored within the piece of checksum. When performing SWMR operations on a file, the checksum check might fail when the library reads data on a system that is not atomic. To remedy such situations, the library will repeatedly read the piece of metadata until the check passes or finally fails the read when the allowed number of attempts is reached.</p> +<p class="startli">The number of read attempts used by the library will depend on how the file is opened and whether the user sets the number of read attempts via this routine:</p><ul> +<li>For a file opened with SWMR access:<ul> +<li>If the user sets the number of attempts to <code>N</code>, the library will use <code>N</code>.</li> +<li>If the user does not set the number of attempts, the library will use the default for SWMR access (<code>100</code>).</li> +</ul> +</li> +<li>For a file opened with non-SWMR access, the library will always use the default for non-SWMR access (<code>1</code>). The value set via this routine does not have any effect during non-SWMR access.</li> +</ul> +</li> +</ul> +</dd></dl> +<p><b>Example:</b> The first example illustrates the case in setting the number of read attempts for a file opened with SWMR access.</p> +<div class="fragment"><div class="line"><span class="comment">/* Create a copy of file access property list */</span></div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set the # of read attempts */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a>(fapl, 20);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file with SWMR access and the non-default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, (<a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a> | <a class="code" href="_h5_fpublic_8h.html#a22b12837bca0dba6689096a370d73402">H5F_ACC_SWMR_READ</a>), fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 20.</span></div> +<div class="line"><span class="comment"> * The library will use 20 as the number of read attempts</span></div> +<div class="line"><span class="comment"> * when reading checksummed metadata in the file</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property list */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(fapl);</div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +</div><!-- fragment --><p> <b>Example:</b> The second example illustrates the case in setting the number of read attempts for a file opened with non-SWMR access. The value set in the file access property list does not have any effect.</p> +<div class="fragment"><div class="line"><span class="comment">/* Create a copy of file access property list */</span></div> +<div class="line">fapl = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set the # of read attempts */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab827cef16ec569c87cec94a8b3f350c5">H5Pset_metadata_read_attempts</a>(fapl, 20);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file with SWMR access and the non-default file access property list */</span></div> +<div class="line">fid = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, <a class="code" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>, fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Get the file's file access property list */</span></div> +<div class="line">file_fapl = <a class="code" href="group___h5_f.html#ga359585c49f82f5199178777b39e780f4">H5Fget_access_plist</a>(fid);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Retrieve the # of read attempts from the file's file access property list */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#ga670948d56435920f1e1c2e88b823935e">H5Pget_metadata_read_attempts</a>(file_fapl, &attempts);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/*</span></div> +<div class="line"><span class="comment"> * The value returned in "attempts" will be 1 (default for non-SWMR access).</span></div> +<div class="line"><span class="comment"> * The library will use 1 as the number of read attempts</span></div> +<div class="line"><span class="comment"> * when reading checksummed metadata in the file</span></div> +<div class="line"><span class="comment"> */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the property lists */</span></div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(fapl);</div> +<div class="line"><a class="code" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(file_fapl);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Close the file */</span></div> +<div class="line"><a class="code" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(fid);</div> +</div><!-- fragment --> <dl class="section note"><dt>Note</dt><dd><b>Motivation:</b> On a system that is not atomic, the library might possibly read inconsistent metadata with checksum when performing single-writer/multiple-reader (SWMR) operations for an HDF5 file. Upon encountering such situations, the library will try reading the metadata again to obtain consistent data. This routine provides the means to set the number of read attempts other than the library default.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga6daceb4a9e51fca7cb198f964b67baf0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga6daceb4a9e51fca7cb198f964b67baf0">◆ </a></span>H5Pset_mpi_params()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_mpi_params </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Comm </td> + <td class="paramname"><em>comm</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">MPI_Info </td> + <td class="paramname"><em>info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Set the MPI communicator and info. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">comm</td><td>MPI communicator </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">info</td><td>MPI info object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga6daceb4a9e51fca7cb198f964b67baf0" title="Set the MPI communicator and info.">H5Pset_mpi_params()</a> sets the MPI communicator and info stored in the file access property list <code>fapl_id</code>.</p> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000031">Todo:</a></b></dt><dd>When was this introduced?</dd></dl> + +</div> +</div> +<a id="ga507341f31848c57008a3225bff3fe128"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga507341f31848c57008a3225bff3fe128">◆ </a></span>H5Pset_multi_type()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_multi_type </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_f_dpublic_8h.html#a02887a6f018be1a0ce7358522095578b">H5FD_mem_t</a> </td> + <td class="paramname"><em>type</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Specifies type of data to be accessed via the <code>MULTI</code> driver, enabling more direct access. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type of data to be accessed</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga507341f31848c57008a3225bff3fe128" title="Specifies type of data to be accessed via the MULTI driver, enabling more direct access.">H5Pset_multi_type()</a> sets the <em>type of data</em> property in the file access property list <code>fapl_id</code>. This setting enables a user application to specify the type of data the application wishes to access so that the application can retrieve a file handle for low-level access to the particular member of a set of <code>MULTI</code> files in which that type of data is stored. The file handle is retrieved with a separate call to <a class="el" href="group___h5_f.html#gae4020a66fb8da0586e3b74c81ffccea4" title="Returns pointer to the file handle from the virtual file driver.">H5Fget_vfd_handle()</a> (or, in special circumstances, to <a class="el" href="_h5_f_ddevelop_8h.html#a9fcfb5d6708f4c3f5d319b801ac252bc">H5FDget_vfd_handle()</a>; see <a class="el" href="_v_f_l.html">HDF5 Virtual File Layer</a>.</p> +<p>The type of data specified in <code>type</code> may be one of the following:</p> +<table class="doxtable"> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae536846ac8d6ecd1a2a8479409df1bce">H5FD_MEM_SUPER</a> </td><td>Super block data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a29b8528e16990fbe265682559b917fa3">H5FD_MEM_BTREE</a> </td><td>B-tree data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ab435b061fede0393691acbe7cac2cb2e">H5FD_MEM_DRAW</a> </td><td>Dataset raw data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a020d6245f874e8262058c3278fefe58e">H5FD_MEM_GHEAP</a> </td><td>Global heap data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5ae7536174d3ae2a842a71d6c192b43a13">H5FD_MEM_LHEAP</a> </td><td>Local Heap data </td></tr> +<tr> +<td><a class="el" href="_h5_fpublic_8h.html#a51e588cd954ea2388816bd0818850eb5a4337f7056fb57717e82fa1081f496d75">H5FD_MEM_OHDR</a> </td><td>Object header data </td></tr> +</table> +<p>This function is for use only when accessing an HDF5 file written as a set of files with the <code>MULTI</code> file driver.</p> +<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl> + +</div> +</div> +<a id="gab4a4a788af5b6e88381dda0df2efbf19"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gab4a4a788af5b6e88381dda0df2efbf19">◆ </a></span>H5Pset_object_flush_cb()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_object_flush_cb </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a> </td> + <td class="paramname"><em>func</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void * </td> + <td class="paramname"><em>udata</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets a callback function to invoke when an object flush occurs in the file. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">func</td><td>Callback function </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">udata</td><td>User-defined callback function context</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19" title="Sets a callback function to invoke when an object flush occurs in the file.">H5Pset_object_flush_cb()</a> sets the callback function to invoke in the file access property list <code>plist_id</code> whenever an object flush occurs in the file. Library objects are group, dataset, and committed datatype.</p> +<p>The callback function <code>func</code> must conform to the prototype defined below: </p><div class="fragment"><div class="line"><span class="keyword">typedef</span> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> (*<a class="code" href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a>)(<a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> object_id, <span class="keywordtype">void</span> *user_data)</div> +<div class="ttc" id="a_h5_fpublic_8h_html_a07cc80d29d745646218aa8cb068cf944"><div class="ttname"><a href="_h5_fpublic_8h.html#a07cc80d29d745646218aa8cb068cf944">H5F_flush_cb_t</a></div><div class="ttdeci">herr_t(* H5F_flush_cb_t)(hid_t object_id, void *udata)</div><div class="ttdef"><b>Definition:</b> H5Fpublic.h:243</div></div> +</div><!-- fragment --><p>The parameters of the callback function, per the above prototypes, are defined as follows:</p><ul> +<li><code>object_id</code> is the identifier of the object which has just been flushed.</li> +<li><code>user_data</code> is the user-defined input data for the callback function.</li> +</ul> +<p><b>Example:</b> The example below illustrates the usage of this routine to set the callback function to invoke when an object flush occurs.</p> +<div class="fragment"><div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file_id, fapl_id;</div> +<div class="line"><a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dataset_id, dapl_id;</div> +<div class="line"><span class="keywordtype">unsigned</span> counter;</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Create a copy of the file access property list */</span></div> +<div class="line">fapl_id = <a class="code" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code" href="_h5_ppublic_8h.html#a60ec2d4334addfc0eda89614598ee38e">H5P_FILE_ACCESS</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Set up the object flush property values */</span></div> +<div class="line"><span class="comment">/* flush_cb: callback function to invoke when an object flushes (see below) */</span></div> +<div class="line"><span class="comment">/* counter: user data to pass along to the callback function */</span></div> +<div class="line"><a class="code" href="group___f_a_p_l.html#gab4a4a788af5b6e88381dda0df2efbf19">H5Pset_object_flush_cb</a>(fapl_id, flush_cb, &counter);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open the file */</span></div> +<div class="line">file_id = <a class="code" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(FILE, <a class="code" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Create a group */</span></div> +<div class="line">gid = <a class="code" href="group___h5_g.html#ga86d93295965f750ef25dea2505a711d9">H5Gcreate2</a>(fid, “group”, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, H5P_DEFAULT_H5P_DEFAULT);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* Open a dataset */</span></div> +<div class="line">dataset_id = <a class="code" href="group___h5_d.html#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file_id, DATASET, <a class="code" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>);</div> +<div class="line"> </div> +<div class="line"><span class="comment">/* The flush will invoke flush_cb() with counter */</span></div> +<div class="line"><a class="code" href="group___h5_d.html#ga4a2175a62baa1e35ad2467bb1fdff1f7">H5Dflush</a>(dataset_id);</div> +<div class="line"><span class="comment">/* counter will be equal to 1 */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* ... */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* The flush will invoke flush_cb() with counter */</span></div> +<div class="line"><a class="code" href="group___h5_g.html#ga1d55dbf931f8003bb329c4340b8fe4d6">H5Gflush</a>(gid);</div> +<div class="line"><span class="comment">/* counter will be equal to 2 */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* ... */</span></div> +<div class="line"> </div> +<div class="line"><span class="comment">/* The callback function for object flush property */</span></div> +<div class="line"><span class="keyword">static</span> <a class="code" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a></div> +<div class="line">flush_cb(<a class="code" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> obj_id, <span class="keywordtype">void</span> *_udata)</div> +<div class="line">{</div> +<div class="line"> <span class="keywordtype">unsigned</span> *flush_ct = (<span class="keywordtype">unsigned</span> *)_udata;</div> +<div class="line"> ++(*flush_ct);</div> +<div class="line"> <span class="keywordflow">return</span> 0;</div> +<div class="line">}</div> +<div class="ttc" id="agroup___h5_d_html_ga04198c4cf0b849ed3a8921f6c7169ee2"><div class="ttname"><a href="group___h5_d.html#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a></div><div class="ttdeci">hid_t H5Dopen2(hid_t loc_id, const char *name, hid_t dapl_id)</div><div class="ttdoc">Opens an existing dataset.</div></div> +<div class="ttc" id="agroup___h5_d_html_ga4a2175a62baa1e35ad2467bb1fdff1f7"><div class="ttname"><a href="group___h5_d.html#ga4a2175a62baa1e35ad2467bb1fdff1f7">H5Dflush</a></div><div class="ttdeci">herr_t H5Dflush(hid_t dset_id)</div><div class="ttdoc">Flushes all buffers associated with a dataset to disk.</div></div> +<div class="ttc" id="agroup___h5_g_html_ga1d55dbf931f8003bb329c4340b8fe4d6"><div class="ttname"><a href="group___h5_g.html#ga1d55dbf931f8003bb329c4340b8fe4d6">H5Gflush</a></div><div class="ttdeci">herr_t H5Gflush(hid_t group_id)</div><div class="ttdoc">Flushes all buffers associated with a group to disk.</div></div> +<div class="ttc" id="agroup___h5_g_html_ga86d93295965f750ef25dea2505a711d9"><div class="ttname"><a href="group___h5_g.html#ga86d93295965f750ef25dea2505a711d9">H5Gcreate2</a></div><div class="ttdeci">hid_t H5Gcreate2(hid_t loc_id, const char *name, hid_t lcpl_id, hid_t gcpl_id, hid_t gapl_id)</div><div class="ttdoc">Creates a new group and links it into the file.</div></div> +</div><!-- fragment --><dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl> + +</div> +</div> +<a id="ga8008cddafa81bd1ddada23f6d9a161ca"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8008cddafa81bd1ddada23f6d9a161ca">◆ </a></span>H5Pset_page_buffer_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_page_buffer_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>buf_size</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned </td> + <td class="paramname"><em>min_meta_per</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">unsigned </td> + <td class="paramname"><em>min_raw_per</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the maximum size for the page buffer and the minimum percentage for metadata and raw data pages. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">buf_size</td><td>Maximum size, in bytes, of the page buffer </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">min_meta_per</td><td>Minimum metadata percentage to keep in the page buffer before allowing pages containing metadata to be evicted (Default is 0) </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">min_raw_per</td><td>Minimum raw data percentage to keep in the page buffer before allowing pages containing raw data to be evicted (Default is 0) </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga8008cddafa81bd1ddada23f6d9a161ca" title="Sets the maximum size for the page buffer and the minimum percentage for metadata and raw data pages.">H5Pset_page_buffer_size()</a> sets buf_size, the maximum size in bytes of the page buffer. The default value is zero, meaning that page buffering is disabled. When a non-zero page buffer size is set, the library will enable page buffering if that size is larger or equal than a single page size if a paged file space strategy is enabled using the functions <a class="el" href="group___f_c_p_l.html#ga167ff65f392ca3b7f1933b1cee1b9f70" title="Sets the file space handling strategy and persisting free-space values for a file creation property l...">H5Pset_file_space_strategy()</a> and <a class="el" href="group___f_c_p_l.html#gad012d7f3c2f1e1999eb1770aae3a4963" title="Sets the file space page size for a file creation property list.">H5Pset_file_space_page_size()</a>.</p> +<p>The page buffer layer captures all I/O requests before they are issued to the VFD and "caches" them in fixed sized pages. Once the total number of pages exceeds the page buffer size, the library evicts pages from the page buffer by writing them to the VFD. At file close, the page buffer is flushed writing all the pages to the file.</p> +<p>If a non-zero page buffer size is set, and the file space strategy is not set to paged or the page size for the file space strategy is larger than the page buffer size, the subsequent call to <a class="el" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4" title="Creates an HDF5 file.">H5Fcreate()</a> or <a class="el" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc" title="Opens an existing HDF5 file.">H5Fopen()</a> using the <code>plist_id</code> will fail.</p> +<p>The function also allows setting the minimum percentage of pages for metadata and raw data to prevent a certain type of data to evict hot data of the other type.</p> +<dl class="section since"><dt>Since</dt><dd>1.10.1 </dd></dl> + +</div> +</div> +<a id="ga24fd737955839194bf5605d5f47928ee"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga24fd737955839194bf5605d5f47928ee">◆ </a></span>H5Pset_sieve_buf_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_sieve_buf_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">size_t </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the maximum size of the data sieve buffer. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Maximum size, in bytes, of data sieve buffer</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga24fd737955839194bf5605d5f47928ee" title="Sets the maximum size of the data sieve buffer.">H5Pset_sieve_buf_size()</a> sets <code>size</code>, the maximum size in bytes of the data sieve buffer, which is used by file drivers that are capable of using data sieving.</p> +<p>The data sieve buffer is used when performing I/O on datasets in the file. Using a buffer which is large enough to hold several pieces of the dataset being read in for hyperslab selections boosts performance by quite a bit.</p> +<p>The default value is set to 64KB, indicating that file I/O for raw data reads and writes will occur in at least 64KB blocks. Setting the value to zero (<code>0</code>) with this API function will turn off the data sieving, even if the VFL driver attempts to use that strategy.</p> +<p>Internally, the library checks the storage sizes of the datasets in the file. It picks the smaller one between the size from the file access property and the size of the dataset to allocate the sieve buffer for the dataset in order to save memory usage.</p> +<dl class="section version"><dt>Version</dt><dd>1.6.0 The <code>size</code> parameter has changed from type <code>hsize_t</code> to <code>size_t</code>.</dd></dl> +<dl class="section since"><dt>Since</dt><dd>1.4.0 </dd></dl> + +</div> +</div> +<a id="ga5a99962a79412814b79be830f14c23dd"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5a99962a79412814b79be830f14c23dd">◆ </a></span>H5Pset_small_data_block_size()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_small_data_block_size </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>fapl_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> </td> + <td class="paramname"><em>size</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Sets the size of a contiguous block reserved for small data. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">fapl_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Maximum size, in bytes, of the small data block. The default size is <code>2048</code>.</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga5a99962a79412814b79be830f14c23dd" title="Sets the size of a contiguous block reserved for small data.">H5Pset_small_data_block_size()</a> reserves blocks of <code>size</code> bytes for the contiguous storage of the raw data portion of <em>small</em> datasets. The HDF5 library then writes the raw data from small datasets to this reserved space, thus reducing unnecessary discontinuities within blocks of meta data and improving I/O performance.</p> +<p>A small data block is actually allocated the first time a qualifying small dataset is written to the file. Space for the raw data portion of this small dataset is suballocated within the small data block. The raw data from each subsequent small dataset is also written to the small data block until it is filled; additional small data blocks are allocated as required.</p> +<p>The HDF5 library employs an algorithm that determines whether I/O performance is likely to benefit from the use of this mechanism with each dataset as storage space is allocated in the file. A larger <code>size</code> will result in this mechanism being employed with larger datasets.</p> +<p>The small data block size is set as an allocation property in the file access property list identified by <code>fapl_id</code>.</p> +<p>Setting <code>size</code> to zero (<code>0</code>) disables the small data block mechanism.</p> +<dl class="section since"><dt>Since</dt><dd>1.4.4 </dd></dl> + +</div> +</div> +<a id="ga8aaa97e70b2544c3d95d908e1ae5b0f0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8aaa97e70b2544c3d95d908e1ae5b0f0">◆ </a></span>H5Pset_vol()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> H5Pset_vol </td> + <td>(</td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>plist_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> </td> + <td class="paramname"><em>new_vol_id</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const void * </td> + <td class="paramname"><em>new_vol_info</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Set the file VOL connector for a file access property list. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">plist_id</td><td>File access property list identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">new_vol_id</td><td>VOL connector identifier </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">new_vol_info</td><td>Optional VOL information</td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>Returns a non-negative value if successful; otherwise, returns a negative value.</dd></dl> +<p><a class="el" href="group___f_a_p_l.html#ga8aaa97e70b2544c3d95d908e1ae5b0f0" title="Set the file VOL connector for a file access property list.">H5Pset_vol()</a> sets the VOL connector <code>new_vol_id</code> for a file access property list <code>plist_id</code> using the (optional) VOL information in <code>new_vol_info</code>.</p> +<dl class="section since"><dt>Since</dt><dd>1.12.0 </dd></dl> + +</div> +</div> +</div><!-- contents --> +</div><!-- doc-content --> +<!-- start footer part --> +<div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> + <ul> + <li class="footer">Generated on Mon Jun 26 2023 19:01:36 for HDF5 by + <a href="http://www.doxygen.org/index.html"> + <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.9.1 </li> + </ul> +</div> +</body> +</html> |