Files
hdf5/develop/group___h5_d.html
T
2025-09-08 01:05:11 +00:00

2467 lines
243 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>HDF5: Datasets (H5D)</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="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.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:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(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="doxygen-awesome.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>
<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>
<!-- ... other metadata & script includes ... -->
<script type="text/javascript" src="doxygen-awesome-tabs.js"></script>
<script type="text/javascript">
DoxygenAwesomeTabs.init()
</script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-57FMZK4S7X"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-57FMZK4S7X');
</script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="HDFG-logo.png"/></td>
<td id="projectalign">
<div id="projectname">HDF5<span id="projectnumber">&#160;Last Updated on 2025-09-08</span>
</div>
<div id="projectbrief">The HDF5 Field Guide</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="_getting_started.html"><span>Getting&#160;started</span></a></li>
<li><a href="_u_g.html"><span>User&#160;Guide</span></a></li>
<li><a href="_r_m.html"><span>Reference&#160;Manual</span></a></li>
<li><a href="_cookbook.html"><span>Cookbook</span></a></li>
<li><a href="_t_n.html"><span>Technical&#160;Notes</span></a></li>
<li><a href="_r_f_c.html"><span>RFCs</span></a></li>
<li><a href="_s_p_e_c.html"><span>Specifications</span></a></li>
<li><a href="_g_l_s.html"><span>Glossary</span></a></li>
<li><a href="_f_t_s.html"><span>Full-Text&#160;Search</span></a></li>
<li><a href="_about.html"><span>About</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
<input type="text" id="MSearchField" value="" placeholder="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>
</li>
</ul>
</div>
</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:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('group___h5_d.html',''); initResizable(true); });
/* @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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">Datasets (H5D)</div></div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Use the functions in this module to manage HDF5 datasets, including the transfer of data between memory and disk and the description of dataset properties. Datasets are used by other HDF5 APIs and referenced either by name or by a handle. Such handles can be obtained by either creating or opening the dataset.</p>
<p>Typical stages in the HDF5 dataset life cycle are shown below in introductory examples.</p>
<table class="doxtable">
<tr>
<th>Create</th><th>Read </th></tr>
<tr valign="top">
<td><div class="fragment"><div class="line"><span class="lineno"> 94</span> {</div>
<div class="line"><span class="lineno"> 95</span> __label__ fail_lcpl, fail_dset, fail_file;</div>
<div class="line"><span class="lineno"> 96</span> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, lcpl, fspace, dset;</div>
<div class="line"><span class="lineno"> 97</span> </div>
<div class="line"><span class="lineno"> 98</span> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a5a2d6726f9ad8d2bca8df2b817e5ad6a">H5F_ACC_TRUNC</a>;</div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"><span class="lineno"> 100</span> <span class="comment">// link names can be arbitrary Unicode strings</span></div>
<div class="line"><span class="lineno"> 101</span> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"><span class="lineno"> 102</span> </div>
<div class="line"><span class="lineno"> 103</span> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4">H5Fcreate</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 104</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 105</span> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"><span class="lineno"> 106</span> }</div>
<div class="line"><span class="lineno"> 107</span> <span class="keywordflow">if</span> ((lcpl = <a class="code hl_function" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code hl_define" href="_h5_ppublic_8h.html#ad2c1d10104f0262c826350ccbf7c49f2">H5P_LINK_CREATE</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 108</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 109</span> <span class="keywordflow">goto</span> fail_lcpl;</div>
<div class="line"><span class="lineno"> 110</span> }</div>
<div class="line"><span class="lineno"> 111</span> <span class="comment">// use UTF-8 encoding for link names</span></div>
<div class="line"><span class="lineno"> 112</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___a_c_p_l.html#gad4fa8e2d17236786f770cf17eef908cc">H5Pset_char_encoding</a>(lcpl, <a class="code hl_enumvalue" href="_h5_tpublic_8h.html#a03755b8370672668ddc7063add28e71aa41685667f69bf81eb7de5dd5f452e658">H5T_CSET_UTF8</a>) &lt; 0) {</div>
<div class="line"><span class="lineno"> 113</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 114</span> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"><span class="lineno"> 115</span> }</div>
<div class="line"><span class="lineno"> 116</span> <span class="comment">// create intermediate groups as needed</span></div>
<div class="line"><span class="lineno"> 117</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___l_c_p_l.html#ga66c4c5d3f34e5cf65d00e47a5387383c">H5Pset_create_intermediate_group</a>(lcpl, 1) &lt; 0) {</div>
<div class="line"><span class="lineno"> 118</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 119</span> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"><span class="lineno"> 120</span> }</div>
<div class="line"><span class="lineno"> 121</span> <span class="comment">// create a 1D dataspace</span></div>
<div class="line"><span class="lineno"> 122</span> <span class="keywordflow">if</span> ((fspace = <a class="code hl_function" href="group___h5_s.html#ga8e35eea5738b4805856eac7d595254ae">H5Screate_simple</a>(1, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){10}, NULL)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 123</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 124</span> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"><span class="lineno"> 125</span> }</div>
<div class="line"><span class="lineno"> 126</span> <span class="comment">// create a 32-bit integer dataset</span></div>
<div class="line"><span class="lineno"> 127</span> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#gabf62045119f4e9c512d87d77f2f992df">H5Dcreate2</a>(file, dset_name, <a class="code hl_define" href="group___p_d_t_s_t_d.html#ga8db8c9c2bcc457f9f8526c8fcb81218b">H5T_STD_I32LE</a>, fspace, lcpl, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) ==</div>
<div class="line"><span class="lineno"> 128</span> <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 129</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 130</span> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"><span class="lineno"> 131</span> }</div>
<div class="line"><span class="lineno"> 132</span> </div>
<div class="line"><span class="lineno"> 133</span> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line"><span class="lineno"> 134</span>fail_dset:</div>
<div class="line"><span class="lineno"> 135</span> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(fspace);</div>
<div class="line"><span class="lineno"> 136</span>fail_fspace:</div>
<div class="line"><span class="lineno"> 137</span> <a class="code hl_function" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(lcpl);</div>
<div class="line"><span class="lineno"> 138</span>fail_lcpl:</div>
<div class="line"><span class="lineno"> 139</span> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line"><span class="lineno"> 140</span>fail_file:;</div>
<div class="line"><span class="lineno"> 141</span> }</div>
</div><!-- fragment --> </td><td><div class="fragment"><div class="line"><span class="lineno"> 145</span> {</div>
<div class="line"><span class="lineno"> 146</span> __label__ fail_dset, fail_file;</div>
<div class="line"><span class="lineno"> 147</span> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset;</div>
<div class="line"><span class="lineno"> 148</span> </div>
<div class="line"><span class="lineno"> 149</span> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>;</div>
<div class="line"><span class="lineno"> 150</span> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"><span class="lineno"> 151</span> <span class="comment">// assume a priori knowledge of dataset name and size</span></div>
<div class="line"><span class="lineno"> 152</span> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"><span class="lineno"> 153</span> <span class="keywordtype">int</span> elts[10];</div>
<div class="line"><span class="lineno"> 154</span> </div>
<div class="line"><span class="lineno"> 155</span> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 156</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 157</span> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"><span class="lineno"> 158</span> }</div>
<div class="line"><span class="lineno"> 159</span> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 160</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 161</span> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"><span class="lineno"> 162</span> }</div>
<div class="line"><span class="lineno"> 163</span> <span class="comment">// read all dataset elements</span></div>
<div class="line"><span class="lineno"> 164</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga8287d5a7be7b8e55ffeff68f7d26811c">H5Dread</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, elts) &lt; 0)</div>
<div class="line"><span class="lineno"> 165</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 166</span> </div>
<div class="line"><span class="lineno"> 167</span> <span class="comment">// do something w/ the dataset elements</span></div>
<div class="line"><span class="lineno"> 168</span> </div>
<div class="line"><span class="lineno"> 169</span> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line"><span class="lineno"> 170</span>fail_dset:</div>
<div class="line"><span class="lineno"> 171</span> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line"><span class="lineno"> 172</span>fail_file:;</div>
<div class="line"><span class="lineno"> 173</span> }</div>
</div><!-- fragment --> </td></tr>
<tr>
<th>Update</th><th>Delete </th></tr>
<tr valign="top">
<td><div class="fragment"><div class="line"><span class="lineno"> 177</span> {</div>
<div class="line"><span class="lineno"> 178</span> __label__ fail_update, fail_fspace, fail_dset, fail_file;</div>
<div class="line"><span class="lineno"> 179</span> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset, fspace;</div>
<div class="line"><span class="lineno"> 180</span> </div>
<div class="line"><span class="lineno"> 181</span> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>;</div>
<div class="line"><span class="lineno"> 182</span> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"><span class="lineno"> 183</span> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"><span class="lineno"> 184</span> <span class="keywordtype">int</span> new_elts[6][2] = {{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}};</div>
<div class="line"><span class="lineno"> 185</span> </div>
<div class="line"><span class="lineno"> 186</span> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 187</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 188</span> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"><span class="lineno"> 189</span> }</div>
<div class="line"><span class="lineno"> 190</span> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 191</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 192</span> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"><span class="lineno"> 193</span> }</div>
<div class="line"><span class="lineno"> 194</span> <span class="comment">// get the dataset&#39;s dataspace</span></div>
<div class="line"><span class="lineno"> 195</span> <span class="keywordflow">if</span> ((fspace = <a class="code hl_function" href="#gad42a46be153d895d8c28a11ebf5a0d0a">H5Dget_space</a>(dset)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 196</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 197</span> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"><span class="lineno"> 198</span> }</div>
<div class="line"><span class="lineno"> 199</span> <span class="comment">// select the first 5 elements in odd positions</span></div>
<div class="line"><span class="lineno"> 200</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___h5_s.html#ga6adfdf1b95dc108a65bf66e97d38536d">H5Sselect_hyperslab</a>(fspace, <a class="code hl_enumvalue" href="_h5_spublic_8h.html#a10093bab27cc5720efdab3186993da0fab90faf3dc59ecf6f28197ef471141550">H5S_SELECT_SET</a>, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){1}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){2}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){5},</div>
<div class="line"><span class="lineno"> 201</span> NULL) &lt; 0) {</div>
<div class="line"><span class="lineno"> 202</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 203</span> <span class="keywordflow">goto</span> fail_update;</div>
<div class="line"><span class="lineno"> 204</span> }</div>
<div class="line"><span class="lineno"> 205</span> </div>
<div class="line"><span class="lineno"> 206</span> <span class="comment">// (implicitly) select and write the first 5 elements of the second column of NEW_ELTS</span></div>
<div class="line"><span class="lineno"> 207</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga98f44998b67587662af8b0d8a0a75906">H5Dwrite</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, fspace, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, new_elts) &lt; 0)</div>
<div class="line"><span class="lineno"> 208</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 209</span> </div>
<div class="line"><span class="lineno"> 210</span>fail_update:</div>
<div class="line"><span class="lineno"> 211</span> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(fspace);</div>
<div class="line"><span class="lineno"> 212</span>fail_fspace:</div>
<div class="line"><span class="lineno"> 213</span> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line"><span class="lineno"> 214</span>fail_dset:</div>
<div class="line"><span class="lineno"> 215</span> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line"><span class="lineno"> 216</span>fail_file:;</div>
<div class="line"><span class="lineno"> 217</span> }</div>
</div><!-- fragment --> </td><td><div class="fragment"><div class="line"><span class="lineno"> 221</span> {</div>
<div class="line"><span class="lineno"> 222</span> __label__ fail_delete, fail_file;</div>
<div class="line"><span class="lineno"> 223</span> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file;</div>
<div class="line"><span class="lineno"> 224</span> </div>
<div class="line"><span class="lineno"> 225</span> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>;</div>
<div class="line"><span class="lineno"> 226</span> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"><span class="lineno"> 227</span> <span class="keywordtype">char</span> group_name[] = <span class="stringliteral">&quot;σύνολο&quot;</span>;</div>
<div class="line"><span class="lineno"> 228</span> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"><span class="lineno"> 229</span> </div>
<div class="line"><span class="lineno"> 230</span> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"><span class="lineno"> 231</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 232</span> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"><span class="lineno"> 233</span> }</div>
<div class="line"><span class="lineno"> 234</span> <span class="comment">// delete (unlink) the dataset</span></div>
<div class="line"><span class="lineno"> 235</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___h5_l.html#ga5b4e7f59f5d4bdae94fd8ce6875295cf">H5Ldelete</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>) &lt; 0) {</div>
<div class="line"><span class="lineno"> 236</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 237</span> <span class="keywordflow">goto</span> fail_delete;</div>
<div class="line"><span class="lineno"> 238</span> }</div>
<div class="line"><span class="lineno"> 239</span> <span class="comment">// the previous call deletes (unlinks) only the dataset</span></div>
<div class="line"><span class="lineno"> 240</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___h5_l.html#ga5b4e7f59f5d4bdae94fd8ce6875295cf">H5Ldelete</a>(file, group_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>) &lt; 0) {</div>
<div class="line"><span class="lineno"> 241</span> ret_val = EXIT_FAILURE;</div>
<div class="line"><span class="lineno"> 242</span> <span class="keywordflow">goto</span> fail_delete;</div>
<div class="line"><span class="lineno"> 243</span> }</div>
<div class="line"><span class="lineno"> 244</span> </div>
<div class="line"><span class="lineno"> 245</span>fail_delete:</div>
<div class="line"><span class="lineno"> 246</span> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line"><span class="lineno"> 247</span>fail_file:;</div>
<div class="line"><span class="lineno"> 248</span> }</div>
</div><!-- fragment --> </td></tr>
</table>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga0647ba4bbd26d5230cc07f3a5685b2cf" id="r_ga0647ba4bbd26d5230cc07f3a5685b2cf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate</a>&#160;&#160;&#160;<a class="el" href="#gabf62045119f4e9c512d87d77f2f992df">H5Dcreate2</a></td></tr>
<tr class="separator:ga0647ba4bbd26d5230cc07f3a5685b2cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gac482c2386aa3aea4c44730a627a7adb8" id="r_gac482c2386aa3aea4c44730a627a7adb8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gac482c2386aa3aea4c44730a627a7adb8">H5Dchunk_iter</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, <a class="el" href="_h5_dpublic_8h.html#a7a2008481c5cef463cbd0943a7042609">H5D_chunk_iter_op_t</a> cb, void *op_data)</td></tr>
<tr class="memdesc:gac482c2386aa3aea4c44730a627a7adb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterate over all chunks of a chunked dataset. <br /></td></tr>
<tr class="separator:gac482c2386aa3aea4c44730a627a7adb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae47c3f38db49db127faf221624c30609" id="r_gae47c3f38db49db127faf221624c30609"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:gae47c3f38db49db127faf221624c30609"><td class="mdescLeft">&#160;</td><td class="mdescRight">Closes the specified dataset. <br /></td></tr>
<tr class="separator:gae47c3f38db49db127faf221624c30609"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b86f2683ae6a78d48d33c45257744a2" id="r_ga6b86f2683ae6a78d48d33c45257744a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga6b86f2683ae6a78d48d33c45257744a2">H5Dcreate1</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> loc_id, const char *name, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dcpl_id)</td></tr>
<tr class="memdesc:ga6b86f2683ae6a78d48d33c45257744a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a dataset at the specified location. <br /></td></tr>
<tr class="separator:ga6b86f2683ae6a78d48d33c45257744a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabf62045119f4e9c512d87d77f2f992df" id="r_gabf62045119f4e9c512d87d77f2f992df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gabf62045119f4e9c512d87d77f2f992df">H5Dcreate2</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> loc_id, const char *name, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> lcpl_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dcpl_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dapl_id)</td></tr>
<tr class="memdesc:gabf62045119f4e9c512d87d77f2f992df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new dataset and links it into the file. <br /></td></tr>
<tr class="separator:gabf62045119f4e9c512d87d77f2f992df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga15a77e82383d821fee8ecbf9ab8408cb" id="r_ga15a77e82383d821fee8ecbf9ab8408cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb">H5Dcreate_anon</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> loc_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dcpl_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dapl_id)</td></tr>
<tr class="memdesc:ga15a77e82383d821fee8ecbf9ab8408cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a dataset in a file without linking it into the file structure. <br /></td></tr>
<tr class="separator:ga15a77e82383d821fee8ecbf9ab8408cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac4c0ff57977b1f39c1055296e39cbe91" id="r_gac4c0ff57977b1f39c1055296e39cbe91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gac4c0ff57977b1f39c1055296e39cbe91">H5Dextend</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size[])</td></tr>
<tr class="memdesc:gac4c0ff57977b1f39c1055296e39cbe91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Extends a dataset. <br /></td></tr>
<tr class="separator:gac4c0ff57977b1f39c1055296e39cbe91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8d4a57e2b2b8c95cfecf6f75bdaa8343" id="r_ga8d4a57e2b2b8c95cfecf6f75bdaa8343"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8d4a57e2b2b8c95cfecf6f75bdaa8343">H5Dfill</a> (const void *fill, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fill_type_id, void *buf, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> buf_type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id)</td></tr>
<tr class="memdesc:ga8d4a57e2b2b8c95cfecf6f75bdaa8343"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills dataspace elements with a fill value in a memory buffer. <br /></td></tr>
<tr class="separator:ga8d4a57e2b2b8c95cfecf6f75bdaa8343"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4a2175a62baa1e35ad2467bb1fdff1f7" id="r_ga4a2175a62baa1e35ad2467bb1fdff1f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga4a2175a62baa1e35ad2467bb1fdff1f7">H5Dflush</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga4a2175a62baa1e35ad2467bb1fdff1f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flushes all buffers associated with a dataset to disk. <br /></td></tr>
<tr class="separator:ga4a2175a62baa1e35ad2467bb1fdff1f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1f6a428a8234d7c2ccba7da4742d79be" id="r_ga1f6a428a8234d7c2ccba7da4742d79be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga1f6a428a8234d7c2ccba7da4742d79be">H5Dgather</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> src_space_id, const void *src_buf, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, size_t dst_buf_size, void *dst_buf, <a class="el" href="_h5_dpublic_8h.html#ab0c47a79dc28343e9c1288e911ae5cdf">H5D_gather_func_t</a> op, void *op_data)</td></tr>
<tr class="memdesc:ga1f6a428a8234d7c2ccba7da4742d79be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gathers data from a selection within a memory buffer raw data chunk in a dataset. <br /></td></tr>
<tr class="separator:ga1f6a428a8234d7c2ccba7da4742d79be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga252c0ddac7a7817bd757190e7398353b" id="r_ga252c0ddac7a7817bd757190e7398353b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga252c0ddac7a7817bd757190e7398353b">H5Dget_access_plist</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga252c0ddac7a7817bd757190e7398353b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the dataset access property list associated with a dataset. <br /></td></tr>
<tr class="separator:ga252c0ddac7a7817bd757190e7398353b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaccff213d3e0765b86f66d08dd9959807" id="r_gaccff213d3e0765b86f66d08dd9959807"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gaccff213d3e0765b86f66d08dd9959807">H5Dget_chunk_info</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fspace_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> chk_idx, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, unsigned *filter_mask, <a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> *addr, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *size)</td></tr>
<tr class="memdesc:gaccff213d3e0765b86f66d08dd9959807"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves information about a chunk specified by its index. <br /></td></tr>
<tr class="separator:gaccff213d3e0765b86f66d08dd9959807"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga408a49c6ec59c5b65ce4c791f8d26cb0" id="r_ga408a49c6ec59c5b65ce4c791f8d26cb0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga408a49c6ec59c5b65ce4c791f8d26cb0">H5Dget_chunk_info_by_coord</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, unsigned *filter_mask, <a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> *addr, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *size)</td></tr>
<tr class="memdesc:ga408a49c6ec59c5b65ce4c791f8d26cb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves information about a chunk specified by its coordinates. <br /></td></tr>
<tr class="separator:ga408a49c6ec59c5b65ce4c791f8d26cb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaeea958861de082db9051fc4bf215234" id="r_gaaeea958861de082db9051fc4bf215234"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gaaeea958861de082db9051fc4bf215234">H5Dget_chunk_storage_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *chunk_bytes)</td></tr>
<tr class="memdesc:gaaeea958861de082db9051fc4bf215234"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the amount of storage allocated within the file for a raw data chunk in a dataset. <br /></td></tr>
<tr class="separator:gaaeea958861de082db9051fc4bf215234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8848f14f4aba8e6160c3d8bb7f1be163" id="r_ga8848f14f4aba8e6160c3d8bb7f1be163"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8848f14f4aba8e6160c3d8bb7f1be163">H5Dget_create_plist</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga8848f14f4aba8e6160c3d8bb7f1be163"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an identifier for a copy of the dataset creation property list for a dataset. <br /></td></tr>
<tr class="separator:ga8848f14f4aba8e6160c3d8bb7f1be163"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8e15897dcc5799d6c09806644b492d7a" id="r_ga8e15897dcc5799d6c09806644b492d7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8e15897dcc5799d6c09806644b492d7a">H5Dget_num_chunks</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> fspace_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *nchunks)</td></tr>
<tr class="memdesc:ga8e15897dcc5799d6c09806644b492d7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves number of chunks that have nonempty intersection with a specified selection. <br /></td></tr>
<tr class="separator:ga8e15897dcc5799d6c09806644b492d7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga70ce7ab523b06c6c6a93fb28e916c2b3" id="r_ga70ce7ab523b06c6c6a93fb28e916c2b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga70ce7ab523b06c6c6a93fb28e916c2b3">H5Dget_offset</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga70ce7ab523b06c6c6a93fb28e916c2b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns dataset address in file. <br /></td></tr>
<tr class="separator:ga70ce7ab523b06c6c6a93fb28e916c2b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad42a46be153d895d8c28a11ebf5a0d0a" id="r_gad42a46be153d895d8c28a11ebf5a0d0a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gad42a46be153d895d8c28a11ebf5a0d0a">H5Dget_space</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:gad42a46be153d895d8c28a11ebf5a0d0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an identifier for a copy of the dataspace for a dataset. <br /></td></tr>
<tr class="separator:gad42a46be153d895d8c28a11ebf5a0d0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7639ef5c12cb906c71670ce73b856a4c" id="r_ga7639ef5c12cb906c71670ce73b856a4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7639ef5c12cb906c71670ce73b856a4c">H5Dget_space_status</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_dpublic_8h.html#a28e60d50e4eaeef27130829f66e39c7a">H5D_space_status_t</a> *allocation)</td></tr>
<tr class="memdesc:ga7639ef5c12cb906c71670ce73b856a4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines whether space has been allocated for a dataset. <br /></td></tr>
<tr class="separator:ga7639ef5c12cb906c71670ce73b856a4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb249479a493e80891f0c7f5d8a91b00" id="r_gafb249479a493e80891f0c7f5d8a91b00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00">H5Dget_storage_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:gafb249479a493e80891f0c7f5d8a91b00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the amount of storage allocated for a dataset. <br /></td></tr>
<tr class="separator:gafb249479a493e80891f0c7f5d8a91b00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7cd04b8332e8a0939b9973fbc500cadb" id="r_ga7cd04b8332e8a0939b9973fbc500cadb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga7cd04b8332e8a0939b9973fbc500cadb">H5Dget_type</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga7cd04b8332e8a0939b9973fbc500cadb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an identifier for a copy of the datatype for a dataset. <br /></td></tr>
<tr class="separator:ga7cd04b8332e8a0939b9973fbc500cadb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga71421c684884ab49765748720fe938db" id="r_ga71421c684884ab49765748720fe938db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga71421c684884ab49765748720fe938db">H5Diterate</a> (void *buf, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5_dpublic_8h.html#a56f5174d268c404666360192432b13b9">H5D_operator_t</a> op, void *operator_data)</td></tr>
<tr class="memdesc:ga71421c684884ab49765748720fe938db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterates over all selected elements in a dataspace. <br /></td></tr>
<tr class="separator:ga71421c684884ab49765748720fe938db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabaf03a683e1da2c8dad6ba1010d55b81" id="r_gabaf03a683e1da2c8dad6ba1010d55b81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gabaf03a683e1da2c8dad6ba1010d55b81">H5Dopen1</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> loc_id, const char *name)</td></tr>
<tr class="memdesc:gabaf03a683e1da2c8dad6ba1010d55b81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens an existing dataset. <br /></td></tr>
<tr class="separator:gabaf03a683e1da2c8dad6ba1010d55b81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga04198c4cf0b849ed3a8921f6c7169ee2" id="r_ga04198c4cf0b849ed3a8921f6c7169ee2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> loc_id, const char *name, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dapl_id)</td></tr>
<tr class="memdesc:ga04198c4cf0b849ed3a8921f6c7169ee2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens an existing dataset. <br /></td></tr>
<tr class="separator:ga04198c4cf0b849ed3a8921f6c7169ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8287d5a7be7b8e55ffeff68f7d26811c" id="r_ga8287d5a7be7b8e55ffeff68f7d26811c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8287d5a7be7b8e55ffeff68f7d26811c">H5Dread</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file_space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, void *buf)</td></tr>
<tr class="memdesc:ga8287d5a7be7b8e55ffeff68f7d26811c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads raw data from a dataset into a provided buffer. <br /></td></tr>
<tr class="separator:ga8287d5a7be7b8e55ffeff68f7d26811c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad3b9b3024ca4ab7eb7fe6872088398f3" id="r_gad3b9b3024ca4ab7eb7fe6872088398f3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gad3b9b3024ca4ab7eb7fe6872088398f3">H5Dread_chunk1</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, uint32_t *filters, void *buf)</td></tr>
<tr class="memdesc:gad3b9b3024ca4ab7eb7fe6872088398f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a raw data chunk directly from a dataset in a file into a buffer. <br /></td></tr>
<tr class="separator:gad3b9b3024ca4ab7eb7fe6872088398f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga217c9d411dfd4c0732213c7cbd98164c" id="r_ga217c9d411dfd4c0732213c7cbd98164c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c">H5Dread_chunk2</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, uint32_t *filters, void *buf, size_t *buf_size)</td></tr>
<tr class="memdesc:ga217c9d411dfd4c0732213c7cbd98164c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a raw data chunk directly from a dataset in a file into a buffer. <br /></td></tr>
<tr class="separator:ga217c9d411dfd4c0732213c7cbd98164c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8eb1c838aff79a17de385d0707709915" id="r_ga8eb1c838aff79a17de385d0707709915"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga8eb1c838aff79a17de385d0707709915">H5Dread_multi</a> (size_t count, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_type_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_space_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file_space_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, void *buf[])</td></tr>
<tr class="memdesc:ga8eb1c838aff79a17de385d0707709915"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads raw data from a set of datasets into the provided buffers. <br /></td></tr>
<tr class="separator:ga8eb1c838aff79a17de385d0707709915"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c1ea7e5db3f62d9cf03dd62d1fb08da" id="r_ga3c1ea7e5db3f62d9cf03dd62d1fb08da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga3c1ea7e5db3f62d9cf03dd62d1fb08da">H5Drefresh</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id)</td></tr>
<tr class="memdesc:ga3c1ea7e5db3f62d9cf03dd62d1fb08da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Refreshes all buffers associated with a dataset. <br /></td></tr>
<tr class="separator:ga3c1ea7e5db3f62d9cf03dd62d1fb08da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3525b15235ba1fd415f988899e48dc5c" id="r_ga3525b15235ba1fd415f988899e48dc5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga3525b15235ba1fd415f988899e48dc5c">H5Dscatter</a> (<a class="el" href="_h5_dpublic_8h.html#ab2ee7d6aecf3e37b3f22fd5075ecfc00">H5D_scatter_func_t</a> op, void *op_data, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dst_space_id, void *dst_buf)</td></tr>
<tr class="memdesc:ga3525b15235ba1fd415f988899e48dc5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scatters data into a selection within a memory buffer. <br /></td></tr>
<tr class="separator:ga3525b15235ba1fd415f988899e48dc5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad31e1e0129f4520c531ce524de2a056f" id="r_gad31e1e0129f4520c531ce524de2a056f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gad31e1e0129f4520c531ce524de2a056f">H5Dset_extent</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size[])</td></tr>
<tr class="memdesc:gad31e1e0129f4520c531ce524de2a056f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the sizes of a dataset's dimensions. <br /></td></tr>
<tr class="separator:gad31e1e0129f4520c531ce524de2a056f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0e97bbd8a8ee4a8b5b78ccce8547ce76" id="r_ga0e97bbd8a8ee4a8b5b78ccce8547ce76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga0e97bbd8a8ee4a8b5b78ccce8547ce76">H5Dvlen_get_buf_size</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *size)</td></tr>
<tr class="memdesc:ga0e97bbd8a8ee4a8b5b78ccce8547ce76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the number of bytes required to store variable-length (VL) data. <br /></td></tr>
<tr class="separator:ga0e97bbd8a8ee4a8b5b78ccce8547ce76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga222a2fd93868e2524b2e42c3c6146119" id="r_ga222a2fd93868e2524b2e42c3c6146119"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga222a2fd93868e2524b2e42c3c6146119">H5Dvlen_reclaim</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, void *buf)</td></tr>
<tr class="memdesc:ga222a2fd93868e2524b2e42c3c6146119"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reclaims variable-length (VL) datatype memory buffers. <br /></td></tr>
<tr class="separator:ga222a2fd93868e2524b2e42c3c6146119"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98f44998b67587662af8b0d8a0a75906" id="r_ga98f44998b67587662af8b0d8a0a75906"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga98f44998b67587662af8b0d8a0a75906">H5Dwrite</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_type_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file_space_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, const void *buf)</td></tr>
<tr class="memdesc:ga98f44998b67587662af8b0d8a0a75906"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes raw data from a buffer to a dataset. <br /></td></tr>
<tr class="separator:ga98f44998b67587662af8b0d8a0a75906"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga416ccd200929b11386a10e9024977109" id="r_ga416ccd200929b11386a10e9024977109"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ga416ccd200929b11386a10e9024977109">H5Dwrite_chunk</a> (<a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, uint32_t filters, const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, size_t data_size, const void *buf)</td></tr>
<tr class="memdesc:ga416ccd200929b11386a10e9024977109"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a raw data chunk from a buffer directly to a dataset in a file. <br /></td></tr>
<tr class="separator:ga416ccd200929b11386a10e9024977109"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf6213bf3a876c1741810037ff2bb85d8" id="r_gaf6213bf3a876c1741810037ff2bb85d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#gaf6213bf3a876c1741810037ff2bb85d8">H5Dwrite_multi</a> (size_t count, <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_type_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> mem_space_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file_space_id[], <a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dxpl_id, const void *buf[])</td></tr>
<tr class="memdesc:gaf6213bf3a876c1741810037ff2bb85d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes raw data from a set buffers to a set of datasets. <br /></td></tr>
<tr class="separator:gaf6213bf3a876c1741810037ff2bb85d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ga0647ba4bbd26d5230cc07f3a5685b2cf" name="ga0647ba4bbd26d5230cc07f3a5685b2cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">&#9670;&#160;</a></span>H5Dcreate</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define H5Dcreate&#160;&#160;&#160;<a class="el" href="#gabf62045119f4e9c512d87d77f2f992df">H5Dcreate2</a></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> is a macro that is mapped to either <a class="el" href="#ga6b86f2683ae6a78d48d33c45257744a2" title="Creates a dataset at the specified location.">H5Dcreate1()</a> or <a class="el" href="#gabf62045119f4e9c512d87d77f2f992df" title="Creates a new dataset and links it into the file.">H5Dcreate2()</a>.<br />
</p><dl class="section see"><dt>See also</dt><dd><a class="el" href="api-compat-macros.html">API Compatibility Macros</a> </dd></dl>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="gac482c2386aa3aea4c44730a627a7adb8" name="gac482c2386aa3aea4c44730a627a7adb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac482c2386aa3aea4c44730a627a7adb8">&#9670;&#160;</a></span>H5Dchunk_iter()</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> H5Dchunk_iter </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="_h5_dpublic_8h.html#a7a2008481c5cef463cbd0943a7042609">H5D_chunk_iter_op_t</a></td> <td class="paramname"><span class="paramname"><em>cb</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>op_data</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Iterate over all chunks of a chunked dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Identifier of a transfer property list </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">cb</td><td>User callback function, called for every chunk. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op_data</td><td>User-defined pointer to data required by op</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>H5Dchunk_iter iterates over all chunks in the dataset, calling the user supplied callback with the details of the chunk and the supplied context <code class="param">op_data</code>.</p>
<dl class="section note"><dt>Note</dt><dd>Prior to HDF5 1.14.4, the address passed to the callback did not take the user block into account.</dd></dl>
<dl class="section user"><dt>Example</dt><dd>For each chunk, print the allocated chunk size (0 for unallocated chunks). <div class="fragment"><div class="line"><span class="keywordtype">int</span></div>
<div class="line">chunk_cb(<span class="keyword">const</span> <a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *offset, <span class="keywordtype">unsigned</span> filter_mask, <a class="code hl_typedef" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> addr, <a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size, <span class="keywordtype">void</span> *op_data)</div>
<div class="line">{</div>
<div class="line"> <span class="comment">// only print the allocated chunk size only</span></div>
<div class="line"> printf(<span class="stringliteral">&quot;%&quot;</span> <a class="code hl_define" href="_h5public_8h.html#af2a07cc002d935ff50b0045b439c5e84">PRIuHSIZE</a> <span class="stringliteral">&quot;\n&quot;</span>, size);</div>
<div class="line"> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
<div class="line">}</div>
</div><!-- fragment --> Iterate over all chunked datasets and chunks in a file. <div class="fragment"><div class="line"><a class="code hl_typedef" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a></div>
<div class="line">H5Ovisit_cb(<a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <a class="code hl_struct" href="struct_h5_o__info2__t.html">H5O_info2_t</a> *info, <span class="keywordtype">void</span> *op_data)</div>
<div class="line">{</div>
<div class="line"> <a class="code hl_typedef" href="_h5public_8h.html#a3b079ecf932a5c599499cf7e298af160">herr_t</a> retval = 0;</div>
<div class="line"> <span class="keywordtype">char</span> *base_path = (<span class="keywordtype">char</span> *)op_data;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> (info-&gt;<a class="code hl_variable" href="struct_h5_o__info2__t.html#a6e12ef8203e400ee995a41a24e981539">type</a> == <a class="code hl_enumvalue" href="_h5_opublic_8h.html#a929ff459574495f461657f6be804cdeca5ca744a77f8cd2b28dda90c37807ae31">H5O_TYPE_DATASET</a>) <span class="comment">// current object is a dataset</span></div>
<div class="line"> {</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dset, dcpl;</div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_define" href="_h5version_8h.html#a7dba2e5b2045f31c0932123ffb54f7a3">H5Dopen</a>(obj, name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> func_leave;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dcpl = <a class="code hl_function" href="#ga8848f14f4aba8e6160c3d8bb7f1be163">H5Dget_create_plist</a>(dset)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dcpl;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___d_c_p_l.html#ga655530b0f40990507fedeef6b3068db3">H5Pget_layout</a>(dcpl) == <a class="code hl_enumvalue" href="_h5_dpublic_8h.html#a57e163d4c263b585ca2d904996f5e06eadc846667d1f23d573964d22549e5f262">H5D_CHUNKED</a>) <span class="comment">// dataset is chunked</span></div>
<div class="line"> {</div>
<div class="line"> __label__ fail_dtype, fail_dspace, fail_shape;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> dspace, dtype;</div>
<div class="line"> <span class="keywordtype">size_t</span> size, i;</div>
<div class="line"> <span class="keywordtype">int</span> rank;</div>
<div class="line"> <a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> cdims[<a class="code hl_define" href="_h5_spublic_8h.html#a265cb2343f05cb71831119c90de31a8f">H5S_MAX_RANK</a>];</div>
<div class="line"> </div>
<div class="line"> <span class="comment">// get resources</span></div>
<div class="line"> <span class="keywordflow">if</span> ((dtype = <a class="code hl_function" href="#ga7cd04b8332e8a0939b9973fbc500cadb">H5Dget_type</a>(dset)) &lt; 0) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dtype;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dspace = <a class="code hl_function" href="#gad42a46be153d895d8c28a11ebf5a0d0a">H5Dget_space</a>(dset)) &lt; 0) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// get the shape</span></div>
<div class="line"> <span class="keywordflow">if</span> ((size = <a class="code hl_function" href="group___h5_t.html#ga1b971589cd7a86f3e84affdee455564e">H5Tget_size</a>(dtype)) == 0 || (rank = <a class="code hl_function" href="group___h5_s.html#gae5282a81692b80b5b19dd12d05b9b28e">H5Sget_simple_extent_ndims</a>(dspace)) &lt; 0 ||</div>
<div class="line"> <a class="code hl_function" href="group___d_c_p_l.html#ga4ef814034f601f48ab1ed6db79b4354c">H5Pget_chunk</a>(dcpl, <a class="code hl_define" href="_h5_spublic_8h.html#a265cb2343f05cb71831119c90de31a8f">H5S_MAX_RANK</a>, cdims) &lt; 0) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_shape;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// calculate the nominal chunk size</span></div>
<div class="line"> size = 1;</div>
<div class="line"> <span class="keywordflow">for</span> (i = 0; i &lt; (size_t)rank; ++i)</div>
<div class="line"> size *= cdims[i];</div>
<div class="line"> <span class="comment">// print dataset info</span></div>
<div class="line"> printf(<span class="stringliteral">&quot;%s%s : nominal chunk size %lu [B] \n&quot;</span>, base_path, name, size);</div>
<div class="line"> <span class="comment">// get the allocated chunk sizes</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="#gac482c2386aa3aea4c44730a627a7adb8">H5Dchunk_iter</a>(dset, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, &amp;chunk_cb, NULL) &lt; 0) {</div>
<div class="line"> retval = -1;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fig;</div>
<div class="line"> }</div>
<div class="line">fail_fig:</div>
<div class="line">fail_shape:</div>
<div class="line"> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(dspace);</div>
<div class="line">fail_dspace:</div>
<div class="line"> <a class="code hl_function" href="group___h5_t.html#gafcba4db244f6a4d71e99c6e72b8678f0">H5Tclose</a>(dtype);</div>
<div class="line">fail_dtype:;</div>
<div class="line"> }</div>
<div class="line"> </div>
<div class="line"> <a class="code hl_function" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(dcpl);</div>
<div class="line">fail_dcpl:</div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line"> }</div>
<div class="line"> </div>
<div class="line">func_leave:</div>
<div class="line"> <span class="keywordflow">return</span> retval;</div>
<div class="line">}</div>
</div><!-- fragment --></dd></dl>
<dl class="section attention"><dt>Attention</dt><dd><b>Leaving callback functions:</b><br />
The callback function must return normally, even in the case of error. Returning with H5_ITER_ERROR, instead of leaving by means of exceptions, exit() function, etc... will allow the HDF5 library to manage its resources and maintain a consistent state. See <a class="el" href="_r_m.html#cpp_c_api_note">C++ Developers using HDF5 C-API functions</a> warning for detail.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.14.0 </dd></dl>
</div>
</div>
<a id="gae47c3f38db49db127faf221624c30609" name="gae47c3f38db49db127faf221624c30609"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae47c3f38db49db127faf221624c30609">&#9670;&#160;</a></span>H5Dclose()</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> H5Dclose </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Closes the specified dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset 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="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a> terminates access to a dataset via the identifier <code class="param">dset_id</code> and releases the underlying resources.</p>
<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"> {</div>
<div class="line"> __label__ fail_dset, fail_file;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>;</div>
<div class="line"> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"> <span class="comment">// assume a priori knowledge of dataset name and size</span></div>
<div class="line"> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"> <span class="keywordtype">int</span> elts[10];</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// read all dataset elements</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga8287d5a7be7b8e55ffeff68f7d26811c">H5Dread</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, elts) &lt; 0)</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> </div>
<div class="line"> <span class="comment">// do something w/ the dataset elements</span></div>
<div class="line"> </div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line">fail_dset:</div>
<div class="line"> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line">fail_file:;</div>
<div class="line"> }</div>
</div><!-- fragment --></dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#gabf62045119f4e9c512d87d77f2f992df" title="Creates a new dataset and links it into the file.">H5Dcreate2()</a>, <a class="el" href="#ga04198c4cf0b849ed3a8921f6c7169ee2" title="Opens an existing dataset.">H5Dopen2()</a> </dd></dl>
</div>
</div>
<a id="ga6b86f2683ae6a78d48d33c45257744a2" name="ga6b86f2683ae6a78d48d33c45257744a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6b86f2683ae6a78d48d33c45257744a2">&#9670;&#160;</a></span>H5Dcreate1()</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> H5Dcreate1 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>loc_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </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"><span class="paramname"><em>dcpl_id</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a dataset at the specified location. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">loc_id</td><td>Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the dataset to create </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dcpl_id</td><td>Dataset creation property list identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset identifier if successful; otherwise returns <a class="el" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>.</dd></dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000015">Deprecated</a></b></dt><dd>Superseded by <a class="el" href="#gabf62045119f4e9c512d87d77f2f992df" title="Creates a new dataset and links it into the file.">H5Dcreate2()</a> or the macro <a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a>.</dd></dl>
<p><a class="el" href="#ga6b86f2683ae6a78d48d33c45257744a2" title="Creates a dataset at the specified location.">H5Dcreate1()</a> creates a data set with a name, <code class="param">name</code>, in the location specified by the identifier <code class="param">loc_id</code>. <code class="param">loc_id</code> may be a file, group, dataset, named datatype or attribute. If an attribute, dataset, or named datatype is specified for <code class="param">loc_id</code> then the dataset will be created at the location where the attribute, dataset, or named datatype is attached.</p>
<p><code class="param">name</code> can be a relative path based at <code class="param">loc_id</code> or an absolute path from the root of the file. Use of this function requires that any intermediate groups specified in the path already exist.</p>
<p>The dataset's datatype and dataspace are specified by <code class="param">type_id</code> and <code class="param">space_id</code>, respectively. These are the datatype and dataspace of the dataset as it will exist in the file, which may differ from the datatype and dataspace in application memory.</p>
<p>Names within a group are unique: <a class="el" href="#ga6b86f2683ae6a78d48d33c45257744a2" title="Creates a dataset at the specified location.">H5Dcreate1()</a> will return an error if a link with the name specified in name already exists at the location specified in <code class="param">loc_id</code>.</p>
<p>As is the case for any object in a group, the length of a dataset name is not limited.</p>
<p><code class="param">dcpl_id</code> is an <a class="el" href="_h5_ppublic_8h.html#afcd7f8186c404f3a1d768632eacba102">H5P_DATASET_CREATE</a> property list created with <code class="param">H5reate1()</code> and initialized with various property list functions described in Property List Interface.</p>
<p><a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> and <a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> return an error if the dataset's datatype includes a variable-length (VL) datatype and the fill value is undefined, i.e., set to <code>NULL</code> in the dataset creation property list. Such a VL datatype may be directly included, indirectly included as part of a compound or array datatype, or indirectly included as part of a nested compound or array datatype.</p>
<p><a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> and <a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> return a dataset identifier for success or a negative value for failure. The dataset identifier should eventually be closed by calling <a class="el" href="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a> to release the resources it uses.</p>
<p>See <a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> for a discussion of the differences between <a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> and <a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a>.</p>
<p>The HDF5 library provides flexible means of specifying a fill value, of specifying when space will be allocated for a dataset, and of specifying when fill values will be written to a dataset.</p>
<dl class="section version"><dt>Version</dt><dd>1.8.0 Function <a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> renamed to <a class="el" href="#ga6b86f2683ae6a78d48d33c45257744a2" title="Creates a dataset at the specified location.">H5Dcreate1()</a> and deprecated in this release. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ga04198c4cf0b849ed3a8921f6c7169ee2" title="Opens an existing dataset.">H5Dopen2()</a>, <a class="el" href="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a>, <a class="el" href="group___h5_t.html#gae5f38bfd4a4c557496b3194b5180212c" title="Sets size for a datatype.">H5Tset_size()</a> </dd></dl>
</div>
</div>
<a id="gabf62045119f4e9c512d87d77f2f992df" name="gabf62045119f4e9c512d87d77f2f992df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabf62045119f4e9c512d87d77f2f992df">&#9670;&#160;</a></span>H5Dcreate2()</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> H5Dcreate2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>loc_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </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"><span class="paramname"><em>lcpl_id</em></span>, </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"><span class="paramname"><em>dcpl_id</em></span>, </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"><span class="paramname"><em>dapl_id</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a new dataset and links it into the file. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">loc_id</td><td>Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the dataset to create </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">lcpl_id</td><td>Link creation property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dcpl_id</td><td>Dataset creation property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dapl_id</td><td>Dataset access property list identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset 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="#gabf62045119f4e9c512d87d77f2f992df" title="Creates a new dataset and links it into the file.">H5Dcreate2()</a> creates a new dataset named <code class="param">name</code> at the location specified by <code class="param">loc_id</code>, and associates constant and initial persistent properties with that dataset, including the datatype <code class="param">dtype_id</code>, the dataspace <code class="param">space_id</code>, and other properties as specified by the dataset creation property list <code class="param">dcpl_id</code> and the access property list <code class="param">dapl_id</code>, respectively. Once created, the dataset is opened for access.</p>
<p><code class="param">loc_id</code> may specify a file, group, dataset, named datatype, or attribute. If an attribute, dataset, or named datatype is specified, then the dataset will be created at the location where the attribute, dataset, or named datatype is attached.</p>
<p><code class="param">name</code> may be either an absolute path in the file or a relative path from <code class="param">loc_id</code> naming the dataset.</p>
<p>If <code class="param">dtype_id</code> is a committed datatype, and if the file location associated with the committed datatype is different from the file location where the dataset will be created, the datatype is copied and converted to a transient type.</p>
<p>The link creation property list, <code class="param">lcpl_id</code>, governs the creation of the link(s) by which the new dataset is accessed and the creation of any intermediate groups that may be missing.</p>
<p>The datatype and dataspace properties and the dataset creation and access property lists are attached to the dataset, so the caller may derive new datatypes, dataspaces, and creation and access properties from the old ones and reuse them in calls to create additional datasets. Once created, the dataset can be read from or written to. Reading data from a dataset that was not previously written, the HDF5 library will return default or user-defined fill values.</p>
<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"> {</div>
<div class="line"> __label__ fail_lcpl, fail_dset, fail_file;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, lcpl, fspace, dset;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a5a2d6726f9ad8d2bca8df2b817e5ad6a">H5F_ACC_TRUNC</a>;</div>
<div class="line"> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"> <span class="comment">// link names can be arbitrary Unicode strings</span></div>
<div class="line"> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gae64b51ee9ac0781bc4ccc599d98387f4">H5Fcreate</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((lcpl = <a class="code hl_function" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa">H5Pcreate</a>(<a class="code hl_define" href="_h5_ppublic_8h.html#ad2c1d10104f0262c826350ccbf7c49f2">H5P_LINK_CREATE</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_lcpl;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// use UTF-8 encoding for link names</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___a_c_p_l.html#gad4fa8e2d17236786f770cf17eef908cc">H5Pset_char_encoding</a>(lcpl, <a class="code hl_enumvalue" href="_h5_tpublic_8h.html#a03755b8370672668ddc7063add28e71aa41685667f69bf81eb7de5dd5f452e658">H5T_CSET_UTF8</a>) &lt; 0) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// create intermediate groups as needed</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___l_c_p_l.html#ga66c4c5d3f34e5cf65d00e47a5387383c">H5Pset_create_intermediate_group</a>(lcpl, 1) &lt; 0) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// create a 1D dataspace</span></div>
<div class="line"> <span class="keywordflow">if</span> ((fspace = <a class="code hl_function" href="group___h5_s.html#ga8e35eea5738b4805856eac7d595254ae">H5Screate_simple</a>(1, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){10}, NULL)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// create a 32-bit integer dataset</span></div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#gabf62045119f4e9c512d87d77f2f992df">H5Dcreate2</a>(file, dset_name, <a class="code hl_define" href="group___p_d_t_s_t_d.html#ga8db8c9c2bcc457f9f8526c8fcb81218b">H5T_STD_I32LE</a>, fspace, lcpl, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) ==</div>
<div class="line"> <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"> }</div>
<div class="line"> </div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line">fail_dset:</div>
<div class="line"> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(fspace);</div>
<div class="line">fail_fspace:</div>
<div class="line"> <a class="code hl_function" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb">H5Pclose</a>(lcpl);</div>
<div class="line">fail_lcpl:</div>
<div class="line"> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line">fail_file:;</div>
<div class="line"> }</div>
</div><!-- fragment --></dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.8.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ga04198c4cf0b849ed3a8921f6c7169ee2" title="Opens an existing dataset.">H5Dopen2()</a>, <a class="el" href="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a>, <a class="el" href="group___h5_t.html#gae5f38bfd4a4c557496b3194b5180212c" title="Sets size for a datatype.">H5Tset_size()</a> </dd></dl>
</div>
</div>
<a id="ga15a77e82383d821fee8ecbf9ab8408cb" name="ga15a77e82383d821fee8ecbf9ab8408cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga15a77e82383d821fee8ecbf9ab8408cb">&#9670;&#160;</a></span>H5Dcreate_anon()</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> H5Dcreate_anon </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>loc_id</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </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"><span class="paramname"><em>dcpl_id</em></span>, </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"><span class="paramname"><em>dapl_id</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a dataset in a file without linking it into the file structure. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">loc_id</td><td>Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dcpl_id</td><td>Dataset creation property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dapl_id</td><td>Dataset access property list identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset 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="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> creates a dataset in the file specified by <code class="param">loc_id</code>.</p>
<p><code class="param">loc_id</code> may specify a file, group, dataset, named datatype, or attribute. If an attribute, dataset, or named datatype is specified, then the dataset will be created at the location where the attribute, dataset, or named datatype is attached.</p>
<p>The dataset's datatype and dataspace are specified by <code class="param">type_id</code> and <code class="param">space_id</code>, respectively. These are the datatype and dataspace of the dataset as they will exist in the file, which may differ from the datatype and dataspace in application memory.</p>
<p><a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> returns a new dataset identifier. Using this identifier, the new dataset must be linked into the HDF5 file structure with <a class="el" href="group___h5_o.html#ga2c97dd58e64b67d16325fceb7e02113f" title="Creates a hard link to an object in an HDF5 file.">H5Olink()</a> or it will be deleted when the file is closed.</p>
<dl class="section since"><dt>Since</dt><dd>1.8.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___h5_o.html#ga2c97dd58e64b67d16325fceb7e02113f" title="Creates a hard link to an object in an HDF5 file.">H5Olink()</a>, <a class="el" href="#ga0647ba4bbd26d5230cc07f3a5685b2cf">H5Dcreate()</a> </dd></dl>
</div>
</div>
<a id="gac4c0ff57977b1f39c1055296e39cbe91" name="gac4c0ff57977b1f39c1055296e39cbe91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac4c0ff57977b1f39c1055296e39cbe91">&#9670;&#160;</a></span>H5Dextend()</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> H5Dextend </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a></td> <td class="paramname"><span class="paramname"><em>size</em></span>[]&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Extends a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Array containing the new size of each dimension</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="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000017">Deprecated</a></b></dt><dd>Superseded by <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a>.</dd></dl>
<p><a class="el" href="#gac4c0ff57977b1f39c1055296e39cbe91" title="Extends a dataset.">H5Dextend()</a> verifies that the dataset is at least of size <code class="param">size</code>, extending it if necessary. The length of <code class="param">size</code> is the same as that of the dataspace of the dataset being changed.</p>
<p>This function can be applied to the following datasets: </p><ul>
<li>Any dataset with unlimited dimensions </li>
<li>A dataset with fixed dimensions if the current dimension sizes are less than the maximum sizes set with <code>maxdims</code> (see <a class="el" href="group___h5_s.html#ga8e35eea5738b4805856eac7d595254ae" title="Creates a new simple dataspace and opens it for access.">H5Screate_simple()</a>)</li>
</ul>
<p>Space on disk is immediately allocated for the new dataset extent if the dataset's space allocation time is set to <a class="el" href="_h5_dpublic_8h.html#aab70b464cf3c5fc931dce0c4fe98b3d2a3c461ed83e0af151ef8c44ec232368b6">H5D_ALLOC_TIME_EARLY</a>. Fill values will be written to the dataset if the dataset's fill time is set to <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aa85b225308b0a277c4dd6fed7ee465a72">H5D_FILL_TIME_IFSET</a> or <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aadd7bb84666434f7d1dc642e94c68eb28">H5D_FILL_TIME_ALLOC</a>. (See <a class="el" href="group___d_c_p_l.html#ga6bd822266b31f86551a9a1d79601b6a2" title="Sets the time when fill values are written to a dataset.">H5Pset_fill_time()</a> and <a class="el" href="group___d_c_p_l.html#ga85faefca58387bba409b65c470d7d851" title="Sets the timing for storage space allocation.">H5Pset_alloc_time()</a>.)</p>
<p>This function ensures that the dataset dimensions are of at least the sizes specified in size. The function <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> must be used if the dataset dimension sizes are to be reduced.</p>
<dl class="section version"><dt>Version</dt><dd>1.8.0 Function deprecated in this release. Parameter size syntax changed to <code>const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> size[]</code> in this release. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl>
</div>
</div>
<a id="ga8d4a57e2b2b8c95cfecf6f75bdaa8343" name="ga8d4a57e2b2b8c95cfecf6f75bdaa8343"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8d4a57e2b2b8c95cfecf6f75bdaa8343">&#9670;&#160;</a></span>H5Dfill()</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> H5Dfill </td>
<td>(</td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>fill</em></span>, </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"><span class="paramname"><em>fill_type_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>, </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"><span class="paramname"><em>buf_type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Fills dataspace elements with a fill value in a memory buffer. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">fill</td><td>Pointer to the fill value to be used </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">fill_type_id</td><td>Fill value datatype identifier </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">buf</td><td>Pointer to the memory buffer containing the selection to be filled </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf_type_id</td><td>Datatype of dataspace elements to be filled </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace 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="#ga8d4a57e2b2b8c95cfecf6f75bdaa8343" title="Fills dataspace elements with a fill value in a memory buffer.">H5Dfill()</a> fills the dataspace selection, <code class="param">space_id</code>, in memory with the fill value specified in <code class="param">fill</code>. If <code class="param">fill</code> is NULL, a fill value of 0 (zero) is used.</p>
<p><code class="param">fill_type_id</code> specifies the datatype of the fill value. <code class="param">buf</code> specifies the buffer in which the fill elements will be written. <code class="param">buf_type_id</code> specifies the datatype of those data elements.</p>
<dl class="section note"><dt>Note</dt><dd>Note that if the fill value datatype differs from the memory buffer datatype, the fill value will be converted to the memory buffer datatype before filling the selection.</dd>
<dd>
Applications sometimes write data only to portions of an allocated dataset. It is often useful in such cases to fill the unused space with a known fill value.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___d_c_p_l.html#ga4335bb45b35386daa837b4ff1b9cd4a4" title="Sets the fill value for a dataset.">H5Pset_fill_value()</a>, <a class="el" href="group___d_c_p_l.html#ga82bbe8c77c7eb9c460bfd1eb26881355" title="Retrieves a dataset fill value.">H5Pget_fill_value()</a>, <a class="el" href="group___d_c_p_l.html#ga14f9bc2a0d6f9e62ab95661fc1045ad6" title="Determines whether fill value is defined.">H5Pfill_value_defined()</a>, <a class="el" href="group___d_c_p_l.html#ga6bd822266b31f86551a9a1d79601b6a2" title="Sets the time when fill values are written to a dataset.">H5Pset_fill_time()</a>, <a class="el" href="group___d_c_p_l.html#ga92c5eb5ee19bfd4a9184cf0428d1b00c" title="Retrieves the time when fill values are written to a dataset.">H5Pget_fill_time()</a>, <a class="el" href="group___p_l_c_r.html#gaf1b11da01d4d45d788c45f8bc5f0cbfa" title="Creates a new property list as an instance of a property list class.">H5Pcreate()</a>, <a class="el" href="#ga15a77e82383d821fee8ecbf9ab8408cb" title="Creates a dataset in a file without linking it into the file structure.">H5Dcreate_anon()</a> </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl>
</div>
</div>
<a id="ga4a2175a62baa1e35ad2467bb1fdff1f7" name="ga4a2175a62baa1e35ad2467bb1fdff1f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4a2175a62baa1e35ad2467bb1fdff1f7">&#9670;&#160;</a></span>H5Dflush()</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> H5Dflush </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Flushes all buffers associated with a dataset to disk. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset 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="#ga4a2175a62baa1e35ad2467bb1fdff1f7" title="Flushes all buffers associated with a dataset to disk.">H5Dflush()</a> causes all buffers associated with a dataset to be immediately flushed to disk without removing the data from the cache.</p>
<dl class="section note"><dt>Note</dt><dd>HDF5 does not possess full control over buffering. <a class="el" href="#ga4a2175a62baa1e35ad2467bb1fdff1f7" title="Flushes all buffers associated with a dataset to disk.">H5Dflush()</a> flushes the internal HDF5 buffers and then asks the operating system (the OS) to flush the system buffers for the open files. After that, the OS is responsible for ensuring that the data is actually flushed to disk.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.0 </dd></dl>
</div>
</div>
<a id="ga1f6a428a8234d7c2ccba7da4742d79be" name="ga1f6a428a8234d7c2ccba7da4742d79be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1f6a428a8234d7c2ccba7da4742d79be">&#9670;&#160;</a></span>H5Dgather()</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> H5Dgather </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>src_space_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>src_buf</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>dst_buf_size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>dst_buf</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="_h5_dpublic_8h.html#ab0c47a79dc28343e9c1288e911ae5cdf">H5D_gather_func_t</a></td> <td class="paramname"><span class="paramname"><em>op</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>op_data</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Gathers data from a selection within a memory buffer raw data chunk in a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">src_space_id</td><td>Dataspace identifier for the source buffer </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">src_buf</td><td>Source buffer which the data will be gathered from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier for the source </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dst_buf_size</td><td>Size in bytes of <code class="param">dst_buf</code> </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dst_buf</td><td>Destination buffer for the gathered data </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Callback function which handles the gathered data </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op_data</td><td>User-defined pointer to data required by <code class="param">op</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="#ga1f6a428a8234d7c2ccba7da4742d79be" title="Gathers data from a selection within a memory buffer raw data chunk in a dataset.">H5Dgather()</a> retrieves data from a selection within the supplied buffer src_buf and passes it to the supplied callback function <code class="param">op</code> in a contiguous form.</p>
<p>The dataspace <code class="param">src_space_id</code> describes both the dimensions of the source buffer and the selection within the source buffer to gather data from.</p>
<p><code class="param">src_buf</code> must be at least the size of the gathered data, that is, the number of elements in the extent of <code class="param">src_space_id</code> times the size in bytes of <code class="param">type_id</code>.</p>
<p>The datatype <code class="param">type_id</code> describes the data in both the source and destination buffers. This information is used to calculate the element size.</p>
<p>The data is gathered into <code class="param">dst_buf</code>, which needs to be large enough to hold all the data if the callback function <code class="param">op</code> is not provided.</p>
<p><code class="param">op</code> is a callback function that handles the gathered data. It is optional if <code class="param">dst_buf</code> is large enough to hold all of the gathered data; required otherwise.</p>
<p>If no callback function is provided, <a class="el" href="#ga1f6a428a8234d7c2ccba7da4742d79be" title="Gathers data from a selection within a memory buffer raw data chunk in a dataset.">H5Dgather()</a> simply gathers the data into <code class="param">dst_buf</code> and returns. If a callback function is provided, <a class="el" href="#ga1f6a428a8234d7c2ccba7da4742d79be" title="Gathers data from a selection within a memory buffer raw data chunk in a dataset.">H5Dgather()</a> repeatedly gathers up to <code class="param">dst_buf_size</code> bytes to process the serialized data.</p>
<p>The callback function <code class="param">op</code> should process, store, or otherwise, make use of the data returned in <code class="param">dst_buf</code> before it returns, because the buffer will be overwritten unless it is the last call to the callback. This function will be repeatedly called until all gathered elements have been passed to the callback in <code class="param">dst_buf</code>. The callback function should return zero (0) to indicate success, and a negative value to indicate failure.</p>
<dl class="section attention"><dt>Attention</dt><dd><b>Leaving callback functions:</b><br />
The callback function must return normally, even in the case of error. Returning with H5_ITER_ERROR, instead of leaving by means of exceptions, exit() function, etc... will allow the HDF5 library to manage its resources and maintain a consistent state. See <a class="el" href="_r_m.html#cpp_c_api_note">C++ Developers using HDF5 C-API functions</a> warning for detail.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="ga252c0ddac7a7817bd757190e7398353b" name="ga252c0ddac7a7817bd757190e7398353b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga252c0ddac7a7817bd757190e7398353b">&#9670;&#160;</a></span>H5Dget_access_plist()</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> H5Dget_access_plist </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the dataset access property list associated with a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset access property list 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="#ga252c0ddac7a7817bd757190e7398353b" title="Returns the dataset access property list associated with a dataset.">H5Dget_access_plist()</a> returns a copy of the dataset access property list used to open the specified dataset, <code class="param">dset_id</code>. Modifications to the returned property list will have no effect on the dataset it was retrieved from.</p>
<p>The chunk cache parameters in the returned property lists will be those used by the dataset. If the properties in the file access property list were used to determine the dataset's chunk cache configuration, then those properties will be present in the returned dataset access property list. If the dataset does not use a chunked layout, then the chunk cache properties will be set to the default. The chunk cache properties in the returned list are considered to be “set”, and any use of this list will override the corresponding properties in the file's file access property list.</p>
<p>All link access properties in the returned list will be set to the default values.</p>
<dl class="section since"><dt>Since</dt><dd>1.8.3 </dd></dl>
</div>
</div>
<a id="gaccff213d3e0765b86f66d08dd9959807" name="gaccff213d3e0765b86f66d08dd9959807"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaccff213d3e0765b86f66d08dd9959807">&#9670;&#160;</a></span>H5Dget_chunk_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> H5Dget_chunk_info </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>fspace_id</em></span>, </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"><span class="paramname"><em>chk_idx</em></span>, </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"><span class="paramname"><em>offset</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned *</td> <td class="paramname"><span class="paramname"><em>filter_mask</em></span>, </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"><span class="paramname"><em>addr</em></span>, </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"><span class="paramname"><em>size</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Retrieves information about a chunk specified by its index. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">fspace_id</td><td>File dataspace selection identifier (See Note below) </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">chk_idx</td><td>Index of the chunk </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">offset</td><td>Logical position of the chunk's first element in units of dataset elements </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">filter_mask</td><td>Bitmask indicating the filters used when the chunk was written </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">addr</td><td>Chunk address in the file, taking the user block (if any) into account </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Chunk size in bytes, 0 if the chunk does not exist</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="#gaccff213d3e0765b86f66d08dd9959807" title="Retrieves information about a chunk specified by its index.">H5Dget_chunk_info()</a> retrieves the offset coordinates, <code class="param">offset</code>, filter mask, <code class="param">filter_mask</code>, size, <code class="param">size</code>, and address <code class="param">addr</code> for the dataset specified by the identifier <code class="param">dset_id</code> and the chunk specified by the index <code class="param">index</code>. The chunk belongs to a set of chunks in the selection specified by <code class="param">fspace_id</code>. If the queried chunk does not exist in the file, the size will be set to 0 and address to <a class="el" href="_h5public_8h.html#a676244a60b85ee8bbd111afd4a8fce3c">HADDR_UNDEF</a>. The value pointed to by filter_mask will not be modified. <code>NULL</code> can be passed in for any <code class="param">out</code> parameters.</p>
<dl class="section note"><dt>Note</dt><dd>Prior to HDF5 1.14.4, the reported address did not take the user block into account.</dd></dl>
<p><code class="param">chk_idx</code> is the chunk index in the selection. The index value may have a value of 0 up to the number of chunks stored in the file that has a nonempty intersection with the file dataspace selection.</p>
<dl class="section note"><dt>Note</dt><dd>As of 1.10.5, the dataspace intersection is not yet supported. Hence, the index is of all the written chunks.</dd></dl>
<p><code class="param">fspace_id</code> specifies the file dataspace selection. It is intended to take <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> to specify the current selection.</p>
<dl class="section note"><dt>Note</dt><dd>Please be aware that this function currently does not support non-trivial selections; thus <code class="param">fspace_id</code> has no effect. Also, the implementation does not handle the <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> macro correctly. As a workaround, an application can get the dataspace for the dataset using <a class="el" href="#gad42a46be153d895d8c28a11ebf5a0d0a" title="Returns an identifier for a copy of the dataspace for a dataset.">H5Dget_space()</a> and pass that in for <code class="param">fspace_id</code>. This will be fixed in a future release.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.5 </dd></dl>
</div>
</div>
<a id="ga408a49c6ec59c5b65ce4c791f8d26cb0" name="ga408a49c6ec59c5b65ce4c791f8d26cb0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga408a49c6ec59c5b65ce4c791f8d26cb0">&#9670;&#160;</a></span>H5Dget_chunk_info_by_coord()</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> H5Dget_chunk_info_by_coord </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned *</td> <td class="paramname"><span class="paramname"><em>filter_mask</em></span>, </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"><span class="paramname"><em>addr</em></span>, </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"><span class="paramname"><em>size</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Retrieves information about a chunk specified by its coordinates. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Logical position of the chunk's first element in units of dataset elements </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">filter_mask</td><td>Bitmask indicating the filters used when the chunk was written </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">addr</td><td>Chunk address in the file, taking the user block (if any) into account </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Chunk size in bytes, 0 if the chunk does not exist</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="#ga408a49c6ec59c5b65ce4c791f8d26cb0" title="Retrieves information about a chunk specified by its coordinates.">H5Dget_chunk_info_by_coord()</a> retrieves the <code class="param">filter_mask</code>, <code class="param">size</code>, and <code class="param">addr</code> for a chunk in the dataset specified by <code class="param">dset_id</code>, using the coordinates specified by <code class="param">offset</code>.</p>
<p>If the queried chunk does not exist in the file, <code class="param">size</code> will be set to 0, <code class="param">addr</code> to <code>HADDR_UNDEF</code>, and the buffer <code class="param">filter_mask</code> will not be modified.</p>
<p><code class="param">offset</code> is a pointer to a one-dimensional array with a size equal to the dataset's rank. Each element is the logical position of the chunk's first element in a dimension.</p>
<dl class="section note"><dt>Note</dt><dd>Prior to HDF5 1.14.4, the reported address did not take the user block into account.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.5 </dd></dl>
</div>
</div>
<a id="gaaeea958861de082db9051fc4bf215234" name="gaaeea958861de082db9051fc4bf215234"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaeea958861de082db9051fc4bf215234">&#9670;&#160;</a></span>H5Dget_chunk_storage_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> H5Dget_chunk_storage_size </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </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"><span class="paramname"><em>chunk_bytes</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the amount of storage allocated within the file for a raw data chunk in a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Logical offset in the dataset for the chunk to query </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">chunk_bytes</td><td>The size in bytes for the chunk</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="#gaaeea958861de082db9051fc4bf215234" title="Returns the amount of storage allocated within the file for a raw data chunk in a dataset.">H5Dget_chunk_storage_size()</a> returns the size in bytes allocated in the file for a raw data chunk as specified by its logical <code class="param">offset</code> in the dataset <code class="param">dset_id</code>. The size is returned in <code class="param">chunk_nbytes</code>. It is the size of the compressed data if the chunk is filtered and the size may be zero if no storage is allocated yet for the dataset.</p>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="ga8848f14f4aba8e6160c3d8bb7f1be163" name="ga8848f14f4aba8e6160c3d8bb7f1be163"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8848f14f4aba8e6160c3d8bb7f1be163">&#9670;&#160;</a></span>H5Dget_create_plist()</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> H5Dget_create_plist </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an identifier for a copy of the dataset creation property list for a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset creation property list 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="#ga8848f14f4aba8e6160c3d8bb7f1be163" title="Returns an identifier for a copy of the dataset creation property list for a dataset.">H5Dget_create_plist()</a> returns an identifier for a copy of the dataset creation property list associated with the dataset specified by <code class="param">dset_id</code>.</p>
<p>The creation property list identifier should be released with <a class="el" href="group___p_l_c_r.html#ga5dce61149211d3ef319452aa598887fb" title="Terminates access to a property list.">H5Pclose()</a> to prevent resource leaks.</p>
<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl>
</div>
</div>
<a id="ga8e15897dcc5799d6c09806644b492d7a" name="ga8e15897dcc5799d6c09806644b492d7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8e15897dcc5799d6c09806644b492d7a">&#9670;&#160;</a></span>H5Dget_num_chunks()</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> H5Dget_num_chunks </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>fspace_id</em></span>, </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"><span class="paramname"><em>nchunks</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Retrieves number of chunks that have nonempty intersection with a specified selection. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">fspace_id</td><td>File dataspace selection identifier </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">nchunks</td><td>Number of chunks in the selection</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="#ga8e15897dcc5799d6c09806644b492d7a" title="Retrieves number of chunks that have nonempty intersection with a specified selection.">H5Dget_num_chunks()</a> retrieves the number of chunks nchunks in a set of selected elements specified by <code class="param">fspace_id</code> for a dataset specified by the identifier <code class="param">dset_id</code>. If <code class="param">fspace_id</code> is <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, the function will retrieve the total number of chunks stored for the dataset.</p>
<p><code class="param">fspace_id</code> specifies the file dataspace selection. It is intended to take <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> for specifying the current selection.</p>
<dl class="section note"><dt>Note</dt><dd>Please be aware that this function currently does not support non-trivial selections, thus <code class="param">fspace_id</code> has no effect. Also, the implementation does not handle the <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> macro correctly. As a workaround, application can get the dataspace for the dataset using <a class="el" href="#gad42a46be153d895d8c28a11ebf5a0d0a" title="Returns an identifier for a copy of the dataspace for a dataset.">H5Dget_space()</a> and pass that in for <code class="param">fspace_id</code>. This will be fixed in a future release.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.5 </dd></dl>
</div>
</div>
<a id="ga70ce7ab523b06c6c6a93fb28e916c2b3" name="ga70ce7ab523b06c6c6a93fb28e916c2b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga70ce7ab523b06c6c6a93fb28e916c2b3">&#9670;&#160;</a></span>H5Dget_offset()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="_h5public_8h.html#a8c86e866f40d7167cf9a1934c72b856f">haddr_t</a> H5Dget_offset </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns dataset address in file. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the offset in bytes; otherwise, returns <a class="el" href="_h5public_8h.html#a676244a60b85ee8bbd111afd4a8fce3c">HADDR_UNDEF</a>, a negative value.</dd></dl>
<p><a class="el" href="#ga70ce7ab523b06c6c6a93fb28e916c2b3" title="Returns dataset address in file.">H5Dget_offset()</a> returns the address in the file of the dataset, <code class="param">dset_id</code>. That address is expressed as the offset in bytes from the beginning of the file.</p>
<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl>
</div>
</div>
<a id="gad42a46be153d895d8c28a11ebf5a0d0a" name="gad42a46be153d895d8c28a11ebf5a0d0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad42a46be153d895d8c28a11ebf5a0d0a">&#9670;&#160;</a></span>H5Dget_space()</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> H5Dget_space </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an identifier for a copy of the dataspace for a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataspace 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="#gad42a46be153d895d8c28a11ebf5a0d0a" title="Returns an identifier for a copy of the dataspace for a dataset.">H5Dget_space()</a> makes a copy of the dataspace of the dataset specified by <code class="param">dset_id</code>. The function returns an identifier for the new copy of the dataspace.</p>
<p>A dataspace identifier returned from this function should be released with <a class="el" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1" title="Releases and terminates access to a dataspace.">H5Sclose()</a> when the identifier is no longer needed so that resource leaks will not occur.</p>
<dl class="section since"><dt>Since</dt><dd>1.0.0</dd></dl>
<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"> {</div>
<div class="line"> __label__ fail_update, fail_fspace, fail_dset, fail_file;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset, fspace;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>;</div>
<div class="line"> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"> <span class="keywordtype">int</span> new_elts[6][2] = {{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}};</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// get the dataset&#39;s dataspace</span></div>
<div class="line"> <span class="keywordflow">if</span> ((fspace = <a class="code hl_function" href="#gad42a46be153d895d8c28a11ebf5a0d0a">H5Dget_space</a>(dset)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// select the first 5 elements in odd positions</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___h5_s.html#ga6adfdf1b95dc108a65bf66e97d38536d">H5Sselect_hyperslab</a>(fspace, <a class="code hl_enumvalue" href="_h5_spublic_8h.html#a10093bab27cc5720efdab3186993da0fab90faf3dc59ecf6f28197ef471141550">H5S_SELECT_SET</a>, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){1}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){2}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){5},</div>
<div class="line"> NULL) &lt; 0) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_update;</div>
<div class="line"> }</div>
<div class="line"> </div>
<div class="line"> <span class="comment">// (implicitly) select and write the first 5 elements of the second column of NEW_ELTS</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga98f44998b67587662af8b0d8a0a75906">H5Dwrite</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, fspace, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, new_elts) &lt; 0)</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> </div>
<div class="line">fail_update:</div>
<div class="line"> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(fspace);</div>
<div class="line">fail_fspace:</div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line">fail_dset:</div>
<div class="line"> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line">fail_file:;</div>
<div class="line"> }</div>
</div><!-- fragment --></dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1" title="Releases and terminates access to a dataspace.">H5Sclose()</a> </dd></dl>
</div>
</div>
<a id="ga7639ef5c12cb906c71670ce73b856a4c" name="ga7639ef5c12cb906c71670ce73b856a4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7639ef5c12cb906c71670ce73b856a4c">&#9670;&#160;</a></span>H5Dget_space_status()</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> H5Dget_space_status </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="_h5_dpublic_8h.html#a28e60d50e4eaeef27130829f66e39c7a">H5D_space_status_t</a> *</td> <td class="paramname"><span class="paramname"><em>allocation</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines whether space has been allocated for a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">allocation</td><td>Space allocation status</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="#ga7639ef5c12cb906c71670ce73b856a4c" title="Determines whether space has been allocated for a dataset.">H5Dget_space_status()</a> determines whether space has been allocated for the dataset <code class="param">dset_id</code>.</p>
<dl class="section note"><dt>Note</dt><dd><b>BUG:</b> Prior to the HDF5 1.14.0, 1.12.2 and 1.10.9 releases, <a class="el" href="#ga7639ef5c12cb906c71670ce73b856a4c" title="Determines whether space has been allocated for a dataset.">H5Dget_space_status()</a> may return incorrect space allocation status values for datasets with filters applied to them. <a class="el" href="#ga7639ef5c12cb906c71670ce73b856a4c" title="Determines whether space has been allocated for a dataset.">H5Dget_space_status()</a> calculated the space allocation status by comparing the sum of the sizes of all the allocated chunks in the dataset against the total data size of the dataset, as calculated by the number of elements in the dataset's dataspace multiplied by the dataset's datatype size. If the dataset had any compression filters applied to it and the dataset chunks were successfully compressed, the sum of the sizes of the allocated dataset chunks would generally always be less than the total data size of the dataset, and <a class="el" href="#ga7639ef5c12cb906c71670ce73b856a4c" title="Determines whether space has been allocated for a dataset.">H5Dget_space_status()</a> wouldn't ever return <code>H5D_SPACE_STATUS_ALLOCATED</code>.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.6.0 </dd></dl>
</div>
</div>
<a id="gafb249479a493e80891f0c7f5d8a91b00" name="gafb249479a493e80891f0c7f5d8a91b00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafb249479a493e80891f0c7f5d8a91b00">&#9670;&#160;</a></span>H5Dget_storage_size()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> H5Dget_storage_size </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the amount of storage allocated for a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the amount of storage space, in bytes, or 0 (zero).</dd></dl>
<p><a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00" title="Returns the amount of storage allocated for a dataset.">H5Dget_storage_size()</a> returns the amount of storage, in bytes, that is allocated in the file for the raw data of the dataset specified by <code class="param">dset_id</code>. <a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00" title="Returns the amount of storage allocated for a dataset.">H5Dget_storage_size()</a> reports only the space required to store the dataset elements, excluding any metadata. </p><ul>
<li>For contiguous datasets, the returned size equals the current allocated size of the raw data. </li>
<li>For unfiltered chunked datasets, the returned size is the number of allocated chunks times the chunk size. </li>
<li>For filtered chunked datasets, the returned size is the space required to store the filtered data. For example, if a compression filter is in use, <a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00" title="Returns the amount of storage allocated for a dataset.">H5Dget_storage_size()</a> will return the total space required to store the compressed chunks.</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>Note that <a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00" title="Returns the amount of storage allocated for a dataset.">H5Dget_storage_size()</a> is not generally an appropriate function to use when determining the amount of memory required to work with a dataset. In such circumstances, you must determine the number of data points in a dataset and the size of an individual dataset element. <a class="el" href="group___h5_s.html#ga9d369fe1e01a95710d320bc5fd32cf83" title="Determines the number of elements in a dataspace.">H5Sget_simple_extent_npoints()</a> and <a class="el" href="group___h5_t.html#ga1b971589cd7a86f3e84affdee455564e" title="Returns the size of a datatype.">H5Tget_size()</a> can be used to calculate that amount.</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd><a class="el" href="#gafb249479a493e80891f0c7f5d8a91b00" title="Returns the amount of storage allocated for a dataset.">H5Dget_storage_size()</a> does not differentiate between 0 (zero), the value returned for the storage size of a dataset with no stored values, and 0 (zero), the value returned to indicate an error.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.2.0 </dd></dl>
</div>
</div>
<a id="ga7cd04b8332e8a0939b9973fbc500cadb" name="ga7cd04b8332e8a0939b9973fbc500cadb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7cd04b8332e8a0939b9973fbc500cadb">&#9670;&#160;</a></span>H5Dget_type()</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> H5Dget_type </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an identifier for a copy of the datatype for a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a datatype 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="#ga7cd04b8332e8a0939b9973fbc500cadb" title="Returns an identifier for a copy of the datatype for a dataset.">H5Dget_type()</a> returns an identifier of a copy of the datatype for a dataset.</p>
<p>If a dataset has a named datatype, then an identifier to the opened datatype is returned. Otherwise, the returned datatype is read-only.</p>
<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl>
</div>
</div>
<a id="ga71421c684884ab49765748720fe938db" name="ga71421c684884ab49765748720fe938db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga71421c684884ab49765748720fe938db">&#9670;&#160;</a></span>H5Diterate()</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> H5Diterate </td>
<td>(</td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="_h5_dpublic_8h.html#a56f5174d268c404666360192432b13b9">H5D_operator_t</a></td> <td class="paramname"><span class="paramname"><em>op</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>operator_data</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Iterates over all selected elements in a dataspace. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">buf</td><td>Buffer containing the elements to iterate over </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Function pointer </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">operator_data</td><td>User-defined data</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><b>Success:</b> The return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero. </dd>
<dd>
<b>Failure:</b> Negative if an error occurs in the library, or the negative value returned by one of the operators.</dd></dl>
<p><a class="el" href="#ga71421c684884ab49765748720fe938db" title="Iterates over all selected elements in a dataspace.">H5Diterate()</a> iterates over all the data elements in the memory buffer <code class="param">buf</code>, executing the callback function <code class="param">op</code> once for each such data element.</p>
<dl class="section attention"><dt>Attention</dt><dd>Unlike other HDF5 iterators, this iteration operation cannot be restarted at the point of exit; a second <a class="el" href="#ga71421c684884ab49765748720fe938db" title="Iterates over all selected elements in a dataspace.">H5Diterate()</a> call will always restart at the beginning.</dd></dl>
<dl class="section warning"><dt>Warning</dt><dd>Modifying the selection of <code class="param">space_id</code> during iteration will lead to undefined behavior.</dd></dl>
<dl class="section attention"><dt>Attention</dt><dd><b>Leaving callback functions:</b><br />
The callback function must return normally, even in the case of error. Returning with H5_ITER_ERROR, instead of leaving by means of exceptions, exit() function, etc... will allow the HDF5 library to manage its resources and maintain a consistent state. See <a class="el" href="_r_m.html#cpp_c_api_note">C++ Developers using HDF5 C-API functions</a> warning for detail.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="gabaf03a683e1da2c8dad6ba1010d55b81" name="gabaf03a683e1da2c8dad6ba1010d55b81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabaf03a683e1da2c8dad6ba1010d55b81">&#9670;&#160;</a></span>H5Dopen1()</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> H5Dopen1 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>loc_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Opens an existing dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">loc_id</td><td>Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the dataset to access</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset identifier if successful; otherwise returns <a class="el" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>.</dd></dl>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000016">Deprecated</a></b></dt><dd>Superseded by <a class="el" href="#ga04198c4cf0b849ed3a8921f6c7169ee2" title="Opens an existing dataset.">H5Dopen2()</a> or the macro <a class="el" href="_h5version_8h.html#a7dba2e5b2045f31c0932123ffb54f7a3">H5Dopen()</a>.</dd></dl>
<p><a class="el" href="#gabaf03a683e1da2c8dad6ba1010d55b81" title="Opens an existing dataset.">H5Dopen1()</a> opens an existing dataset for access at the location specified by <code class="param">loc_id</code>. <code class="param">loc_id</code> may be a file, group, dataset, named datatype or attribute. If an attribute, dataset, or named datatype is specified for loc_id then the dataset will be opened at the location where the attribute, dataset, or named datatype is attached. name is a dataset name and is used to identify the dataset in the file.</p>
<p>A dataset opened with this function should be closed with <a class="el" href="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a> when the dataset is no longer needed so that resource leaks will not develop.</p>
<dl class="section version"><dt>Version</dt><dd>1.8.0 Function <a class="el" href="_h5version_8h.html#a7dba2e5b2045f31c0932123ffb54f7a3">H5Dopen()</a> renamed to <a class="el" href="#gabaf03a683e1da2c8dad6ba1010d55b81" title="Opens an existing dataset.">H5Dopen1()</a> and deprecated in this release. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl>
</div>
</div>
<a id="ga04198c4cf0b849ed3a8921f6c7169ee2" name="ga04198c4cf0b849ed3a8921f6c7169ee2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga04198c4cf0b849ed3a8921f6c7169ee2">&#9670;&#160;</a></span>H5Dopen2()</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> H5Dopen2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>loc_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </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"><span class="paramname"><em>dapl_id</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Opens an existing dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">loc_id</td><td>Location identifier. The identifier may be that of a file, group, dataset, named datatype, or attribute. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Name of the dataset to open </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dapl_id</td><td>Dataset access property list identifier</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a dataset 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="#ga04198c4cf0b849ed3a8921f6c7169ee2" title="Opens an existing dataset.">H5Dopen2()</a> opens the existing dataset specified by a location identifier and name, <code class="param">loc_id</code> and <code class="param">name</code>, respectively.</p>
<p><code class="param">loc_id</code> may specify a file, group, dataset, named datatype, or attribute. If an attribute, dataset, or named datatype is specified then the dataset will be opened at the location where the attribute, dataset, or named datatype is attached.</p>
<dl class="section since"><dt>Since</dt><dd>1.8.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#gabf62045119f4e9c512d87d77f2f992df" title="Creates a new dataset and links it into the file.">H5Dcreate2()</a>, <a class="el" href="#gae47c3f38db49db127faf221624c30609" title="Closes the specified dataset.">H5Dclose()</a> </dd></dl>
</div>
</div>
<a id="ga8287d5a7be7b8e55ffeff68f7d26811c" name="ga8287d5a7be7b8e55ffeff68f7d26811c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8287d5a7be7b8e55ffeff68f7d26811c">&#9670;&#160;</a></span>H5Dread()</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> H5Dread </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>mem_type_id</em></span>, </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"><span class="paramname"><em>mem_space_id</em></span>, </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"><span class="paramname"><em>file_space_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads raw data from a dataset into a provided buffer. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier Identifier of the dataset to read from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_type_id</td><td>Identifier of the memory datatype </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_space_id</td><td>Identifier of the memory dataspace </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">file_space_id</td><td>Identifier of the dataset's dataspace in the file </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Identifier of a transfer property list </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Buffer to receive data read from 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="#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a> reads a dataset, specified by its identifier <code class="param">dset_id</code>, from the file into an application memory buffer <code class="param">buf</code>. Data transfer properties are defined by the argument <code class="param">dxpl_id</code>. The memory datatype of the (partial) dataset is identified by the identifier <code class="param">mem_type_id</code>. The part of the dataset to read is defined by <code class="param">mem_space_id</code> and <code class="param">file_space_id</code>.</p>
<p><code class="param">file_space_id</code> is used to specify only the selection within the file dataset's dataspace. Any dataspace specified in <code class="param">file_space_id</code> is ignored by the library and the dataset's dataspace is always used. <code class="param">file_space_id</code> can be the constant <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, which indicates that the entire file dataspace, as defined by the current dimensions of the dataset, is to be selected.</p>
<p><code class="param">mem_space_id</code> is used to specify both the memory dataspace and the selection within that dataspace. <code class="param">mem_space_id</code> can be the constant <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, in which case the file dataspace is used for the memory dataspace and the selection defined with <code class="param">file_space_id</code> is used for the selection within that dataspace.</p>
<p>The number of elements selected in the memory dataspace <em>must</em> be equal to the number of elements selected in the file dataspace.</p>
<p>The behavior of the library for the various combinations of valid dataspace identifiers and <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> for the <code class="param">mem_space_id</code> and the <code class="param">file_space_id</code> parameters is described below:</p>
<table class="doxtable">
<tr>
<th>mem_space_id </th><th>file_space_id </th><th>Behavior </th></tr>
<tr>
<td>valid dataspace ID </td><td>valid dataspace ID </td><td><code class="param">mem_space_id</code> specifies the memory dataspace and the selection within it. <code class="param">file_space_id</code> specifies the selection within the file dataset's dataspace. </td></tr>
<tr>
<td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td>valid dataspace ID </td><td>The file dataset's dataspace is used for the memory dataspace and the selection specified with <code class="param">file_space_id</code> specifies the selection within it. The combination of the file dataset's dataspace and the selection from <code class="param">file_space_id</code> is used for memory also. </td></tr>
<tr>
<td>valid dataspace ID </td><td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td><code class="param">mem_space_id</code> specifies the memory dataspace and the selection within it. The selection within the file dataset's dataspace is set to the "all" selection. </td></tr>
<tr>
<td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td>The file dataset's dataspace is used for the memory dataspace and the selection within the memory dataspace is set to the "all" selection. The selection within the file dataset's dataspace is set to the "all" selection. </td></tr>
</table>
<dl class="section note"><dt>Note</dt><dd>If no storage space was allocated for the dataset and a fill value is defined, the returned buffer <code class="param">buf</code> is filled with the fill value.</dd></dl>
<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"> {</div>
<div class="line"> __label__ fail_dset, fail_file;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a1c406ffa89f4acf5a332144a2683d394">H5F_ACC_RDONLY</a>;</div>
<div class="line"> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"> <span class="comment">// assume a priori knowledge of dataset name and size</span></div>
<div class="line"> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"> <span class="keywordtype">int</span> elts[10];</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// read all dataset elements</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga8287d5a7be7b8e55ffeff68f7d26811c">H5Dread</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, elts) &lt; 0)</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> </div>
<div class="line"> <span class="comment">// do something w/ the dataset elements</span></div>
<div class="line"> </div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line">fail_dset:</div>
<div class="line"> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line">fail_file:;</div>
<div class="line"> }</div>
</div><!-- fragment --></dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0 </dd></dl>
</div>
</div>
<a id="gad3b9b3024ca4ab7eb7fe6872088398f3" name="gad3b9b3024ca4ab7eb7fe6872088398f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad3b9b3024ca4ab7eb7fe6872088398f3">&#9670;&#160;</a></span>H5Dread_chunk1()</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> H5Dread_chunk1 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t *</td> <td class="paramname"><span class="paramname"><em>filters</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a raw data chunk directly from a dataset in a file into a buffer. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Dataset transfer property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Logical position of the chunk's first element in the dataspace </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">filters</td><td>Mask for identifying the filters in use </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Buffer containing data to be read from the chunk</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="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000019">Deprecated</a></b></dt><dd>Superseded by <a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> or the macro <a class="el" href="_h5version_8h.html#a8ff3b0cf52e30e2e12d617aa2329486e">H5Dread_chunk()</a>.</dd></dl>
<p><a class="el" href="#gad3b9b3024ca4ab7eb7fe6872088398f3" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk1()</a> reads a raw data chunk as specified by its logical offset <code class="param">offset</code> in a chunked dataset <code class="param">dset_id</code> from the dataset in the file into the application memory buffer <code class="param">buf</code>. The data in <code class="param">buf</code> is read directly from the file bypassing the library's internal data transfer pipeline, including filters.</p>
<p><code class="param">offset</code> is an array specifying the logical position of the first element of the chunk in the dataset's dataspace. The length of the <code class="param">offset</code> array must equal the number of dimensions, or rank, of the dataspace. The values in <code class="param">offset</code> must not exceed the dimension limits and must specify a point that falls on a dataset chunk boundary.</p>
<p>The mask <code class="param">filters</code> indicates which filters were used when the chunk was written. A zero value (all bits 0) indicates that all enabled filters are applied on the chunk. A filter is skipped if the bit corresponding to the filter's position in the pipeline (0 ≤ position &lt; 32) is turned on.</p>
<p><code class="param">buf</code> is the memory buffer containing the chunk read from the dataset in the file.</p>
<dl class="section attention"><dt>Attention</dt><dd>It is strongly recommended to use <a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> instead of this function due to the potential for memory corruption. During the typical usage pattern of this function, the application has no way of knowing the size of the chunk on disk, or even a maximum size (filters can increase the size of a chunk). The library also has no way of knowing the size of <code class="param">buf</code>, so there is a potential for the library to write past the end of the buffer. The only general way to avoid this problem, besides upgrading to <a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a>, is to query the chunk size beforehand, which can be expensive.</dd>
<dd>
Exercise caution when using <a class="el" href="#gad3b9b3024ca4ab7eb7fe6872088398f3" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk1()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a>, as they read and write data chunks directly in a file. <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> bypasses hyperslab selection, the conversion of data from one datatype to another, and the filter pipeline to write the chunk. Developers should have experience with these processes before using this function. Please see <a class="el" href="_h5_d_o__u_g.html#subsec_hldo_direct_chunk_using">Using the Direct Chunk Write Function</a> for more information.</dd></dl>
<dl class="section note"><dt>Note</dt><dd><a class="el" href="#gad3b9b3024ca4ab7eb7fe6872088398f3" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk1()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> are currently not supported with parallel HDF5 and do not support variable-length datatypes.</dd></dl>
<dl class="section version"><dt>Version</dt><dd>2.0.0 Function was deprecated</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="ga217c9d411dfd4c0732213c7cbd98164c" name="ga217c9d411dfd4c0732213c7cbd98164c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga217c9d411dfd4c0732213c7cbd98164c">&#9670;&#160;</a></span>H5Dread_chunk2()</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> H5Dread_chunk2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t *</td> <td class="paramname"><span class="paramname"><em>filters</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t *</td> <td class="paramname"><span class="paramname"><em>buf_size</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a raw data chunk directly from a dataset in a file into a buffer. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Dataset transfer property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Logical position of the chunk's first element in the dataspace </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">filters</td><td>Mask for identifying the filters in use </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Buffer containing data to be read from the chunk </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">buf_size</td><td>Size of buf in bytes</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="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> reads a raw data chunk as specified by its logical offset <code class="param">offset</code> in a chunked dataset <code class="param">dset_id</code> from the dataset in the file into the application memory buffer <code class="param">buf</code>. The data in <code class="param">buf</code> is read directly from the file bypassing the library's internal data transfer pipeline, including filters.</p>
<p><code class="param">offset</code> is an array specifying the logical position of the first element of the chunk in the dataset's dataspace. The length of the <code class="param">offset</code> array must equal the number of dimensions, or rank, of the dataspace. The values in <code class="param">offset</code> must not exceed the dimension limits and must specify a point that falls on a dataset chunk boundary.</p>
<p>The mask <code class="param">filters</code> indicates which filters were used when the chunk was written. A zero value (all bits 0) indicates that all enabled filters are applied on the chunk. A filter is skipped if the bit corresponding to the filter's position in the pipeline (0 ≤ position &lt; 32) is turned on.</p>
<p><code class="param">buf</code> is the memory buffer containing the chunk read from the dataset in the file.</p>
<p><code class="param">buf_size</code> must be passed as a pointer to a variable holding the allocated size, in bytes, of the memory buffer <code class="param">buf</code>. On exit, <code class="param">*buf_size</code> is set to the buffer size needed to read the chunk, which is the same as the size of the chunk on disk. If the value of <code class="param">*buf_size</code> passed in was insufficient to read the entire, chunk, no data is read. <code class="param">buf</code> may be passed as NULL as long as <code class="param">*buf_size</code> is 0. <code class="param">filters</code> is always set by this function even if the chunk was not read.</p>
<dl class="section attention"><dt>Attention</dt><dd>Exercise caution when using <a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a>, as they read and write data chunks directly in a file. <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> bypasses hyperslab selection, the conversion of data from one datatype to another, and the filter pipeline to write the chunk. Developers should have experience with these processes before using this function. Please see <a class="el" href="_h5_d_o__u_g.html#subsec_hldo_direct_chunk_using">Using the Direct Chunk Write Function</a> for more information.</dd></dl>
<dl class="section note"><dt>Note</dt><dd><a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> are currently not supported with parallel HDF5 and do not support variable-length datatypes.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>2.0.0 </dd></dl>
</div>
</div>
<a id="ga8eb1c838aff79a17de385d0707709915" name="ga8eb1c838aff79a17de385d0707709915"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8eb1c838aff79a17de385d0707709915">&#9670;&#160;</a></span>H5Dread_multi()</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> H5Dread_multi </td>
<td>(</td>
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>count</em></span>, </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"><span class="paramname"><em>dset_id</em></span>[], </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"><span class="paramname"><em>mem_type_id</em></span>[], </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"><span class="paramname"><em>mem_space_id</em></span>[], </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"><span class="paramname"><em>file_space_id</em></span>[], </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>[]&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads raw data from a set of datasets into the provided buffers. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of datasets to read from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Identifiers of the datasets to read from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_type_id</td><td>Identifiers of the memory datatypes </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_space_id</td><td>Identifiers of the memory dataspaces </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">file_space_id</td><td>Identifiers of the datasets' dataspaces in the file </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Identifier of a transfer property list </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Buffers to receive data read from 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="#ga8eb1c838aff79a17de385d0707709915" title="Reads raw data from a set of datasets into the provided buffers.">H5Dread_multi()</a> reads data from <code class="param">count</code> datasets, whose identifiers are listed in the <code class="param">dset_id</code> array, from the file into multiple application memory buffers listed in the <code class="param">buf</code> array. Data transfer properties are defined by the argument <code class="param">dxpl_id</code>. The memory datatypes of each dataset are listed by identifier in the <code class="param">mem_type_id</code> array. The parts of each dataset to read are listed by identifier in the <code class="param">file_space_id</code> array, and the parts of each application memory buffer to read to are listed by identifier in the <code class="param">mem_space_id</code> array. All array parameters have length <code class="param">count</code>.</p>
<p>This function will produce the same results as <code class="param">count</code> calls to <a class="el" href="#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a>. Information listed in that function about the specifics of its behavior also applies to <a class="el" href="#ga8eb1c838aff79a17de385d0707709915" title="Reads raw data from a set of datasets into the provided buffers.">H5Dread_multi()</a>. By calling <a class="el" href="#ga8eb1c838aff79a17de385d0707709915" title="Reads raw data from a set of datasets into the provided buffers.">H5Dread_multi()</a> instead of multiple calls to <a class="el" href="#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a>, however, the library can in some cases pass information about the entire I/O operation to the file driver, which can improve performance.</p>
<p>All datasets must be in the same HDF5 file, and each unique dataset may only be listed once. If this function is called collectively in parallel, each rank must pass exactly the same list of datasets in <code class="param">dset_id</code> , though the other parameters may differ.</p>
<dl class="section since"><dt>Since</dt><dd>1.14.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ga8287d5a7be7b8e55ffeff68f7d26811c" title="Reads raw data from a dataset into a provided buffer.">H5Dread()</a> </dd></dl>
</div>
</div>
<a id="ga3c1ea7e5db3f62d9cf03dd62d1fb08da" name="ga3c1ea7e5db3f62d9cf03dd62d1fb08da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3c1ea7e5db3f62d9cf03dd62d1fb08da">&#9670;&#160;</a></span>H5Drefresh()</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> H5Drefresh </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Refreshes all buffers associated with a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset 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="#ga3c1ea7e5db3f62d9cf03dd62d1fb08da" title="Refreshes all buffers associated with a dataset.">H5Drefresh()</a> causes all buffers associated with a dataset to be cleared and immediately re-loaded with updated contents from disk.</p>
<p>This function essentially closes the dataset, evicts all metadata associated with it from the cache, and then re-opens the dataset. The reopened dataset is automatically re-registered with the same identifier.</p>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="ga3525b15235ba1fd415f988899e48dc5c" name="ga3525b15235ba1fd415f988899e48dc5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3525b15235ba1fd415f988899e48dc5c">&#9670;&#160;</a></span>H5Dscatter()</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> H5Dscatter </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_dpublic_8h.html#ab2ee7d6aecf3e37b3f22fd5075ecfc00">H5D_scatter_func_t</a></td> <td class="paramname"><span class="paramname"><em>op</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>op_data</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>dst_space_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>dst_buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Scatters data into a selection within a memory buffer. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Callback function which provides data to be scattered </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op_data</td><td>User-defined pointer to data required by op </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Identifier for the datatype describing the data in both the source and destination buffers </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dst_space_id</td><td>Identifier for the dataspace for destination </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">dst_buf</td><td>Destination buffer which the data will be scattered to</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="#ga3525b15235ba1fd415f988899e48dc5c" title="Scatters data into a selection within a memory buffer.">H5Dscatter()</a> retrieves data from the supplied callback <code class="param">op</code> and scatters it to the supplied buffer <code class="param">dst_buf</code> in a manner similar to data being written to a dataset.</p>
<p><code class="param">dst_space_id</code> is a dataspace that defines the extent of <code class="param">dst_buf</code> and the selection within it to scatter the data to.</p>
<p><code class="param">type_id</code> is the datatype of the data to be scattered in both the source and destination buffers.</p>
<p><code class="param">dst_buf</code> must be at least as large as the number of elements in the extent of <code class="param">dst_space_id</code> times the size in bytes of <code class="param">type_id</code>.</p>
<p>To retrieve the data to be scattered, <a class="el" href="#ga3525b15235ba1fd415f988899e48dc5c" title="Scatters data into a selection within a memory buffer.">H5Dscatter()</a> repeatedly calls <code class="param">op</code>, which should return a valid source buffer, until enough data to fill the selection has been retrieved.</p>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="gad31e1e0129f4520c531ce524de2a056f" name="gad31e1e0129f4520c531ce524de2a056f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad31e1e0129f4520c531ce524de2a056f">&#9670;&#160;</a></span>H5Dset_extent()</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> H5Dset_extent </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a></td> <td class="paramname"><span class="paramname"><em>size</em></span>[]&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Changes the sizes of a dataset's dimensions. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">size[]</td><td>Array containing the new magnitude of each dimension of the dataset</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="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> sets the current dimensions of the chunked dataset <code class="param">dset_id</code> to the sizes specified in size.</p>
<p><code class="param">size</code> is a 1-dimensional array with n elements, where <code class="param">n</code> is the rank of the dataset's current dataspace.</p>
<p>This function can be applied to the following datasets:</p><ul>
<li>A chunked dataset with unlimited dimensions</li>
<li>A chunked dataset with fixed dimensions if the new dimension sizes are less than the maximum sizes set with maxdims (see <a class="el" href="group___h5_s.html#ga8e35eea5738b4805856eac7d595254ae" title="Creates a new simple dataspace and opens it for access.">H5Screate_simple()</a>)</li>
<li>An external dataset with unlimited dimensions</li>
<li>An external dataset with fixed dimensions if the new dimension sizes are less than the maximum sizes set with <code class="param">maxdims</code> </li>
</ul>
<p>Note that external datasets are always contiguous and can be extended only along the first dimension.</p>
<p>Space on disk is immediately allocated for the new dataset extent if the dataset's space allocation time is set to <a class="el" href="_h5_dpublic_8h.html#aab70b464cf3c5fc931dce0c4fe98b3d2a3c461ed83e0af151ef8c44ec232368b6">H5D_ALLOC_TIME_EARLY</a>.</p>
<p>Fill values will be written to the dataset in either of the following situations, but not otherwise:</p>
<ul>
<li>If the dataset's fill time is set to <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aa85b225308b0a277c4dd6fed7ee465a72">H5D_FILL_TIME_IFSET</a> and a fill value is defined (see <a class="el" href="group___d_c_p_l.html#ga6bd822266b31f86551a9a1d79601b6a2" title="Sets the time when fill values are written to a dataset.">H5Pset_fill_time()</a> and <a class="el" href="group___d_c_p_l.html#ga4335bb45b35386daa837b4ff1b9cd4a4" title="Sets the fill value for a dataset.">H5Pset_fill_value()</a>)</li>
<li>If the dataset's fill time is set to <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aadd7bb84666434f7d1dc642e94c68eb28">H5D_FILL_TIME_ALLOC</a> (see <a class="el" href="group___d_c_p_l.html#ga85faefca58387bba409b65c470d7d851" title="Sets the timing for storage space allocation.">H5Pset_alloc_time()</a>)</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>If the sizes specified in <code class="param">size</code> array are smaller than the dataset's current dimension sizes, <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> will reduce the dataset's dimension sizes to the specified values. It is the user application's responsibility to ensure that valuable data is not lost as <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> does not check.</dd>
<dd>
Except for external datasets, <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> is for use with chunked datasets only, not contiguous datasets.</dd>
<dd>
A call to <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> affects the dataspace of a dataset. If a dataspace handle was opened for a dataset prior to a call to <a class="el" href="#gad31e1e0129f4520c531ce524de2a056f" title="Changes the sizes of a dataset&#39;s dimensions.">H5Dset_extent()</a> then that dataspace handle will no longer reflect the correct dataspace extent of the dataset. <a class="el" href="#gad42a46be153d895d8c28a11ebf5a0d0a" title="Returns an identifier for a copy of the dataspace for a dataset.">H5Dget_space()</a> must be called (after closing the previous handle) to obtain the current dataspace extent.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.8.0 </dd></dl>
</div>
</div>
<a id="ga0e97bbd8a8ee4a8b5b78ccce8547ce76" name="ga0e97bbd8a8ee4a8b5b78ccce8547ce76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0e97bbd8a8ee4a8b5b78ccce8547ce76">&#9670;&#160;</a></span>H5Dvlen_get_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> H5Dvlen_get_buf_size </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </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"><span class="paramname"><em>size</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Determines the number of bytes required to store variable-length (VL) data. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>Size in bytes of the memory buffer required to store the VL 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="#ga0e97bbd8a8ee4a8b5b78ccce8547ce76" title="Determines the number of bytes required to store variable-length (VL) data.">H5Dvlen_get_buf_size()</a> determines the number of bytes required to store the VL data from the dataset, using <code class="param">space_id</code> for the selection in the dataset on disk and the <code class="param">type_id</code> for the memory representation of the VL data in memory. <code class="param">size</code> is returned with the number of bytes required to store the VL data in memory.</p>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="ga222a2fd93868e2524b2e42c3c6146119" name="ga222a2fd93868e2524b2e42c3c6146119"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga222a2fd93868e2524b2e42c3c6146119">&#9670;&#160;</a></span>H5Dvlen_reclaim()</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> H5Dvlen_reclaim </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>type_id</em></span>, </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"><span class="paramname"><em>space_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reclaims variable-length (VL) datatype memory buffers. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">type_id</td><td>Datatype identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">space_id</td><td>Dataspace identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Dataset transfer property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf</td><td>Pointer to the buffer to be reclaimed</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="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000018">Deprecated</a></b></dt><dd>Superseded by <a class="el" href="group___v_l_e_n.html#ga6851783a68a0f868c27300cb5622fbbe" title="Reclaims the variable length (VL) datatype memory buffers.">H5Treclaim()</a>.</dd></dl>
<p><a class="el" href="#ga222a2fd93868e2524b2e42c3c6146119" title="Reclaims variable-length (VL) datatype memory buffers.">H5Dvlen_reclaim()</a> reclaims memory buffers created to store VL datatypes.</p>
<p>The <code class="param">type_id</code> must be the datatype stored in the buffer. The <code class="param">space_id</code> describes the selection for the memory buffer to free the VL datatypes within. The <code class="param">dxpl_id</code> is the dataset transfer property list that was used for the I/O transfer to create the buffer. And <code class="param">buf</code> is the pointer to the buffer to be reclaimed.</p>
<p>The VL structures (<a class="el" href="structhvl__t.html">hvl_t</a>) in the user's buffer are modified to zero out the VL information after the memory has been reclaimed.</p>
<p>If nested VL datatypes were used to create the buffer, this routine frees them from the bottom up, releasing all the memory without creating memory leaks.</p>
<dl class="section version"><dt>Version</dt><dd>1.12.0 Function was deprecated</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.2.0 </dd></dl>
</div>
</div>
<a id="ga98f44998b67587662af8b0d8a0a75906" name="ga98f44998b67587662af8b0d8a0a75906"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga98f44998b67587662af8b0d8a0a75906">&#9670;&#160;</a></span>H5Dwrite()</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> H5Dwrite </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>mem_type_id</em></span>, </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"><span class="paramname"><em>mem_space_id</em></span>, </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"><span class="paramname"><em>file_space_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes raw data from a buffer to a dataset. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Identifier of the dataset to read from </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_type_id</td><td>Identifier of the memory datatype </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_space_id</td><td>Identifier of the memory dataspace </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">file_space_id</td><td>Identifier of the dataset's dataspace in the file </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Dataset transfer property list identifier </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">buf</td><td>Buffer with data to be written to the 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="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> writes a (partial) dataset, specified by its identifier <code class="param">dset_id</code>, from the application memory buffer <code class="param">buf</code> into the file. Data transfer properties are defined by the argument <code class="param">dxpl_id</code>. The memory datatype of the (partial) dataset is identified by the identifier <code class="param">mem_type_id</code>. The part of the dataset to write is defined by <code class="param">mem_space_id</code> and <code class="param">file_space_id</code>.</p>
<p>If <code class="param">mem_type_id</code> is either a fixed-length or variable-length string, it is important to set the string length when defining the datatype. String datatypes are derived from <a class="el" href="group___p_d_t_s.html#ga7f6b6959fefe56d2e871659110936d2d">H5T_C_S1</a> (or <a class="el" href="group___p_d_t_s.html#ga62335f6f57c2809fa1b3b1f9472eb2f6">H5T_FORTRAN_S1</a> for Fortran codes), which defaults to 1 character in size. See <a class="el" href="group___h5_t.html#gae5f38bfd4a4c557496b3194b5180212c" title="Sets size for a datatype.">H5Tset_size()</a> and Creating variable-length string datatypes.</p>
<p><code class="param">file_space_id</code> is used to specify only the selection within the file dataset's dataspace. Any dataspace specified in <code class="param">file_space_id</code> is ignored by the library and the dataset's dataspace is always used. <code class="param">file_space_id</code> can be the constant <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, which indicates that the entire file dataspace, as defined by the current dimensions of the dataset, is to be selected.</p>
<p><code class="param">mem_space_id</code> is used to specify both the memory dataspace and the selection within that dataspace. mem_space_id can be the constant <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, in which case the file dataspace is used for the memory dataspace and the selection defined with <code class="param">file_space_id</code> is used for the selection within that dataspace.</p>
<p>The behavior of the library for the various combinations of valid dataspace IDs and <a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> for the mem_space_id and thefile_space_id parameters is described below:</p>
<table class="doxtable">
<tr>
<th><code>mem_space_id</code> </th><th><code>file_space_id</code> </th><th>Behavior </th></tr>
<tr>
<td>valid dataspace ID </td><td>valid dataspace ID </td><td><code class="param">mem_space_id</code> specifies the memory dataspace and the selection within it. <code class="param">file_space_id</code> specifies the selection within the file dataset's dataspace. </td></tr>
<tr>
<td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td>valid dataspace ID </td><td>The file dataset's dataspace is used for the memory dataspace and the selection specified with <code class="param">file_space_id</code> specifies the selection within it. The combination of the file dataset's dataspace and the selection from <code class="param">file_space_id</code> is used for memory also. valid dataspace ID </td></tr>
<tr>
<td>valid dataspace ID </td><td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td><code class="param">mem_space_id</code> specifies the memory dataspace and the selection within it. The selection within the file dataset's dataspace is set to "all" selection. </td></tr>
<tr>
<td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td><a class="el" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a> </td><td>The file dataset's dataspace is used for the memory dataspace and the selection within the memory dataspace is set to the "all" selection. The selection within the file dataset's dataspace is set to the "all" selection. </td></tr>
</table>
<p>Setting an "all" selection indicates that the entire dataspace, as defined by the current dimensions of a dataspace, will be selected. The number of elements selected in the memory dataspace must match the number of elements selected in the file dataspace.</p>
<p><code class="param">dxpl_id</code> can be the constant <a class="el" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, in which case the default data transfer properties are used.</p>
<p>Writing to a dataset will fail if the HDF5 file was not opened with write access permissions.</p>
<p>If the dataset's space allocation time is set to <a class="el" href="_h5_dpublic_8h.html#aab70b464cf3c5fc931dce0c4fe98b3d2a7c5fcb6f9c8adecf455939c3d625b7e8">H5D_ALLOC_TIME_LATE</a> or <a class="el" href="_h5_dpublic_8h.html#aab70b464cf3c5fc931dce0c4fe98b3d2ac898a96931fd3402d9e5646690c77636">H5D_ALLOC_TIME_INCR</a> and the space for the dataset has not yet been allocated, that space is allocated when the first raw data is written to the dataset. Unused space in the dataset will be written with fill values at the same time if the dataset's fill time is set to <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aa85b225308b0a277c4dd6fed7ee465a72">H5D_FILL_TIME_IFSET</a> or <a class="el" href="_h5_dpublic_8h.html#aa39293626c4e68dd28b06c0dc84bde4aadd7bb84666434f7d1dc642e94c68eb28">H5D_FILL_TIME_ALLOC</a>.</p>
<dl class="section attention"><dt>Attention</dt><dd>If you are planning to use compression with parallel HDF5, ensure that calls to <a class="el" href="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> occur in collective mode. In other words, all MPI ranks (in the relevant communicator) call <a class="el" href="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> and pass a dataset transfer property list with the MPI-IO collective option property set to <a class="el" href="_h5_f_dmpi_8h.html#afaf7d5667632176e8daca47549e29fb8a3816f1011586f6f6f57ce6c2a6c2fcbe">H5FD_MPIO_COLLECTIVE_IO</a>.<br />
Note that data transformations are currently <b>not</b> supported when writing to datasets in parallel and with compression enabled.</dd>
<dd>
If a dataset's storage layout is 'compact', care must be taken when writing data to the dataset in parallel. A compact dataset's raw data is cached in memory and may be flushed to the file from any of the parallel processes, so parallel applications should always attempt to write identical data to the dataset from all processes.</dd></dl>
<dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"> {</div>
<div class="line"> __label__ fail_update, fail_fspace, fail_dset, fail_file;</div>
<div class="line"> <a class="code hl_typedef" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a> file, dset, fspace;</div>
<div class="line"> </div>
<div class="line"> <span class="keywordtype">unsigned</span> mode = <a class="code hl_define" href="_h5_fpublic_8h.html#a402673dec5c537b27a49a9a8bd6140b4">H5F_ACC_RDWR</a>;</div>
<div class="line"> <span class="keywordtype">char</span> file_name[] = <span class="stringliteral">&quot;d1.h5&quot;</span>;</div>
<div class="line"> <span class="keywordtype">char</span> dset_name[] = <span class="stringliteral">&quot;σύνολο/δεδομένων&quot;</span>;</div>
<div class="line"> <span class="keywordtype">int</span> new_elts[6][2] = {{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}};</div>
<div class="line"> </div>
<div class="line"> <span class="keywordflow">if</span> ((file = <a class="code hl_function" href="group___h5_f.html#gaa3f4f877b9bb591f3880423ed2bf44bc">H5Fopen</a>(file_name, mode, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_file;</div>
<div class="line"> }</div>
<div class="line"> <span class="keywordflow">if</span> ((dset = <a class="code hl_function" href="#ga04198c4cf0b849ed3a8921f6c7169ee2">H5Dopen2</a>(file, dset_name, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_dset;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// get the dataset&#39;s dataspace</span></div>
<div class="line"> <span class="keywordflow">if</span> ((fspace = <a class="code hl_function" href="#gad42a46be153d895d8c28a11ebf5a0d0a">H5Dget_space</a>(dset)) == <a class="code hl_define" href="_h5_ipublic_8h.html#a01eab13dccc91afd6909d74dccb780ba">H5I_INVALID_HID</a>) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_fspace;</div>
<div class="line"> }</div>
<div class="line"> <span class="comment">// select the first 5 elements in odd positions</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="group___h5_s.html#ga6adfdf1b95dc108a65bf66e97d38536d">H5Sselect_hyperslab</a>(fspace, <a class="code hl_enumvalue" href="_h5_spublic_8h.html#a10093bab27cc5720efdab3186993da0fab90faf3dc59ecf6f28197ef471141550">H5S_SELECT_SET</a>, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){1}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){2}, (<a class="code hl_typedef" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a>[]){5},</div>
<div class="line"> NULL) &lt; 0) {</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> <span class="keywordflow">goto</span> fail_update;</div>
<div class="line"> }</div>
<div class="line"> </div>
<div class="line"> <span class="comment">// (implicitly) select and write the first 5 elements of the second column of NEW_ELTS</span></div>
<div class="line"> <span class="keywordflow">if</span> (<a class="code hl_function" href="#ga98f44998b67587662af8b0d8a0a75906">H5Dwrite</a>(dset, <a class="code hl_define" href="group___p_d_t_n_a_t.html#ga3cf93ffc6782be68070ef8e00f219ec2">H5T_NATIVE_INT</a>, <a class="code hl_define" href="_h5_spublic_8h.html#a5f96eeee84b987f18470737f85af0484">H5S_ALL</a>, fspace, <a class="code hl_define" href="_h5_ppublic_8h.html#afa85e97bfbf9bf1c58e39263846c568f">H5P_DEFAULT</a>, new_elts) &lt; 0)</div>
<div class="line"> ret_val = EXIT_FAILURE;</div>
<div class="line"> </div>
<div class="line">fail_update:</div>
<div class="line"> <a class="code hl_function" href="group___h5_s.html#ga2b53128a39c8f104c1c9c2a91590fcc1">H5Sclose</a>(fspace);</div>
<div class="line">fail_fspace:</div>
<div class="line"> <a class="code hl_function" href="#gae47c3f38db49db127faf221624c30609">H5Dclose</a>(dset);</div>
<div class="line">fail_dset:</div>
<div class="line"> <a class="code hl_function" href="group___h5_f.html#gac55cd91d80822e4f8c2a7f04ea71b124">H5Fclose</a>(file);</div>
<div class="line">fail_file:;</div>
<div class="line"> }</div>
</div><!-- fragment --></dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.0.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group___d_c_p_l.html#ga6bd822266b31f86551a9a1d79601b6a2" title="Sets the time when fill values are written to a dataset.">H5Pset_fill_time()</a>, <a class="el" href="group___d_c_p_l.html#ga85faefca58387bba409b65c470d7d851" title="Sets the timing for storage space allocation.">H5Pset_alloc_time()</a> </dd></dl>
</div>
</div>
<a id="ga416ccd200929b11386a10e9024977109" name="ga416ccd200929b11386a10e9024977109"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga416ccd200929b11386a10e9024977109">&#9670;&#160;</a></span>H5Dwrite_chunk()</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> H5Dwrite_chunk </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_h5_ipublic_8h.html#a0045db7ff9c22ad35db6ae91662e1943">hid_t</a></td> <td class="paramname"><span class="paramname"><em>dset_id</em></span>, </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t</td> <td class="paramname"><span class="paramname"><em>filters</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_h5public_8h.html#a7f81cce70fb546af88da24d9285d3c1c">hsize_t</a> *</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>data_size</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes a raw data chunk from a buffer directly to a dataset in a file. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Dataset identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Dataset transfer property list identifier </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">filters</td><td>Mask for identifying the filters in use </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>Logical position of the chunk's first element in the dataspace </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">data_size</td><td>Size of the actual data to be written in bytes </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf</td><td>Buffer containing data to be written to the chunk</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="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> writes a raw data chunk as specified by its logical offset <code class="param">offset</code> in a chunked dataset <code class="param">dset_id</code> from the application memory buffer <code class="param">buf</code> to the dataset in the file. Typically, the data in <code class="param">buf</code> is preprocessed in memory by a custom transformation, such as compression. The chunk will bypass the library's internal data transfer pipeline, including filters, and will be written directly to the file. Only one chunk can be written with this function.</p>
<p><code class="param">filters</code> is a mask providing a record of which filters are used with the chunk. The default value of the mask is zero (0), indicating that all enabled filters are applied. A filter is skipped if the bit corresponding to the filter's position in the pipeline (0 ≤ position &lt; 32) is turned on. This mask is saved with the chunk in the file.</p>
<p><code class="param">offset</code> is an array specifying the logical position of the first element of the chunk in the dataset's dataspace. The length of the offset array must equal the number of dimensions, or rank, of the dataspace. The values in offset must not exceed the dimension limits and must specify a point that falls on a dataset chunk boundary.</p>
<p><code class="param">data_size</code> is the size in bytes of the chunk, representing the number of bytes to be read from the buffer <code class="param">buf</code>. If the data chunk has been precompressed, <code class="param">data_size</code> should be the size of the compressed data.</p>
<p><code class="param">buf</code> is the memory buffer containing data to be written to the chunk in the file.</p>
<dl class="section attention"><dt>Attention</dt><dd>Exercise caution when using <a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a>, as they read and write data chunks directly in a file. <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> bypasses hyperslab selection, the conversion of data from one datatype to another, and the filter pipeline to write the chunk. Developers should have experience with these processes before using this function.</dd></dl>
<dl class="section note"><dt>Note</dt><dd><a class="el" href="#ga217c9d411dfd4c0732213c7cbd98164c" title="Reads a raw data chunk directly from a dataset in a file into a buffer.">H5Dread_chunk2()</a> and <a class="el" href="#ga416ccd200929b11386a10e9024977109" title="Writes a raw data chunk from a buffer directly to a dataset in a file.">H5Dwrite_chunk()</a> are currently not supported with parallel HDF5 and do not support variable-length types.</dd></dl>
<dl class="section since"><dt>Since</dt><dd>1.10.2 </dd></dl>
</div>
</div>
<a id="gaf6213bf3a876c1741810037ff2bb85d8" name="gaf6213bf3a876c1741810037ff2bb85d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf6213bf3a876c1741810037ff2bb85d8">&#9670;&#160;</a></span>H5Dwrite_multi()</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> H5Dwrite_multi </td>
<td>(</td>
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>count</em></span>, </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"><span class="paramname"><em>dset_id</em></span>[], </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"><span class="paramname"><em>mem_type_id</em></span>[], </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"><span class="paramname"><em>mem_space_id</em></span>[], </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"><span class="paramname"><em>file_space_id</em></span>[], </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"><span class="paramname"><em>dxpl_id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>buf</em></span>[]&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes raw data from a set buffers to a set of datasets. </p>
<hr />
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of datasets to write to </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dset_id</td><td>Identifiers of the datasets to write to </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_type_id</td><td>Identifiers of the memory datatypes </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_space_id</td><td>Identifiers of the memory dataspaces </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">file_space_id</td><td>Identifiers of the datasets' dataspaces in the file </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">dxpl_id</td><td>Identifier of a transfer property list </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf</td><td>Buffers with data to be written to the 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="#gaf6213bf3a876c1741810037ff2bb85d8" title="Writes raw data from a set buffers to a set of datasets.">H5Dwrite_multi()</a> writes data to <code class="param">count</code> datasets, whose identifiers are listed in the <code class="param">dset_id</code> array, from multiple application memory buffers listed in the <code class="param">buf</code> array. Data transfer properties are defined by the argument <code class="param">dxpl_id</code>. The memory datatypes of each dataset are listed by identifier in the <code class="param">mem_type_id</code> array. The parts of each dataset to write are listed by identifier in the <code class="param">file_space_id</code> array, and the parts of each application memory buffer to write from are listed by identifier in the <code class="param">mem_space_id</code> array. All array parameters have length <code class="param">count</code>.</p>
<p>This function will produce the same results as <code class="param">count</code> calls to <a class="el" href="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a>. Information listed in that function's documentation about the specifics of its behaviour also apply to <a class="el" href="#gaf6213bf3a876c1741810037ff2bb85d8" title="Writes raw data from a set buffers to a set of datasets.">H5Dwrite_multi()</a>. By calling <a class="el" href="#gaf6213bf3a876c1741810037ff2bb85d8" title="Writes raw data from a set buffers to a set of datasets.">H5Dwrite_multi()</a> instead of multiple calls to <a class="el" href="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a>, however, the library can in some cases pass information about the entire I/O operation to the file driver, which can improve performance.</p>
<p>All datasets must be in the same HDF5 file, and each unique dataset may only be listed once. If this function is called collectively in parallel, each rank must pass exactly the same list of datasets in <code class="param">dset_id</code> , though the other parameters may differ.</p>
<dl class="section since"><dt>Since</dt><dd>1.14.0</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ga98f44998b67587662af8b0d8a0a75906" title="Writes raw data from a buffer to a dataset.">H5Dwrite()</a> </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 by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
</ul>
</div>
</body>
</html>