mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
0bcd59f9b8
Correct information Description: Correct a some information about file creation properties.
7542 lines
298 KiB
HTML
7542 lines
298 KiB
HTML
<html>
|
||
<head><title>
|
||
HDF5/H5P API Specification
|
||
</title>
|
||
|
||
<!-- #BeginLibraryItem "/ed_libs/styles_RM.lbi" -->
|
||
|
||
<!--
|
||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||
* Copyright by the Board of Trustees of the University of Illinois. *
|
||
* All rights reserved. *
|
||
* *
|
||
* This file is part of HDF5. The full HDF5 copyright notice, including *
|
||
* terms governing use, modification, and redistribution, is contained in *
|
||
* the files COPYING and Copyright.html. COPYING can be found at the root *
|
||
* of the source code distribution tree; Copyright.html can be found at the *
|
||
* root level of an installed copy of the electronic HDF5 document set and *
|
||
* is linked from the top-level documents page. It can also be found at *
|
||
* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
|
||
* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
|
||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||
-->
|
||
|
||
<link href="ed_styles/RMelect.css" rel="stylesheet" type="text/css">
|
||
<!-- #EndLibraryItem --></head>
|
||
|
||
<body bgcolor="#FFFFFF">
|
||
|
||
|
||
<!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" --><hr>
|
||
<center>
|
||
<table border=0 width=98%>
|
||
<tr><td valign=top align=left>
|
||
<a href="index.html">HDF5 documents and links</a> <br>
|
||
<a href="H5.intro.html">Introduction to HDF5</a> <br>
|
||
<a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User Guide</a> <br>
|
||
<!--
|
||
<a href="Glossary.html">Glossary</a><br>
|
||
-->
|
||
</td>
|
||
<td valign=top align=right>
|
||
And in this document, the
|
||
<a href="RM_H5Front.html">HDF5 Reference Manual</a>
|
||
<br>
|
||
<a href="RM_H5.html">H5</a>
|
||
<a href="RM_H5A.html">H5A</a>
|
||
<a href="RM_H5D.html">H5D</a>
|
||
<a href="RM_H5E.html">H5E</a>
|
||
<a href="RM_H5F.html">H5F</a>
|
||
<a href="RM_H5G.html">H5G</a>
|
||
<a href="RM_H5I.html">H5I</a>
|
||
<a href="RM_H5P.html">H5P</a>
|
||
<br>
|
||
<a href="RM_H5R.html">H5R</a>
|
||
<a href="RM_H5S.html">H5S</a>
|
||
<a href="RM_H5T.html">H5T</a>
|
||
<a href="RM_H5Z.html">H5Z</a>
|
||
<a href="Tools.html">Tools</a>
|
||
<a href="PredefDTypes.html">Datatypes</a>
|
||
</td></tr>
|
||
</table>
|
||
</center>
|
||
<hr>
|
||
<!-- #EndLibraryItem --><center>
|
||
<h1>H5P: Property List Interface</h1>
|
||
</center>
|
||
<h2>Property List API Functions</h2>
|
||
|
||
These functions manipulate property list objects to allow objects
|
||
which require many different parameters to be easily manipulated.
|
||
|
||
|
||
<p>
|
||
<strong>The C Interfaces:</strong>
|
||
|
||
<table border=0>
|
||
<tr><td valign=top>
|
||
|
||
<i>General Property List <br> Operations</i>
|
||
<ul>
|
||
<li><a href="#Property-Create">H5Pcreate</a>
|
||
<li><a href="#Property-GetClass">H5Pget_class</a>
|
||
<li><a href="#Property-Copy">H5Pcopy</a>
|
||
<li><a href="#Property-Close">H5Pclose</a>
|
||
</ul>
|
||
|
||
<p><i>Generic Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-CreateClass">H5Pcreate_class</a>
|
||
<li><a href="#Property-CreateList">H5Pcreate_list</a>
|
||
<li><a href="#Property-Register">H5Pregister</a>
|
||
<li><a href="#Property-Insert">H5Pinsert</a>
|
||
<li><a href="#Property-Set">H5Pset</a>
|
||
<li><a href="#Property-Exist">H5Pexist</a>
|
||
<li><a href="#Property-GetSize">H5Pget_size</a>
|
||
<li><a href="#Property-GetNProps">H5Pget_nprops</a>
|
||
<li><a href="#Property-GetClassName">H5Pget_class_name</a>
|
||
<li><a href="#Property-GetClassParent">H5Pget_class_parent</a>
|
||
<li><a href="#Property-IsAClass">H5Pisa_class</a>
|
||
<li><a href="#Property-Get">H5Pget</a>
|
||
<li><a href="#Property-Equal">H5Pequal</a>
|
||
<li><a href="#Property-Iterate">H5Piterate</a>
|
||
<li><a href="#Property-CopyProp">H5Pcopy_prop</a>
|
||
<li><a href="#Property-Remove">H5Premove</a>
|
||
<li><a href="#Property-Unregister">H5Punregister</a>
|
||
<li><a href="#Property-CloseList">H5Pclose_list</a>
|
||
<li><a href="#Property-CloseClass">H5Pclose_class</a>
|
||
</ul>
|
||
|
||
<p><i>File Creation Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-GetVersion">H5Pget_version</a>
|
||
<li><a href="#Property-SetUserblock">H5Pset_userblock</a>
|
||
<li><a href="#Property-GetUserblock">H5Pget_userblock</a>
|
||
<li><a href="#Property-SetSizes">H5Pset_sizes</a>
|
||
<li><a href="#Property-GetSizes">H5Pget_sizes</a>
|
||
<li><a href="#Property-SetSymK">H5Pset_sym_k</a>
|
||
<li><a href="#Property-GetSymK">H5Pget_sym_k</a>
|
||
<li><a href="#Property-SetIstoreK">H5Pset_istore_k</a>
|
||
<li><a href="#Property-GetIstoreK">H5Pget_istore_k</a>
|
||
</ul>
|
||
|
||
<i>File Close Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetFcloseDegree">H5Pset_fclose_degree</a>
|
||
<li><a href="#Property-GetFcloseDegree">H5Pget_fclose_degree</a>
|
||
</ul>
|
||
|
||
|
||
|
||
</td><td> </td><td valign=top>
|
||
|
||
<p></p><i>File Access Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetFaplCore">H5Pset_fapl_core</a>
|
||
<li><a href="#Property-GetFaplCore">H5Pget_fapl_core</a>
|
||
<li><a href="#Property-SetFaplFamily">H5Pset_fapl_family</a>
|
||
<li><a href="#Property-GetFaplFamily">H5Pget_fapl_family</a>
|
||
<li><a href="#Property-SetFamilyOffset">H5Pset_family_offset</a>
|
||
<li><a href="#Property-GetFamilyOffset">H5Pget_family_offset</a>
|
||
<li><a href="#Property-SetFaplLog">H5Pset_fapl_log</a>
|
||
<li><a href="#Property-SetFaplMpio">H5Pset_fapl_mpio</a> ||
|
||
<li><a href="#Property-GetFaplMpio">H5Pget_fapl_mpio</a> ||
|
||
<li><a href="#Property-SetFaplMpiPosix">H5Pset_fapl_mpiposix</a> ||
|
||
<li><a href="#Property-GetFaplMpiPosix">H5Pget_fapl_mpiposix</a> ||
|
||
<li><a href="#Property-SetFaplMulti">H5Pset_fapl_multi</a>
|
||
<li><a href="#Property-GetFaplMulti">H5Pget_fapl_multi</a>
|
||
<li><a href="#Property-SetMultiType">H5Pset_multi_type</a>
|
||
<li><a href="#Property-GetMultiType">H5Pget_multi_type</a>
|
||
<li><a href="#Property-SetFaplSplit">H5Pset_fapl_split</a>
|
||
<li><a href="#Property-SetFaplSec2">H5Pset_fapl_sec2</a>
|
||
<li><a href="#Property-SetFaplStdio">H5Pset_fapl_stdio</a>
|
||
<li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>
|
||
<li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>
|
||
<!--<li><a href="#Property-SetDriver">H5Pset_driver</a> -->
|
||
<li><a href="#Property-GetDriver">H5Pget_driver</a>
|
||
<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>
|
||
<li><a href="#Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
|
||
<li><a href="#Property-GetMetaBlockSize">H5Pget_meta_block_size</a>
|
||
<li><a href="#Property-SetSieveBufSize">H5Pset_sieve_buf_size</a>
|
||
<li><a href="#Property-GetSieveBufSize">H5Pget_sieve_buf_size</a>
|
||
<li><a href="#Property-SetAlignment">H5Pset_alignment</a>
|
||
<li><a href="#Property-GetAlignment">H5Pget_alignment</a>
|
||
<li><a href="#Property-SetCache">H5Pset_cache</a>
|
||
<li><a href="#Property-GetCache">H5Pget_cache</a>
|
||
<li><a href="#Property-SetGCReferences">H5Pset_gc_references</a>
|
||
<li><a href="#Property-GetGCReferences">H5Pget_gc_references</a>
|
||
<li><a href="#Property-SetFaplGass">H5Pset_fapl_gass</a>
|
||
<li><a href="#Property-GetFaplGass">H5Pget_fapl_gass</a>
|
||
<li><a href="#Property-SetFaplSrb">H5Pset_fapl_srb</a>
|
||
<li><a href="#Property-GetFaplSrb">H5Pget_fapl_srb</a>
|
||
<!--
|
||
<li><a href="#Property-xxx">xxx</a>
|
||
<li><a href="#Property-xxx">xxx</a> ||
|
||
-->
|
||
</ul>
|
||
|
||
<br>
|
||
<br>
|
||
<br>
|
||
<br>
|
||
<br>
|
||
<br>
|
||
<br>
|
||
||
|
||
<i>Indicates functions <br>
|
||
|
||
available only in the <br>
|
||
|
||
parallel HDF5 library.</i>
|
||
|
||
</td><td> </td><td valign=top>
|
||
|
||
<i>Dataset Creation Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetLayout">H5Pset_layout</a>
|
||
<li><a href="#Property-GetLayout">H5Pget_layout</a>
|
||
<li><a href="#Property-SetChunk">H5Pset_chunk</a>
|
||
<li><a href="#Property-GetChunk">H5Pget_chunk</a>
|
||
<li><a href="#Property-SetDeflate">H5Pset_deflate</a>
|
||
<!--
|
||
<li><a href="#Property-GetDeflate">H5Pget_deflate</a>
|
||
<li><a href="#Property-SetCompression">H5Pset_compression</a>
|
||
<li><a href="#Property-GetCompression">H5Pget_compression</a>
|
||
-->
|
||
<li><a href="#Property-SetFillValue">H5Pset_fill_value</a>
|
||
<li><a href="#Property-GetFillValue">H5Pget_fill_value</a>
|
||
<li><a href="#Property-FillValueDefined">H5Pfill_value_defined</a>
|
||
<li><a href="#Property-SetFillTime">H5Pset_fill_time</a>
|
||
<li><a href="#Property-GetFillTime">H5Pget_fill_time</a>
|
||
<li><a href="#Property-SetAllocTime">H5Pset_alloc_time</a>
|
||
<li><a href="#Property-GetAllocTime">H5Pget_alloc_time</a>
|
||
<li><a href="#Property-SetFilter">H5Pset_filter</a>
|
||
<li><a href="#Property-AllFiltersAvail">H5Pall_filters_avail</a>
|
||
<li><a href="#Property-GetNFilters">H5Pget_nfilters</a>
|
||
<li><a href="#Property-GetFilter">H5Pget_filter</a>
|
||
<li><a href="#Property-GetFilterById">H5Pget_filter_by_id</a>
|
||
<li><a href="#Property-ModifyFilter">H5Pmodify_filter</a>
|
||
<li><a href="#Property-SetFletcher32">H5Pset_fletcher32</a>
|
||
<li><a href="#Property-SetShuffle">H5Pset_shuffle</a>
|
||
<li><a href="#Property-SetSzip">H5Pset_szip</a>
|
||
<li><a href="#Property-SetExternal">H5Pset_external</a>
|
||
<li><a href="#Property-GetExternalCount">H5Pget_external_count</a>
|
||
<li><a href="#Property-GetExternal">H5Pget_external</a>
|
||
</ul>
|
||
|
||
<p><i>Dataset Access, Memory, and <br> Transfer Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetBuffer">H5Pset_buffer</a>
|
||
<li><a href="#Property-GetBuffer">H5Pget_buffer</a>
|
||
<li><a href="#Property-SetPreserve">H5Pset_preserve</a>
|
||
<li><a href="#Property-GetPreserve">H5Pget_preserve</a>
|
||
<li><a href="#Property-SetEdcCheck">H5Pset_edc_check</a>
|
||
<li><a href="#Property-GetEdcCheck">H5Pget_edc_check</a>
|
||
<li><a href="#Property-SetFilterCallback">H5Pset_filter_callback</a>
|
||
<li><a href="#Property-SetHyperVectorSize">H5Pset_hyper_vector_size</a>
|
||
<li><a href="#Property-GetHyperVectorSize">H5Pget_hyper_vector_size</a>
|
||
<li><a href="#Property-SetBTreeRatios">H5Pset_btree_ratios</a>
|
||
<li><a href="#Property-GetBTreeRatios">H5Pget_btree_ratios</a>
|
||
<li><a href="#Property-SetVLMemManager">H5Pset_vlen_mem_manager</a>
|
||
<li><a href="#Property-GetVLMemManager">H5Pget_vlen_mem_manager</a>
|
||
<li><a href="#Property-SetDxplMpio">H5Pset_dxpl_mpio</a> ||
|
||
<li><a href="#Property-GetDxplMpio">H5Pget_dxpl_mpio</a> ||
|
||
<li><a href="#Property-SetDxplMulti">H5Pset_dxpl_multi</a>
|
||
<li><a href="#Property-GetDxplMulti">H5Pget_dxpl_multi</a>
|
||
<li><a href="#Property-SetMultiType">H5Pset_multi_type</a>
|
||
<li><a href="#Property-GetMultiType">H5Pget_multi_type</a>
|
||
<br>
|
||
<li><a href="#Property-SetSmallData">H5Pset_small_data_block_size</a>
|
||
<li><a href="#Property-GetSmallData">H5Pget_small_data_block_size</a>
|
||
</ul>
|
||
|
||
</td></tr>
|
||
|
||
<!--
|
||
<tr><td colspan=5 align=right>
|
||
<br>
|
||
|| <i>Available only in the parallel HDF5 library.</i>
|
||
</td></tr>
|
||
-->
|
||
|
||
</table>
|
||
<br>
|
||
|
||
* Functions labelled with an asterisk (*) are provided only for
|
||
backwards compatibility with HDF5 Releases 1.4.<i>x</i>.
|
||
See further notes in the description of each function.
|
||
<p>
|
||
|
||
<i>Alphabetical Listing</i>
|
||
<table border="0">
|
||
<tr>
|
||
<td valign="top">
|
||
<li><a href="#Property-AllFiltersAvail">H5Pall_filters_avail</a>
|
||
<li><a href="#Property-Close">H5Pclose</a>
|
||
<li><a href="#Property-CloseClass">H5Pclose_class</a>
|
||
<li><a href="#Property-CloseList">H5Pclose_list</a>
|
||
<li><a href="#Property-Copy">H5Pcopy</a>
|
||
<li><a href="#Property-CopyProp">H5Pcopy_prop</a>
|
||
<li><a href="#Property-Create">H5Pcreate</a>
|
||
<li><a href="#Property-CreateClass">H5Pcreate_class</a>
|
||
<li><a href="#Property-CreateList">H5Pcreate_list</a>
|
||
<li><a href="#Property-Equal">H5Pequal</a>
|
||
<li><a href="#Property-Exist">H5Pexist</a>
|
||
<li><a href="#Property-FillValueDefined">H5Pfill_value_defined</a>
|
||
<li><a href="#Property-Get">H5Pget</a>
|
||
<li><a href="#Property-GetAlignment">H5Pget_alignment</a>
|
||
<li><a href="#Property-GetAllocTime">H5Pget_alloc_time</a>
|
||
<li><a href="#Property-GetBTreeRatios">H5Pget_btree_ratios</a>
|
||
<li><a href="#Property-GetBuffer">H5Pget_buffer</a>
|
||
<li><a href="#Property-GetCache">H5Pget_cache</a>
|
||
<li><a href="#Property-GetChunk">H5Pget_chunk</a>
|
||
<li><a href="#Property-GetClass">H5Pget_class</a>
|
||
<li><a href="#Property-GetClassName">H5Pget_class_name</a>
|
||
<li><a href="#Property-GetClassParent">H5Pget_class_parent</a>
|
||
<li><a href="#Property-GetDriver">H5Pget_driver</a>
|
||
<li><a href="#Property-GetDriverInfo">H5Pget_driver_info</a>
|
||
<li><a href="#Property-GetDxplMpio">H5Pget_dxpl_mpio</a> ||
|
||
<li><a href="#Property-GetDxplMulti">H5Pget_dxpl_multi</a>
|
||
<li><a href="#Property-GetEdcCheck">H5Pget_edc_check</a>
|
||
<li><a href="#Property-GetExternal">H5Pget_external</a>
|
||
<li><a href="#Property-GetExternalCount">H5Pget_external_count</a>
|
||
<li><a href="#Property-GetFamilyOffset">H5Pget_family_offset</a>
|
||
<li><a href="#Property-GetFaplCore">H5Pget_fapl_core</a>
|
||
<li><a href="#Property-GetFaplFamily">H5Pget_fapl_family</a>
|
||
<li><a href="#Property-GetFaplGass">H5Pget_fapl_gass</a>
|
||
<li><a href="#Property-GetFaplMpio">H5Pget_fapl_mpio</a> ||
|
||
<li><a href="#Property-GetFaplMpiPosix">H5Pget_fapl_mpiposix</a> ||
|
||
<li><a href="#Property-GetFaplMulti">H5Pget_fapl_multi</a>
|
||
<li><a href="#Property-GetFaplSrb">H5Pget_fapl_srb</a>
|
||
<li><a href="#Property-GetFaplStream">H5Pget_fapl_stream</a>
|
||
<li><a href="#Property-GetFcloseDegree">H5Pget_fclose_degree</a>
|
||
<li><a href="#Property-GetFillTime">H5Pget_fill_time</a>
|
||
</td>
|
||
|
||
<td> </td>
|
||
|
||
<td valign="top">
|
||
<li><a href="#Property-GetFillValue">H5Pget_fill_value</a>
|
||
<li><a href="#Property-GetFilter">H5Pget_filter</a>
|
||
<li><a href="#Property-GetFilterById">H5Pget_filter_by_id</a>
|
||
<li><a href="#Property-GetGCReferences">H5Pget_gc_references</a>
|
||
<li><a href="#Property-GetHyperVectorSize">H5Pget_hyper_vector_size</a>
|
||
<li><a href="#Property-GetIstoreK">H5Pget_istore_k</a>
|
||
<li><a href="#Property-GetLayout">H5Pget_layout</a>
|
||
<li><a href="#Property-GetMetaBlockSize">H5Pget_meta_block_size</a>
|
||
<li><a href="#Property-GetMultiType">H5Pget_multi_type</a>
|
||
<li><a href="#Property-GetNFilters">H5Pget_nfilters</a>
|
||
<li><a href="#Property-GetNProps">H5Pget_nprops</a>
|
||
<li><a href="#Property-GetPreserve">H5Pget_preserve</a>
|
||
<li><a href="#Property-GetSieveBufSize">H5Pget_sieve_buf_size</a>
|
||
<li><a href="#Property-GetSize">H5Pget_size</a>
|
||
<li><a href="#Property-GetSizes">H5Pget_sizes</a>
|
||
<li><a href="#Property-GetSmallData">H5Pget_small_data_block_size</a>
|
||
<li><a href="#Property-GetSymK">H5Pget_sym_k</a>
|
||
<li><a href="#Property-GetUserblock">H5Pget_userblock</a>
|
||
<li><a href="#Property-GetVersion">H5Pget_version</a>
|
||
<li><a href="#Property-GetVLMemManager">H5Pget_vlen_mem_manager</a>
|
||
<li><a href="#Property-Insert">H5Pinsert</a>
|
||
<li><a href="#Property-IsAClass">H5Pisa_class</a>
|
||
<li><a href="#Property-Iterate">H5Piterate</a>
|
||
<li><a href="#Property-ModifyFilter">H5Pmodify_filter</a>
|
||
<li><a href="#Property-Register">H5Pregister</a>
|
||
<li><a href="#Property-Remove">H5Premove</a>
|
||
<li><a href="#Property-Set">H5Pset</a>
|
||
<li><a href="#Property-SetAlignment">H5Pset_alignment</a>
|
||
<li><a href="#Property-SetAllocTime">H5Pset_alloc_time</a>
|
||
<li><a href="#Property-SetBTreeRatios">H5Pset_btree_ratios</a>
|
||
<li><a href="#Property-SetBuffer">H5Pset_buffer</a>
|
||
<li><a href="#Property-SetCache">H5Pset_cache</a>
|
||
<li><a href="#Property-SetChunk">H5Pset_chunk</a>
|
||
<li><a href="#Property-SetDeflate">H5Pset_deflate</a>
|
||
<!-- <li><a href="#Property-SetDriver">H5Pset_driver</a> -->
|
||
<li><a href="#Property-SetDxplMpio">H5Pset_dxpl_mpio</a> ||
|
||
<li><a href="#Property-SetDxplMulti">H5Pset_dxpl_multi</a>
|
||
<li><a href="#Property-SetEdcCheck">H5Pset_edc_check</a>
|
||
<li><a href="#Property-SetExternal">H5Pset_external</a>
|
||
</td>
|
||
|
||
<td> </td>
|
||
|
||
<td valign="top">
|
||
<li><a href="#Property-SetFamilyOffset">H5Pset_family_offset</a>
|
||
<li><a href="#Property-SetFaplCore">H5Pset_fapl_core</a>
|
||
<li><a href="#Property-SetFaplFamily">H5Pset_fapl_family</a>
|
||
<li><a href="#Property-SetFaplGass">H5Pset_fapl_gass</a>
|
||
<li><a href="#Property-SetFaplLog">H5Pset_fapl_log</a>
|
||
<li><a href="#Property-SetFaplMpio">H5Pset_fapl_mpio</a> ||
|
||
<li><a href="#Property-SetFaplMpiPosix">H5Pset_fapl_mpiposix</a> ||
|
||
<li><a href="#Property-SetFaplMulti">H5Pset_fapl_multi</a>
|
||
<li><a href="#Property-SetFaplSec2">H5Pset_fapl_sec2</a>
|
||
<li><a href="#Property-SetFaplSplit">H5Pset_fapl_split</a>
|
||
<li><a href="#Property-SetFaplSrb">H5Pset_fapl_srb</a>
|
||
<li><a href="#Property-SetFaplStdio">H5Pset_fapl_stdio</a>
|
||
<li><a href="#Property-SetFaplStream">H5Pset_fapl_stream</a>
|
||
<li><a href="#Property-SetFcloseDegree">H5Pset_fclose_degree</a>
|
||
<li><a href="#Property-SetFillTime">H5Pset_fill_time</a>
|
||
<li><a href="#Property-SetFillValue">H5Pset_fill_value</a>
|
||
<li><a href="#Property-SetFilter">H5Pset_filter</a>
|
||
<li><a href="#Property-SetFilterCallback">H5Pset_filter_callback</a>
|
||
<li><a href="#Property-SetFletcher32">H5Pset_fletcher32</a>
|
||
<li><a href="#Property-SetGCReferences">H5Pset_gc_references</a>
|
||
<li><a href="#Property-SetHyperVectorSize">H5Pset_hyper_vector_size</a>
|
||
<li><a href="#Property-SetIstoreK">H5Pset_istore_k</a>
|
||
<li><a href="#Property-SetLayout">H5Pset_layout</a>
|
||
<li><a href="#Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
|
||
<li><a href="#Property-SetMultiType">H5Pset_multi_type</a>
|
||
<li><a href="#Property-SetPreserve">H5Pset_preserve</a>
|
||
<li><a href="#Property-SetShuffle">H5Pset_shuffle</a>
|
||
<li><a href="#Property-SetSieveBufSize">H5Pset_sieve_buf_size</a>
|
||
<li><a href="#Property-SetSizes">H5Pset_sizes</a>
|
||
<li><a href="#Property-SetSmallData">H5Pset_small_data_block_size</a>
|
||
<li><a href="#Property-SetSymK">H5Pset_sym_k</a>
|
||
<li><a href="#Property-SetSzip">H5Pset_szip</a>
|
||
<li><a href="#Property-SetUserblock">H5Pset_userblock</a>
|
||
<li><a href="#Property-SetVLMemManager">H5Pset_vlen_mem_manager</a>
|
||
<li><a href="#Property-Unregister">H5Punregister</a>
|
||
<br><br>
|
||
<i>|| <i>Available only in the parallel HDF5 library.</i>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
|
||
<p>
|
||
<strong>The FORTRAN90 Interfaces:</strong>
|
||
|
||
<br>
|
||
<font size=-1>
|
||
<i>In general, each FORTRAN90 subroutine performs exactly the same task
|
||
as the corresponding C function. The links below go to the C function
|
||
descriptions, which serve as general descriptions for both. A button,
|
||
under <strong>Non-C API(s)</strong> at the end of the C function description,
|
||
opens an external browser window displaying the FORTRAN90-specific
|
||
information. You will probably want to adjust the size and location of
|
||
this external window so that both browser windows are visible and to
|
||
facilitate moving easily between them.</i>
|
||
</font>
|
||
|
||
<table border=0>
|
||
<tr><td valign=top>
|
||
|
||
<i>General Property List Operations</i>
|
||
<ul>
|
||
<li><a href="#Property-Create">h5pcreate_f</a>
|
||
<li><a href="#Property-GetClass">h5pget_class_f</a>
|
||
<li><a href="#Property-Copy">h5pcopy_f</a>
|
||
<li><a href="#Property-Close">h5pclose_f</a>
|
||
</ul>
|
||
|
||
|
||
<p><i>Generic Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-CreateClass">h5pcreate_class_f</a>
|
||
<!--<li><a href="#Property-CreateList">H5Pcreate_list</a> -->
|
||
<li><a href="#Property-Register">h5pregister_f</a>
|
||
<li><a href="#Property-Insert">h5pinsert_f</a>
|
||
<li><a href="#Property-Set">h5pset_f</a>
|
||
<li><a href="#Property-Exist">h5pexist_f</a>
|
||
<li><a href="#Property-GetSize">h5pget_size_f</a>
|
||
<li><a href="#Property-GetNProps">h5pget_nprops_f</a>
|
||
<li><a href="#Property-GetClassName">h5pget_class_name_f</a>
|
||
<li><a href="#Property-GetClassParent">h5pget_class_parent_f</a>
|
||
<li><a href="#Property-IsAClass">h5pisa_class_f</a>
|
||
<li><a href="#Property-Get">h5pget_f</a>
|
||
<li><a href="#Property-Equal">h5pequal_f</a>
|
||
<!--<li><a href="#Property-Iterate">h5piterate_f</a> -->
|
||
<li><a href="#Property-CopyProp">h5pcopy_prop_f</a>
|
||
<li><a href="#Property-Remove">h5premove_f</a>
|
||
<li><a href="#Property-Unregister">h5punregister_f</a>
|
||
<li><a href="#Property-CloseList">h5pclose_list_f</a>
|
||
<li><a href="#Property-CloseClass">h5pclose_class_f</a>
|
||
</ul>
|
||
|
||
<p><i>File Creation Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-GetVersion">h5pget_version_f</a>
|
||
<li><a href="#Property-SetUserblock">h5pset_userblock_f</a>
|
||
<li><a href="#Property-GetUserblock">h5pget_userblock_f</a>
|
||
<li><a href="#Property-SetSizes">h5pset_sizes_f</a>
|
||
<li><a href="#Property-GetSizes">h5pget_sizes_f</a>
|
||
<li><a href="#Property-SetSymK">h5pset_sym_k_f</a>
|
||
<li><a href="#Property-GetSymK">h5pget_sym_k_f</a>
|
||
<li><a href="#Property-SetIstoreK">h5pset_istore_k_f</a>
|
||
<li><a href="#Property-GetIstoreK">h5pget_istore_k_f</a>
|
||
</ul>
|
||
|
||
<!--<p><i>Variable-length Datatype Properties</i> -->
|
||
<!--<ul> -->
|
||
<!--<li><a href="#Property-SetVLMemManager">h5pset_vlen_mem_manager_f</a> -->
|
||
<!--<li><a href="#Property-GetVLMemManager">h5pget_vlen_mem_manager_f</a> -->
|
||
<!--</ul> -->
|
||
|
||
</td><td> </td><td valign=top>
|
||
|
||
|
||
<i>File Close Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetFcloseDegree">h5pset_fclose_degree_f</a>
|
||
<li><a href="#Property-GetFcloseDegree">h5pget_fclose_degree_f</a>
|
||
</ul>
|
||
|
||
<p><i>Dataset Creation Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetLayout">h5pset_layout_f</a>
|
||
<li><a href="#Property-GetLayout">h5pget_layout_f</a>
|
||
<li><a href="#Property-SetChunk">h5pset_chunk_f</a>
|
||
<li><a href="#Property-GetChunk">h5pget_chunk_f</a>
|
||
<li><a href="#Property-SetDeflate">h5pset_deflate_f</a>
|
||
<!--<li><a href="#Property-GetDeflate">h5pget_deflate_f</a> -->
|
||
<!--<li><a href="#Property-SetCompression">h5pset_compression_f</a> -->
|
||
<!--<li><a href="#Property-GetCompression">h5pget_compression_f</a> -->
|
||
<li><a href="#Property-SetFillValue">h5pset_fill_value_f</a>
|
||
<li><a href="#Property-GetFillValue">h5pget_fill_value_f</a>
|
||
<li><a href="#Property-FillValueDefined">h5pfill_value_defined_f</a>
|
||
<li><a href="#Property-SetFillTime">h5pset_fill_time_f</a>
|
||
<li><a href="#Property-GetFillTime">h5pget_fill_time_f</a>
|
||
<li><a href="#Property-SetAllocTime">h5pset_alloc_time_f</a>
|
||
<li><a href="#Property-GetAllocTime">h5pget_alloc_time_f</a>
|
||
<li><a href="#Property-SetFilter">h5pset_filter_f</a>
|
||
<!--<li><a href="#Property-AllFiltersAvail">h5pall_filters_avail_f</a> -->
|
||
<li><a href="#Property-GetNFilters">h5pget_nfilters_f</a>
|
||
<li><a href="#Property-GetFilter">h5pget_filter_f</a>
|
||
<li><a href="#Property-GetFilterById">h5pget_filter_by_id_f</a>
|
||
<li><a href="#Property-ModifyFilter">h5pmodify_filter_f</a>
|
||
<li><a href="#Property-SetFletcher32">h5pset_fletcher32_f</a>
|
||
<li><a href="#Property-SetShuffle">h5pset_shuffle_f</a>
|
||
<li><a href="#Property-SetSzip">h5pset_szip_f</a>
|
||
<li><a href="#Property-SetExternal">h5pset_external_f</a>
|
||
<li><a href="#Property-GetExternalCount">h5pget_external_count_f</a>
|
||
<li><a href="#Property-GetExternal">h5pget_external_f</a>
|
||
</ul>
|
||
|
||
<!--
|
||
<br>
|
||
<br>
|
||
<br>
|
||
-->
|
||
<br>
|
||
<br>
|
||
<br>
|
||
<br>
|
||
|| <i>Available only in the parallel HDF5 library.</i>
|
||
|
||
|
||
</td><td> </td><td valign=top>
|
||
|
||
|
||
<i>File Access Properties</i>
|
||
<ul>
|
||
<!--<li><a href="#Property-SetDriver">h5pset_driver_f</a> -->
|
||
<li><a href="#Property-GetDriver">h5pget_driver_f</a>
|
||
<!--<li><a href="#Property-GetDriverInfo">h5pget_driver_info_f</a> -->
|
||
<li><a href="#Property-SetMetaBlockSize">h5pset_meta_block_size_f</a>
|
||
<li><a href="#Property-GetMetaBlockSize">h5pget_meta_block_size_f</a>
|
||
<li><a href="#Property-SetSieveBufSize">h5pset_sieve_buf_size_f</a>
|
||
<li><a href="#Property-GetSieveBufSize">h5Pget_sieve_buf_size_f</a>
|
||
<li><a href="#Property-SetStdio">h5pset_stdio_f</a>
|
||
<li><a href="#Property-GetStdio">h5pget_stdio_f</a>
|
||
<li><a href="#Property-SetSec2">h5pset_sec2_f</a>
|
||
<!--<li><a href="#Property-GetSec2">h5pget_sec2_f</a> -->
|
||
<li><a href="#Property-SetAlignment">h5pset_alignment_f</a>
|
||
<li><a href="#Property-GetAlignment">h5pget_alignment_f</a>
|
||
<!--<li><a href="#Property-SetCore">h5pset_core_f</a> -->
|
||
<!--<li><a href="#Property-GetCore">h5pget_core_f</a> -->
|
||
<li><a href="#Property-SetFaplMpio">h5pset_fapl_mpio_f</a> ||
|
||
<li><a href="#Property-GetFaplMpio">h5pget_fapl_mpio_f</a> ||
|
||
<li><a href="#Property-SetFaplMpiPosix">h5pset_fapl_mpiposix_f</a> ||
|
||
<li><a href="#Property-GetFaplMpiPosix">h5pget_fapl_mpiposix_f</a> ||
|
||
<li><a href="#Property-SetFamily">h5pset_family_f</a>
|
||
<li><a href="#Property-GetFamily">h5pget_family_f</a>
|
||
<!--<li><a href="#Property-SetFamilyOffset">h5pset_family_offset_f</a> -->
|
||
<!--<li><a href="#Property-GetFamilyOffset">h5pget_family_offset_f</a> -->
|
||
<li><a href="#Property-SetFaplMulti">h5pset_fapl_multi_f</a>
|
||
<li><a href="#Property-GetFaplMulti">h5pget_fapl_multi_f</a>
|
||
<!--<li><a href="#Property-SetMultiType">h5pset_multi_type_f</a> -->
|
||
<!--<li><a href="#Property-GetMultiType">h5pget_multi_type_f</a> -->
|
||
<li><a href="#Property-SetCache">h5pset_cache_f</a>
|
||
<li><a href="#Property-GetCache">h5pget_cache_f</a>
|
||
<li><a href="#Property-SetSplit">h5pset_split_f</a>
|
||
<li><a href="#Property-GetSplit">h5pget_split_f</a>
|
||
<li><a href="#Property-SetGCReferences">h5pset_gc_references_f</a>
|
||
<li><a href="#Property-GetGCReferences">h5pget_gc_references_f</a>
|
||
</ul>
|
||
|
||
|
||
<p><i>Dataset Access, Memory, and Transfer Properties</i>
|
||
<ul>
|
||
<li><a href="#Property-SetBuffer">h5pset_buffer_f</a>
|
||
<li><a href="#Property-GetBuffer">h5pget_buffer_f</a>
|
||
<li><a href="#Property-SetPreserve">h5pset_preserve_f</a>
|
||
<li><a href="#Property-GetPreserve">h5pget_preserve_f</a>
|
||
<li><a href="#Property-SetEdcCheck">h5pset_edc_check_f</a>
|
||
<li><a href="#Property-GetEdcCheck">h5pget_edc_check_f</a>
|
||
<li><a href="#Property-SetHyperVectorSize">h5pset_hyper_vector_size_f</a>
|
||
<li><a href="#Property-GetHyperVectorSize">h5pget_hyper_vector_size_f</a>
|
||
<li><a href="#Property-SetBTreeRatios">h5pset_btree_ratios_f</a>
|
||
<li><a href="#Property-GetBTreeRatios">h5pget_btree_ratios_f</a>
|
||
<li><a href="#Property-SetDxplMpio">h5pset_dxpl_mpio_f</a> ||
|
||
<li><a href="#Property-GetDxplMpio">h5pget_dxpl_mpio_f</a> ||
|
||
<!--<li><a href="#Property-SetDxplMulti">h5pset_dxpl_multi_f</a> -->
|
||
<!--<li><a href="#Property-GetDxplMulti">h5pget_dxpl_multi_f</a> -->
|
||
<!--<li><a href="#Property-SetMultiType">h5pset_multi_type_f</a> -->
|
||
<!--<li><a href="#Property-GetMultiType">h5pget_multi_type_f</a> -->
|
||
<br>
|
||
<li><a href="#Property-SetSmallData">h5pset_small_data_block_size_f</a>
|
||
<li><a href="#Property-GetSmallData">h5pget_small_data_block_size_f</a>
|
||
</ul>
|
||
|
||
</td></tr>
|
||
</table>
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Create">H5Pcreate</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t </em><code>H5Pcreate</code>(<em>H5P_class_t</em> <code>type</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Creates a new property as an instance of a property list class.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pcreate</code> creates a new property as an instance of some
|
||
property list class. The new property list is initialized
|
||
with default values for the specified class. The classes are:
|
||
<dl>
|
||
<dt><code>H5P_FILE_CREATE</code>
|
||
<dd>Properties for file creation.
|
||
See <a href="Files.html">Files</a>
|
||
in the <cite>HDF User's Guide</cite>
|
||
for details about the file creation properties.
|
||
<dt><code>H5P_FILE_ACCESS</code>
|
||
<dd>Properties for file access.
|
||
See <a href="Files.html">Files</a>
|
||
in the <cite>HDF User's Guide</cite>
|
||
for details about the file creation properties.
|
||
<dt><code>H5P_DATASET_CREATE</code>
|
||
<dd>Properties for dataset creation.
|
||
See <a href="Datasets.html">Datasets</a>
|
||
in the <cite>HDF User's Guide</cite>
|
||
for details about dataset creation properties.
|
||
<dt><code>H5P_DATASET_XFER</code>
|
||
<dd>Properties for raw data transfer.
|
||
See <a href="Datasets.html">Datasets</a>
|
||
in the <cite>HDF User's Guide</cite>
|
||
for details about raw data transfer properties.
|
||
<dt><code>H5P_MOUNT</code>
|
||
<dd>Properties for file mounting.
|
||
With this parameter, <code>H5Pcreate</code>
|
||
creates and returns a new mount property list
|
||
initialized with default values.
|
||
</dl>
|
||
<p>
|
||
This property list must eventually be closed with
|
||
<code>H5Pclose</code>;
|
||
otherwise, errors are likely to occur.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>H5P_class_t</em> <code>type</code>
|
||
<dd>IN: The type of property list to create.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a property list identifier (<code>plist</code>) if successful;
|
||
otherwise Fail (-1).
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pcreate_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Close">H5Pclose</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pclose</code>(<em>hid_t</em> <code>plist</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Terminates access to a property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pclose</code> terminates access to a property list.
|
||
All property lists should be closed when the application is
|
||
finished accessing them.
|
||
This frees resources used by the property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of the property list to terminate access to.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pclose_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetClass">H5Pget_class</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>H5P_class_t </em><code>H5Pget_class</code>(<em>hid_t</em> <code>plist</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the property list class for a property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_class</code> returns the property list class for the
|
||
property list identified by the <code>plist</code> parameter.
|
||
Valid property list classes are defined in the description of
|
||
<code>H5Pcreate</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a property list class if successful.
|
||
Otherwise returns H5P_NO_CLASS (-1).
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_class_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Copy">H5Pcopy</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t </em><code>H5Pcopy</code>(<em>hid_t</em> <code>plist</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Copies an existing property list to create a new property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pcopy</code> copies an existing property list to create
|
||
a new property list.
|
||
The new property list has the same properties and values
|
||
as the original property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to duplicate.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a property list identifier if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pcopy_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-CreateClass">H5Pcreate_class</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t</em> <code>H5Pcreate_class</code>(
|
||
<em>hid_t</em> <code>class</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>H5P_cls_create_func_t</em> <code>create</code>,
|
||
<em>H5P_cls_copy_func_t</em> <code>copy</code>,
|
||
<em>H5P_cls_close_func_t</em> <coode>close</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Creates a new property list class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pcreate_class</code> registers a new property list class
|
||
with the library.
|
||
The new property list class can inherit from an existing property
|
||
list class or may be derived from the default "empty" class.
|
||
New classes with inherited properties from existing classes
|
||
may not remove those existing properties, only add or remove
|
||
their own class properties.
|
||
</P>
|
||
|
||
The <code>create</code> routine is called when a new property list
|
||
of this class is being created.
|
||
The <code>H5P_cls_create_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_cls_create_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>void *</em> <code>create_data</code>
|
||
);
|
||
</ul>
|
||
The parameters to this callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being created</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>create_data</code></td>
|
||
<td>IN/OUT: User pointer to any class creation information needed</td></tr>
|
||
</table></ul>
|
||
The <code>create</code> routine is called after any registered
|
||
<code>create</code> function is called for each property value.
|
||
If the <code>create</code> routine returns a negative value,
|
||
the new list is not returned to the user and the
|
||
property list creation routine returns an error value.
|
||
</P>
|
||
|
||
The <code>copy</code> routine is called when an existing property list
|
||
of this class is copied.
|
||
The <code>H5P_cls_copy_func_t</code> callback function
|
||
is defined as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_cls_copy_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>void *</em> <code>copy_data</code>
|
||
);
|
||
</ul>
|
||
The parameters to this callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list created by copying</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>copy_data</code></td>
|
||
<td>IN/OUT: User pointer to any class copy information needed</td></tr>
|
||
</table></ul>
|
||
The <code>copy</code> routine is called after any registered
|
||
<code>copy</code> function is called for each property value.
|
||
If the <code>copy</code> routine returns a negative value, the new list
|
||
is not returned to the user and thenproperty list copy routine returns
|
||
an error value.
|
||
</P>
|
||
|
||
The <code>close</code> routine is called when a property list of this
|
||
class
|
||
is being closed.
|
||
The <code></code>H5P_cls_close_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_cls_close_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>void *</em> <code>close_data</code>
|
||
);
|
||
</ul>
|
||
The parameters to this callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being closed</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>close_data</code></td>
|
||
<td>IN/OUT: User pointer to any class close information needed</td></tr>
|
||
</table></ul>
|
||
The <code>close</code> routine is called before any registered
|
||
<code>close</code> function is called for each property value.
|
||
If the <code>close</code> routine returns a negative value,
|
||
the property list close routine returns an error value
|
||
but the property list is still closed.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>class</code></td>
|
||
<td>IN: Property list class to inherit from.</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property list class to register</td></tr>
|
||
<tr>
|
||
<td><em>H5P_cls_create_func_t</em> <code>create</code></td>
|
||
<td>IN: Callback routine called when a property list is created</td></tr>
|
||
<tr>
|
||
<td><em>H5P_cls_copy_func_t</em> <code>copy</code></td>
|
||
<td>IN: Callback routine called when a property list is copied</td></tr>
|
||
<tr>
|
||
<td><em>H5P_cls_close_func_t</em> <code>close</code></td>
|
||
<td>IN: Callback routine called when a property list is being closed</td></tr>
|
||
</table>
|
||
</ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a valid property list class identifier
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pcreate_class_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-CreateList">H5Pcreate_list</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t</em> <code>H5Pcreate_list</code>(
|
||
<em>hid_t</em> <code>class</code>)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Creates a new property list class of a given class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pcreate_list</code> creates a new property list of a
|
||
given class. If a <code>create</code> callback exists for the
|
||
property list class, it is called before the property list
|
||
is passed back to the user.
|
||
If <code>create</code> callbacks exist for any individual properties
|
||
in the property list, they are called before the class
|
||
<code>create</code> callback.
|
||
|
||
<dt><strong>Parameter:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>class</code>;</td>
|
||
<td>IN: Class of property list to create.</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a valid property list identifier
|
||
<dd>Failure: a negative value
|
||
|
||
<!--
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pXXX_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Register">H5Pregister</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pregister</code>(
|
||
<em>hid_t</em> <code>class</code>,
|
||
<em>const char *</em> <code>name</code>,
|
||
<em>size_t</em> <code>size</code>,
|
||
<em>void *</em> <code>default</code>,
|
||
<em>H5P_prp_create_func_t</em> <code>create</code>,
|
||
<em>H5P_prp_set_func_t</em> <code>set</code>,
|
||
<em>H5P_prp_get_func_t</em> <code>get</code>,
|
||
<em>H5P_prp_delete_func_t</em> <code>delete</code>,
|
||
<em>H5P_prp_copy_func_t</em> <code>copy</code>,
|
||
<em>H5P_prp_close_func_t</em> <code>close</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Registers a permanent property with a property list class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pregister</code> registers a new property with a
|
||
property list class.
|
||
The property will exist in all property list objects of
|
||
<code>class</code> created after this routine finishes. The name
|
||
of the property must not already exist, or this routine will fail.
|
||
The default property value must be provided and all new property
|
||
lists created with this property will have the property value set
|
||
to the default value. Any of the callback routines may be set to
|
||
NULL if they are not needed.
|
||
|
||
<P>
|
||
Zero-sized properties are allowed and do not store any data in the
|
||
property list. These may be used as flags to indicate the presence
|
||
or absence of a particular piece of information. The default pointer
|
||
for a zero-sized property may be set to NULL.
|
||
The property <code>create</code> and <code>close</code> callbacks
|
||
are called for zero-sized properties, but the <code>set</code> and
|
||
<code>get</code> callbacks are never called.
|
||
</P>
|
||
|
||
The <code>create</code> routine is called when a new property list
|
||
with this property is being created.
|
||
The <code>H5P_prp_create_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_create_func_t</code>)(
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>initial_value</code>);
|
||
</ul>
|
||
The parameters to this callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property being modified</td></tr>
|
||
<tr>
|
||
<td><em>size_t</em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>initial_value</code></td>
|
||
<td>IN/OUT: The default value for the property being created,
|
||
which will be passed to <code>H5Pregister</code></td></tr>
|
||
</table></ul>
|
||
The <code>create</code> routine may modify the value to be set and
|
||
those changes will be stored as the initial value of the property.
|
||
If the <code>create</code> routine returns a negative value,
|
||
the new property value is not copied into the property and the
|
||
create routine returns an error value.
|
||
</P>
|
||
|
||
The <code>set</code> routine is called before a new value is copied
|
||
into the property.
|
||
The <code>H5P_prp_set_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*H5P_prp_set_func_t)(
|
||
<em>hid_t </em><code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>new_value</code>);
|
||
</ul>
|
||
The parameters to this callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being modified</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property being modified</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em><code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void **</em><code>new_value</code></td>
|
||
<td>IN/OUT: Pointer to new value pointer for the property being
|
||
modified</td></tr>
|
||
</table></ul>
|
||
The <code>set</code> routine may modify the value pointer to be set
|
||
and those changes will be used when setting the property's value.
|
||
If the <code>set</code> routine returns a negative value, the new
|
||
property value is not copied into the property and the
|
||
<code>set</code> routine returns an error value.
|
||
The <code>set</code> routine will not be called for the initial
|
||
value, only the <code>create</code> routine will be called.
|
||
<p>
|
||
<strong>Note:</strong>
|
||
The <code>set</code> callback function may be useful
|
||
to range check the value being set for the property
|
||
or may perform some tranformation or translation of the
|
||
value set. The <code>get</code> callback would then
|
||
reverse the transformation or translation.
|
||
A single <code>get</code> or <code>set</code> callback
|
||
could handle multiple properties by
|
||
performing different actions based on the
|
||
property name or other properties in the property list.
|
||
|
||
<p>
|
||
The <code>get</code> routine is called when a value is retrieved
|
||
from a property value.
|
||
The <code>H5P_prp_get_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_get_func_t</code>)(
|
||
<em>hid_t </em><code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being queried</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em> <code>name</code></td>
|
||
<td>IN: The name of the property being queried</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>value</code></td>
|
||
<td>IN/OUT: The value of the property being returned</td></tr>
|
||
</table></ul>
|
||
The <code>get</code> routine may modify the value to be returned from
|
||
the query and those changes will be returned to the calling routine.
|
||
If the <code>set</code> routine returns a negative value, the query
|
||
routine returns an error value.
|
||
</P>
|
||
|
||
The <code>delete</code> routine is called when a property is being
|
||
deleted from a property list.
|
||
The <code>H5P_prp_delete_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_delete_func_t</code>)(
|
||
<em>hid_t </em><code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list the property is being
|
||
deleted from</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em> <code>name</code></td>
|
||
<td>IN: The name of the property in the list</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>value</code></td>
|
||
<td>IN: The value for the property being deleted</td></tr>
|
||
</table></ul>
|
||
The <code>delete</code> routine may modify the value passed in,
|
||
but the value is not used by the library when the <code>delete</code>
|
||
routine returns. If the <code>delete</code> routine returns
|
||
a negative value, the property list delete routine returns
|
||
an error value but the property is still deleted.
|
||
</P>
|
||
|
||
The <code>copy</code> routine is called when a new property list with
|
||
this property is being created through a copy operation.
|
||
The <code>H5P_prp_copy_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_copy_func_t</code>)(
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property being copied</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em><code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code></td>
|
||
<td>IN/OUT: The value for the property being copied</td></tr>
|
||
</table></ul>
|
||
The <code>copy</code> routine may modify the value to be set and
|
||
those changes will be stored as the new value of the property.
|
||
If the <code>copy</code> routine returns a negative value,
|
||
the new property value is not copied into the property and
|
||
the copy routine returns an error value.
|
||
</P>
|
||
|
||
The <code>close</code> routine is called when a property list with
|
||
this property is being closed.
|
||
The <code>H5P_prp_close_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_close_func_t</code>)(
|
||
<em>hid_t </em><code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being
|
||
closed</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property in the list</td></tr>
|
||
<tr>
|
||
<td><em>size_t</em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code></td>
|
||
<td>IN: The value for the property being closed</td></tr>
|
||
</table></ul>
|
||
The <code>close</code> routine may modify the value passed in,
|
||
but the value is not used by the library when the
|
||
<code>close</code> routine returns.
|
||
If the <code>close</code> routine returns a negative value,
|
||
the property list close routine returns an error value but
|
||
the property list is still closed.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><dl>
|
||
<dt><code>hid_t</code> <em>class</em>
|
||
<dd>IN: Property list class to register permanent property
|
||
within
|
||
<dt><code>const char *</code> <em>name</em>
|
||
<dd>IN: Name of property to register
|
||
<dt><code>size_t</code> <em>size</em>
|
||
<dd>IN: Size of property in bytes
|
||
<dt><code>void *</code> <em>default</em>
|
||
<dd>IN: Default value for property in newly created property
|
||
lists
|
||
<dt><code>H5P_prp_create_func_t</code> <em>create</em>
|
||
<dd>IN: Callback routine called when a property list is being
|
||
created and the property value will be initialized
|
||
<dt><code>H5P_prp_set_func_t</code> <em>set</em>
|
||
<dd>IN: Callback routine called before a new value is copied
|
||
into the property's value
|
||
<dt><code>H5P_prp_get_func_t</code> <em>get</em>
|
||
<dd>IN: Callback routine called when a property value is
|
||
retrieved from the property
|
||
<dt><code>H5P_prp_delete_func_t</code> <em>delete</em>
|
||
<dd>IN: Callback routine called when a property is deleted from
|
||
a property list
|
||
<dt><code>H5P_prp_copy_func_t</code> <em>copy</em>
|
||
<dd>IN: Callback routine called when a property is copied from
|
||
a property list
|
||
<dt><code>H5P_prp_close_func_t</code> <em>close</em>
|
||
<dd>IN: Callback routine called when a property list is being
|
||
closed and the property value will be disposed of
|
||
</dl></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pregister_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Insert">H5Pinsert</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pinsert</code>(
|
||
<em>hid_t</em> <code>plid</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t</em> <code>size</code>,
|
||
<em>void *</em><code>value</code>,
|
||
<em>H5P_prp_set_func_t</em> <code>set</code>,
|
||
<em>H5P_prp_get_func_t</em> <code>get</code>,
|
||
<em>H5P_prp_delete_func_t</em> <code>delete</code>,
|
||
<em>H5P_prp_copy_func_t</em> <code>copy</code>,
|
||
<em>H5P_prp_close_func_t</em> <code>close</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Registers a temporary property with a property list.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pinsert</code> create a new property in a property list.
|
||
The property will exist only in this property list and copies made
|
||
from it.
|
||
|
||
<p>
|
||
The initial property value must be provided in
|
||
<code>value</code> and the property value will be set accordingly.
|
||
|
||
<p>
|
||
The name of the property must not already exist in this list,
|
||
or this routine will fail.
|
||
|
||
<p>
|
||
The <code>set</code> and <code>get</code> callback routines may
|
||
be set to NULL if they are not needed.
|
||
|
||
<p>
|
||
Zero-sized properties are allowed and do not store any data in the
|
||
property list. The default value of a zero-size property may be set
|
||
to NULL. They may be used to indicate the presence or absence of a
|
||
particular piece of information.
|
||
</p>
|
||
|
||
The <code>set</code> routine is called before a new value is copied
|
||
into the property.
|
||
The <code>H5P_prp_set_func_t</code> calback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_set_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>new_value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being modified</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property being modified</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void **</em><code>new_value</code></td>
|
||
<td>IN: Pointer to new value pointer for the property being
|
||
modified</td></tr>
|
||
</table></ul>
|
||
The <code>set</code> routine may modify the value pointer to be set
|
||
and those changes will be used when setting the property's value.
|
||
If the <code>set</code> routine returns a negative value, the new
|
||
property value is not copied into the property and the set routine
|
||
returns an error value.
|
||
The <code>set</code> routine will be called for the initial value.
|
||
<p>
|
||
<strong>Note:</strong>
|
||
The <code>set</code> callback function may be useful
|
||
to range check the value being set for the property
|
||
or may perform some tranformation or translation of the
|
||
value set. The <code>get</code> callback would then
|
||
reverse the transformation or translation.
|
||
A single <code>get</code> or <code>set</code> callback
|
||
could handle multiple properties by
|
||
performing different actions based on the
|
||
property name or other properties in the property list.
|
||
|
||
<p>
|
||
The <code>get</code> routine is called when a value is retrieved
|
||
from a property value.
|
||
The <code>H5P_prp_get_func_t</code> callback functioin is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_get_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
where the parameters to the callback function are:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list being queried</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><emcodename</code></td>
|
||
<td>IN: The name of the property being queried</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code></td>
|
||
<td>IN: The value of the property being returned</td></tr>
|
||
</table></ul>
|
||
The <code>get</code> routine may modify the value to be returned from
|
||
the query and those changes will be preserved.
|
||
If the <code>get</code> routine returns a negative value, the query
|
||
routine returns an error value.
|
||
</p>
|
||
|
||
The <code>delete</code> routine is called when a property is being
|
||
deleted from a property list.
|
||
The <code>H5P_prp_delete_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><code>typedef herr_t</code> (*<code>H5P_prp_delete_func_t</code>)(
|
||
<em>hid_t </em><code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
where the parameters to the callback function are:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>prop_id</code></td>
|
||
<td>IN: The identifier of the property list the property is
|
||
being deleted from</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em> <code>name</code></td>
|
||
<td>IN: The name of the property in the list</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>value</code></td>
|
||
<td>IN: The value for the property being deleted</td></tr>
|
||
</table></ul>
|
||
The <code>delete</code> routine may modify the value passed in,
|
||
but the value is not used by the library when the <code>delete</code>
|
||
routine returns. If the <code>delete</code> routine returns a
|
||
negative value, the property list delete routine returns an
|
||
error value but the property is still deleted.
|
||
</P>
|
||
|
||
The <code>copy</code> routine is called when a new property list
|
||
with this property is being created through a copy operation.
|
||
The <code>H5P_prp_copy_func_t</code> collback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_copy_func_t</code>)(
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
where the parameters to the callback function are:
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: The name of the property being copied</td></tr>
|
||
<tr>
|
||
<td><em>size_t </em> <code>size</code></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>value</code></td>
|
||
<td>IN/OUT: The value for the property being copied</td></tr>
|
||
</table></ul>
|
||
The <code>copy</code> routine may modify the value to be set and
|
||
those changes will be stored as the new value of the property.
|
||
If the <code>copy</code> routine returns a negative value, the
|
||
new property value is not copied into the property and the
|
||
copy routine returns an error value.
|
||
|
||
<P>The <code>close</code> routine is called when a property list
|
||
with this property is being closed.
|
||
The <code>H5P_prp_close_func_t</code> callback function is defined
|
||
as follows:
|
||
<ul><em>typedef herr_t</em> (*<code>H5P_prp_close_func_t</code>)(
|
||
<em>hid_t</em> <code>prop_id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t </em><code>size</code>,
|
||
<em>void *</em><code>value</code>);
|
||
</ul>
|
||
The parameters to the callback function are defined as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td><code>hid_t</em> <code>prop_id</em></td>
|
||
<td>IN: The ID of the property list being closed</td></tr>
|
||
<tr>
|
||
<td><code>const char *</code><em>name</em></td>
|
||
<td>IN: The name of the property in the list</td></tr>
|
||
<tr>
|
||
<td><code>size_t </code> <em>size</em></td>
|
||
<td>IN: The size of the property in bytes</td></tr>
|
||
<tr>
|
||
<td><code>void *</code><em>value</em></td>
|
||
<td>IN: The value for the property being closed</td></tr>
|
||
</table></ul>
|
||
The <code>close</code> routine may modify the value passed in, the value
|
||
is not used by the library when the <code>close</code> routine returns.
|
||
If the <code>close</code> routine returns a negative value, the
|
||
property list close routine returns an error value but the property list
|
||
is still closed.
|
||
|
||
<p>
|
||
<strong>Note:</strong>
|
||
There is no <code>create</code> callback routine for temporary property
|
||
list objects; the initial value is assumed to have any necessary setup
|
||
already performed on it.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><code>hid_t</code> <code>plid</em></td>
|
||
<td>IN: Property list identifier to create temporary property
|
||
within</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to create</td></tr>
|
||
<tr>
|
||
<td><em>size_t</em> <code>size</code></td>
|
||
<td>IN: Size of property in bytes</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code></td>
|
||
<td>IN: Initial value for the property</td></tr>
|
||
<tr>
|
||
<td><em>H5P_prp_set_func_t</em> <code>set</code></td>
|
||
<td>IN: Callback routine called before a new value is copied into
|
||
the property's value</td></tr>
|
||
<tr>
|
||
<td><em>H5P_prp_get_func_t</em> <code>get</code></td>
|
||
<td>IN: Callback routine called when a property value is retrieved
|
||
from the property</td></tr>
|
||
<tr>
|
||
<td><em>H5P_prp_delete_func_t</em> <code>delete</code></td>
|
||
<td>IN: Callback routine called when a property is deleted from
|
||
a property list</td></tr>
|
||
<tr>
|
||
<td><em>H5P_prp_copy_func_t</em> <code>copy</code></td>
|
||
<td>IN: Callback routine called when a property is copied from
|
||
an existing property list</td></tr>
|
||
<tr>
|
||
<td><em>H5P_prp_close_func_t</em> <code>close</code></td>
|
||
<td>IN: Callback routine called when a property list is being closed
|
||
and the property value will be disposed of</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pinsert_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Set">H5Pset</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset</code>(
|
||
<em>hid_t</em> <code>plid</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>void *</em><code>value</code>)
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets a property list value.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset</code> sets a new value for a property in a
|
||
property list. If there is a <code>set</code> callback
|
||
routine registered for this property, the <code>value</code> will be
|
||
passed to that routine and any changes to the <code>value</code>
|
||
will be used when setting the property value.
|
||
The information pointed to by the <code>value</code> pointer
|
||
(possibly modified by the <code>set</code> callback) is copied into
|
||
the property list value and may be changed by the application making
|
||
the <code>H5Pset</code> call without affecting the property value.
|
||
|
||
<P>
|
||
The property name must exist or this routine will fail.
|
||
|
||
<P>
|
||
If the <code>set</code> callback routine returns an error, the
|
||
property value will not be modified.
|
||
|
||
<P>
|
||
This routine may not be called for zero-sized properties
|
||
and will return an error in that case.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>plid</code>;
|
||
<td>IN: Property list identifier to modify</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code>;
|
||
<td>IN: Name of property to modify</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code>;
|
||
<td>IN: Pointer to value to set the property to</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Exist">H5Pexist</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>htri_t</em> <code>H5Pexist</code>(
|
||
<em>hid_t</em> <code>id</code>;
|
||
<em>const char *</em><code>name</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries whether a property name exists in a property list
|
||
or class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pexist</code> determines whether a property exists
|
||
within a property list or class.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id</code></td>
|
||
<td>IN: Identifier for the property to query</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to check for</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a positive value if the property exists in the
|
||
property object; zero if the property does not exist
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pexist_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetSize">H5Pget_size</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_size</code>(
|
||
<em>hid_t</em> <code>id</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>size_t *</em><code>size</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries the size of a property value in bytes.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_size</code> retrieves the size of a
|
||
property's value in bytes. This function operates on both
|
||
poperty lists and property classes
|
||
|
||
<p>
|
||
Zero-sized properties are allowed and return <code>0</code>.
|
||
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id</code></td>
|
||
<td>IN: Identifier of property object to query</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to query</td></tr>
|
||
<tr>
|
||
<td><em>size_t *</em><code>size</code></td>
|
||
<td>OUT: Size of property in bytes</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetNProps">H5Pget_nprops</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_nprops</code>(
|
||
<em>hid_t</em> <code>id</code>,
|
||
<em>size_t *</em><code>nprops</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries number of properties in property list or class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_nprops</code> retrieves the number of properties in a
|
||
property list or class.
|
||
If a property class identifier is given, the number of registered
|
||
properties in the class is returned in <code>nprops</code>.
|
||
If a property list identifier is given, the current number of
|
||
properties in the list is returned in <code>nprops</code>.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id</code></td>
|
||
<td>IN: Identifier of property object to query</td></tr>
|
||
<tr>
|
||
<td><em>size_t *</em><code>nprops</code></td>
|
||
<td>OUT: Number of properties in object</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_nprops_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetClassName">H5Pget_class_name</a>
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the name of a class.
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>char *</em> <code>H5Pget_class_name</code>(
|
||
<em>hid_t</em> <code>pcid</code>
|
||
)
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_class_name</code> retrieves the name of a
|
||
generic property list class. The pointer to the name
|
||
must be freed by the user after each successful call.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>pcid</code></td>
|
||
<td>IN: Identifier of the property class to query</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a pointer to an allocated string containing the class name
|
||
<dd>Failure: NULL
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_class_name_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetClassParent">H5Pget_class_parent</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t</em> <code>H5Pget_class_parent</code>(
|
||
<em>hid_t</em> <code>pcid</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the parent class of a property class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_class_parent</code> retrieves an identifier for the
|
||
parent class of a property class.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>pcid</code></td>
|
||
<td>IN: Identifier of the property class to query</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a valid parent class object identifier
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_class_parent_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-IsAClass">H5Pisa_class</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>htri_t</em> <code>H5Pisa_class</code>(
|
||
<em>hid_t</em> <code>plist</code>,
|
||
<em>hid_t</em> <code>pclass</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Determines whether a property list is a member of a class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pisa_class</code> checks to determine whether a property list
|
||
is a member of the specified class.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>plist</code></td>
|
||
<td>IN: Identifier of the property list</td></tr>
|
||
<tr>
|
||
<td><code>hid_t</code> <em>pclass</em></td>
|
||
<td>IN: Identifier of the property class</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: TRUE (positive) if equal; FALSE (zero) if unequal
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pisa_class_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Get">H5Pget</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget</code>(
|
||
<em>hid_t</em> <code>plid</code>,
|
||
<em>const char *</em><code>name</code>,
|
||
<em>void *</em><code>value</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries the value of a property.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget</code> retrieves a copy of the value for a property
|
||
in a property list. If there is a <code>get</code> callback routine
|
||
registered for this property, the copy of the value of the property
|
||
will first be passed to that routine and any changes to the copy of
|
||
the value will be used when returning the property value from this
|
||
routine.
|
||
|
||
<p>
|
||
This routine may be called for zero-sized properties with the
|
||
<code>value</code> set to NULL. The <code>get</code> routine
|
||
will be called with a NULL value if the callback exists.
|
||
|
||
<p>
|
||
The property name must exist or this routine will fail.
|
||
|
||
<p>
|
||
If the <code>get</code> callback routine returns an error,
|
||
<code>value</code> will not be modified.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>plid</ecodem></td>
|
||
<td>IN: Identifier of the property list to query</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to query</td></tr>
|
||
<tr>
|
||
<td><em>void *</em><code>value</code></td>
|
||
<td>OUT: Pointer to a location to which to copy the value of
|
||
of the property</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Equal">H5Pequal</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>htri_t</em> <code>H5Pequal</code>(
|
||
<em></em>hid_t</em> <em>id1</em>,
|
||
<em>hid_t</em> <em>id2</em>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Compares two property lists or classes for equality.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pequal</code> compares two property lists or classes
|
||
to determine whether they are equal to one another.
|
||
|
||
<p>
|
||
Either both <code>id1</code> and <code>id2</code> must be
|
||
property lists or both must be classes; comparing a list to a
|
||
class is an error.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id1</code></td>
|
||
<td>IN: First property object to be compared</td></tr>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id2</code></td>
|
||
<td>IN: Second property object to be compared</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: TRUE (positive) if equal; FALSE (zero) if unequal
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pequal_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Iterate">H5Piterate</a>
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Iterates over properties in a property class or list.
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Piterate</code>(
|
||
<em>hid_t</em> <code>id</code>,
|
||
<em>int *</em> <code>idx</code>,
|
||
<em>H5P_iterate_t</em> <code>iter_func</code>,
|
||
<em>void *</em> <code>iter_data</code>
|
||
)
|
||
|
||
<dt><strong>Description:</strong>
|
||
<P><code>H5Piterate</code> iterates over the properties in the
|
||
property object specified in <code>id</code>, which may be either a
|
||
property list or a property class, performing a specified
|
||
operation on each property in turn.
|
||
|
||
<p>
|
||
For each property in the object, <code>iter_func</code> and
|
||
the additional information specified below are passed to the
|
||
<code>H5P_iterate_t</code> operator function.
|
||
|
||
<b><i>(NOTE: <code>iter_func</code> was changed to
|
||
<code>H5P_iterate_t</code> in the preceding sentence.
|
||
Is this correct?)</i></b>
|
||
|
||
<p>
|
||
The iteration begins with the <code>idx</code>-th property in
|
||
the object; the next element to be processed by the operator
|
||
is returned in <code>idx</code>.
|
||
If <code>idx</code> is NULL, the iterator starts at the first
|
||
property; since no stopping point is returned in this case,
|
||
the iterator cannot be restarted if one of the calls to its
|
||
operator returns non-zero.
|
||
</p>
|
||
|
||
The prototype for the <code>H5P_iterate_t</code> operator is
|
||
as follows:
|
||
<ul> <dl>
|
||
<dt><em>typedef herr_t</em> (*<code>H5P_iterate_t</code>)(
|
||
<em>hid_t</em> <code>id</code>,
|
||
<em>const char *</em><code>>name</code>,
|
||
<em>void *</em><code>iter_data</code>
|
||
)
|
||
</dl> </ul>
|
||
The operation receives the property list or class identifier for
|
||
the object being iterated over, <code>id</code>,
|
||
the name of the current property within the object, <code>name</code>,
|
||
and the pointer to the operator data passed in to
|
||
<code>H5Piterate</code>, <code>iter_data</code>.
|
||
</p>
|
||
|
||
The valid return values from an operator are as follows:
|
||
<ul><table>
|
||
<tr>
|
||
<td valign=top>Zero</td>
|
||
<td>Causes the iterator to continue, returning zero when all
|
||
properties have been processed</td></tr>
|
||
<tr>
|
||
<td valign=top>Positive</td>
|
||
<td>Causes the iterator to immediately return that positive
|
||
value, indicating short-circuit success. The iterator can
|
||
be restarted at the index of the next property</td></tr>
|
||
<tr>
|
||
<td valign=top>Negative</td>
|
||
<td>Causes the iterator to immediately return that value,
|
||
indicating failure. The iterator can be restarted at the
|
||
index of the next property</td></tr>
|
||
</table></ul>
|
||
|
||
<P>
|
||
<code>H5Piterate</code> assumes that the properties in the object
|
||
identified by <code>id</code> remain unchanged through the iteration.
|
||
If the membership changes during the iteration, the function's behavior
|
||
is undefined.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>id</code></td>
|
||
<td>IN: Identifier of property object to iterate over</td></tr>
|
||
<tr>
|
||
<td><em>int *</em> <code>idx</code></td>
|
||
<td>IN/OUT: Index of the property to begin with</td></tr>
|
||
<tr>
|
||
<td><em>H5P_iterate_t</em> <code>iter_func</code></td>
|
||
<td>IN: Function pointer to function to be called with each
|
||
property iterated over</td></tr>
|
||
<tr>
|
||
<td><em>void *</em> <code>iter_data</code></td>
|
||
<td>IN/OUT: Pointer to iteration data from user</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: the return value of the last call to
|
||
<code>iter_func</code> if it was non-zero;
|
||
zero if all properties have been processed
|
||
<dd>Failure: a negative value
|
||
</table></ul>
|
||
|
||
<!--
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pXXX_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-CopyProp">H5Pcopy_prop</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pcopy_prop</code>(
|
||
<em>hid_t</em> <code>dst_id</code>,
|
||
<em>hid_t</em> <code>src_id</code>,
|
||
<em>const char *</em><code>name</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Copies a property from one list or class to another.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pcopy_prop</code> copies a property from one property
|
||
list or class to another.
|
||
|
||
<p>
|
||
If a property is copied from one class to another, all the property
|
||
information will be first deleted from the destination class and
|
||
then the property information will be copied from the source class
|
||
into the destination class.
|
||
|
||
<p>
|
||
If a property is copied from one list to another, the property
|
||
will be first deleted from the destination list (generating a call
|
||
to the <code>close</code> callback for the property, if one exists)
|
||
and then the property is copied from the source list to the
|
||
destination list (generating a call to the <code>copy</code>
|
||
callback for the property, if one exists).
|
||
|
||
<p>
|
||
If the property does not exist in the class or list, this call is
|
||
equivalent to calling <code>H5Pregister</code> or <code>H5Pinsert</code>
|
||
(for a class or list, as appropriate) and the <code>create</code>
|
||
callback will be called in the case of the property being
|
||
copied into a list (if such a callback exists for the property).
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>dst_id</code></td>
|
||
<td>IN: Identifier of the destination property list or
|
||
class</td></tr>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>src_id</code></td>
|
||
<td>IN: Identifier of the source property list or class</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of the property to copy</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pcopy_prop_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Remove">H5Premove</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Premove</code>(<code>plid, name</code>)
|
||
<em>hid_t</em> <code>plid</code>;
|
||
<em>const char *</em><code>name</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Removes a property from a property list.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Premove</code> removes a property from a property list.
|
||
|
||
<p>
|
||
Both properties which were in existence when the property list
|
||
was created (i.e. properties registered with <code>H5Pregister</code>)
|
||
and properties added to the list after it was created (i.e. added
|
||
with <code>H5Pinsert</code>) may be removed from a property list.
|
||
Properties do not need to be removed from a property list before the
|
||
list itself is closed; they will be released automatically when
|
||
<code>H5Pclose</code> is called.
|
||
|
||
<p>
|
||
If a <code>close</code> callback exists for the removed property,
|
||
it will be called before the property is released.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>plid</code></td>
|
||
<td>IN: Identifier of the property list to modify</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to remove</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5premove_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-Unregister">H5Punregister</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Punregister</code>(
|
||
<em>H5P_class_t</em> <code>class</code>,
|
||
<em>const char *</em><code>name</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Removes a property from a property list class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Punregister</code> removes a property from a
|
||
property list class.
|
||
|
||
<p>
|
||
Future property lists created of that class will not contain
|
||
this property;
|
||
existing property lists containing this property are not affected.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>H5P_class_t</em> <code>class</code></td>
|
||
<td>IN: Property list class from which to remove
|
||
permanent property</td></tr>
|
||
<tr>
|
||
<td><em>const char *</em><code>name</code></td>
|
||
<td>IN: Name of property to remove</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5punregister_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-CloseList">H5Pclose_list</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pclose_list</code>(
|
||
<em>hid_t</em> <code>plist</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Closes a property list.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pclose_list</code> closes a property list.
|
||
|
||
<p>
|
||
If a <code>close</code> callback exists for the property list class,
|
||
it is called before the property list is destroyed.
|
||
If <code>close</code> callbacks exist for any individual properties
|
||
in the property list, they are called after the class
|
||
<code>close</code> callback.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>plist</code><td>
|
||
<td>IN: Property list to close</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pclose_list_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-CloseClass">H5Pclose_class</a>
|
||
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pclose_class</code>(
|
||
<em>hid_t</em> <code>class</code>
|
||
)
|
||
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Closes an existing property list class.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd>Removes a property list class from the library.
|
||
|
||
<p>
|
||
Existing property lists of this class will continue to exist,
|
||
but new ones are not able to be created.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<ul><table>
|
||
<tr>
|
||
<td><em>hid_t</em> <code>class</code></td>
|
||
<td>IN: Property list class to close</td></tr>
|
||
</table></ul>
|
||
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Success: a non-negative value
|
||
<dd>Failure: a negative value
|
||
|
||
<dt><strong>Non-C APIs:</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pclose_class_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetVersion">H5Pget_version</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_version</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int *</em> <code>super</code>,
|
||
<em>int *</em> <code>freelist</code>,
|
||
<em>int *</em> <code>stab</code>,
|
||
<em>int *</em> <code>shhdr</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the version information of various objects for
|
||
a file creation property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_version</code> retrieves the version information of various objects
|
||
for a file creation property list. Any pointer parameters which are
|
||
passed as NULL are not queried.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of the file creation property list.
|
||
<dt><em>int *</em> <code>super</code>
|
||
<dd>OUT: Pointer to location to return super block version number.
|
||
<dt><em>int *</em> <code>freelist</code>
|
||
<dd>OUT: Pointer to location to return global freelist version number.
|
||
<dt><em>int *</em> <code>stab</code>
|
||
<dd>OUT: Pointer to location to return symbol table version number.
|
||
<dt><em>int *</em> <code>shhdr</code>
|
||
<dd>OUT: Pointer to location to return shared object header version number.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_version_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetUserblock">H5Pset_userblock</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_userblock</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hsize_t</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets user block size.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_userblock</code> sets the user block size of a
|
||
file creation property list.
|
||
The default user block size is 0; it may be set to any
|
||
power of 2 equal to 512 or greater (512, 1024, 2048, etc.).
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to modify.
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Size of the user-block in bytes.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_userblock_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetUserblock">H5Pget_userblock</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_userblock</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hsize_t *</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the size of a user block.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_userblock</code> retrieves the size of a user block
|
||
in a file creation property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for property list to query.
|
||
<dt><em>hsize_t *</em> <code>size</code>
|
||
<dd>OUT: Pointer to location to return user-block size.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_userblock_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetSizes">H5Pset_sizes</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_sizes</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>size_t</em> <code>sizeof_addr</code>,
|
||
<em>size_t</em> <code>sizeof_size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the byte size of the offsets and lengths used to address objects
|
||
in an HDF5 file.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_sizes</code> sets the byte size of the offsets and lengths used to
|
||
address objects in an HDF5 file. This function is only valid for
|
||
file creation property lists. Passing in a value of 0 for one of the
|
||
sizeof parameters retains the current value. The default value
|
||
for both values is same as <code>sizeof(hsize_t)</code> in the library
|
||
(normally 8 bytes). Valid values currently are 2, 4,
|
||
8 and 16.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to modify.
|
||
<dt><em>size_t</em> <code>sizeof_addr</code>
|
||
<dd>IN: Size of an object offset in bytes.
|
||
<dt><em>size_t</em> <code>sizeof_size</code>
|
||
<dd>IN: Size of an object length in bytes.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_sizes_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetSizes">H5Pget_sizes</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_sizes</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>size_t *</em> <code>sizeof_addr</code>,
|
||
<em>size_t *</em> <code>sizeof_size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the size of the offsets and lengths used in an HDF5 file.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_sizes</code> retrieves the size of the offsets
|
||
and lengths used in an HDF5 file.
|
||
This function is only valid for file creation property lists.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
<dt><em>size_t *</em> <code>size</code>
|
||
<dd>OUT: Pointer to location to return offset size in bytes.
|
||
<dt><em>size_t *</em> <code>size</code>
|
||
<dd>OUT: Pointer to location to return length size in bytes.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_sizes_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetSymK">H5Pset_sym_k</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_sym_k</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>ik</code>,
|
||
<em>int</em> <code>lk</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the size of parameters used to control the symbol table nodes.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_sym_k</code> sets the size of parameters used to
|
||
control the symbol table nodes. This function is only valid
|
||
for file creation property lists. Passing in a value of 0 for
|
||
one of the parameters retains the current value.
|
||
<p>
|
||
<code>ik</code> is one half the rank of a tree that stores a symbol
|
||
table for a group. Internal nodes of the symbol table are on
|
||
average 75% full. That is, the average rank of the tree is
|
||
1.5 times the value of <code>ik</code>.
|
||
<p>
|
||
<code>lk</code> is one half of the number of symbols that can
|
||
be stored in a symbol table node. A symbol table node is the
|
||
leaf of a symbol table tree which is used to store a group.
|
||
When symbols are inserted randomly into a group, the group's
|
||
symbol table nodes are 75% full on average. That is, they
|
||
contain 1.5 times the number of symbols specified by
|
||
<code>lk</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for property list to query.
|
||
<dt><em>int</em> <code>ik</code>
|
||
<dd>IN: Symbol table tree rank.
|
||
<dt><em>int</em> <code>lk</code>
|
||
<dd>IN: Symbol table node size.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_sym_k_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetSymK">H5Pget_sym_k</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_sym_k</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int *</em> <code>ik</code>,
|
||
<em>int *</em> <code>lk</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the size of the symbol table B-tree 1/2 rank
|
||
and the symbol table leaf node 1/2 size.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_sym_k</code> retrieves the size of the
|
||
symbol table B-tree 1/2 rank and the symbol table leaf
|
||
node 1/2 size. This function is only valid for file creation
|
||
property lists. If a parameter valued is set to NULL, that
|
||
parameter is not retrieved. See the description for
|
||
<a href="#Property-SetSymK">H5Pset_sym_k</a> for more
|
||
information.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Property list to query.
|
||
<dt><em>int *</em> <code>ik</code>
|
||
<dd>OUT: Pointer to location to return the symbol table's B-tree 1/2 rank.
|
||
<dt><em>int *</em> <code>size</code>
|
||
<dd>OUT: Pointer to location to return the symbol table's leaf node 1/2 size.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_sym_k_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetIstoreK">H5Pset_istore_k</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_istore_k</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>ik</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the size of the parameter used to control the
|
||
B-trees for indexing chunked datasets.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_istore_k</code> sets the size of the parameter
|
||
used to control the B-trees for indexing chunked datasets.
|
||
This function is only valid for file creation property lists.
|
||
<p>
|
||
<code>ik</code> is one half the rank of a tree that stores
|
||
chunked raw data. On average, such a tree will be 75% full,
|
||
or have an average rank of 1.5 times the value of
|
||
<code>ik</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
<dt><em>int</em> <code>ik</code>
|
||
<dd>IN: 1/2 rank of chunked storage B-tree.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_istore_k_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetIstoreK">H5Pget_istore_k</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_istore_k</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int *</em> <code>ik</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries the 1/2 rank of an indexed storage B-tree.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_istore_k</code> queries the 1/2 rank of
|
||
an indexed storage B-tree.
|
||
The argument <code>ik</code> may be the null pointer (NULL).
|
||
This function is only valid for file creation property lists.
|
||
<p>
|
||
See <a href="#Property-SetIstoreK">H5Pset_istore_k</a> for details.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
<dt><em>int *</em> <code>ik</code>
|
||
<dd>OUT: Pointer to location to return the chunked storage B-tree 1/2 rank.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_istore_k_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetLayout">H5Pset_layout</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_layout</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5D_layout_t</em> <code>layout</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the type of storage used to store the raw data for a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_layout</code> sets the type of storage used to store the
|
||
raw data for a dataset.
|
||
This function is only valid for dataset creation property lists.
|
||
<p>
|
||
Valid values for <code>layout</code> are:
|
||
<ul><dl>
|
||
<dt>H5D_COMPACT
|
||
<dd>Store raw data in the dataset object header in file.
|
||
This should only be used for very small amounts of raw
|
||
data.
|
||
The current limit is approximately 64K (HDF5 Release 1.6).
|
||
<dt>H5D_CONTIGUOUS
|
||
<dd>Store raw data separately from the object header in one
|
||
large chunk in the file.
|
||
<dt>H5D_CHUNKED
|
||
<dd>Store raw data separately from the object header as
|
||
chunks of data in separate locations in the file.
|
||
</dl></ul>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
<dt><em>H5D_layout_t</em> <code>layout</code>
|
||
<dd>IN: Type of storage layout for raw data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_layout_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetLayout">H5Pget_layout</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>H5D_layout_t</em> <code>H5Pget_layout</code>(<em>hid_t</em> <code>plist</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the layout of the raw data for a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_layout</code> returns the layout of the raw data for
|
||
a dataset. This function is only valid for dataset creation
|
||
property lists.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for property list to query.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns the layout type (a non-negative value)
|
||
of a dataset creation property list if successful.
|
||
Valid return values are:
|
||
<ul> <dl>
|
||
<dt>H5D_COMPACT
|
||
<dd>Raw data is stored in the object header in the file.
|
||
<dt>H5D_CONTIGUOUS
|
||
<dd>Raw data is stored separately from the object header in
|
||
one contiguous chunk in the file.
|
||
<dt>H5D_CHUNKED
|
||
<dd>Raw data is stored separately from the object header in
|
||
chunks in separate locations in the file.
|
||
</dl> </ul>
|
||
<p>
|
||
Otherwise, returns a negative value indicating faliure.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_layout_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetChunk">H5Pset_chunk</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_chunk</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>ndims</code>,
|
||
<em>const hsize_t *</em> <code>dim</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the size of the chunks used to store a chunked layout dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_chunk</code> sets the size of the chunks used to
|
||
store a chunked layout dataset. This function is only valid
|
||
for dataset creation property lists.
|
||
The <code>ndims</code> parameter currently must be the same size
|
||
as the rank of the dataset. The values of the <code>dim</code>
|
||
array define the size of the chunks to store the dataset's raw data.
|
||
As a side-effect, the layout of the dataset is changed to
|
||
<code>H5D_CHUNKED</code>, if it is not already.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for property list to query.
|
||
<dt><em>int</em> <code>ndims</code>
|
||
<dd>IN: The number of dimensions of each chunk.
|
||
<dt><em>const hsize_t *</em> <code>dim</code>
|
||
<dd>IN: An array containing the size of each chunk.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_chunk_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetChunk">H5Pget_chunk</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int </em><code>H5Pget_chunk</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>max_ndims</code>,
|
||
<em>hsize_t *</em> <code>dims</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the size of chunks for the raw data of a chunked layout dataset.
|
||
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_chunk</code> retrieves the size of chunks for the
|
||
raw data of a chunked layout dataset.
|
||
This function is only valid for dataset creation property lists.
|
||
At most, <code>max_ndims</code> elements of <code>dims</code>
|
||
will be initialized.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of property list to query.
|
||
<dt><em>int</em> <code>max_ndims</code>
|
||
<dd>IN: Size of the <code>dims</code> array.
|
||
<dt><em>hsize_t *</em> <code>dims</code>
|
||
<dd>OUT: Array to store the chunk dimensions.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns chunk dimensionality successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_chunk_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetAlignment">H5Pset_alignment</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_alignment</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hsize_t</em> <code>threshold</code>,
|
||
<em>hsize_t</em> <code>alignment</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets alignment properties of a file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_alignment</code> sets the alignment properties
|
||
of a file access property list
|
||
so that any file object greater than or equal in size to
|
||
<code>threshold</code> bytes will be aligned on an address
|
||
which is a multiple of <code>alignment</code>. The addresses
|
||
are relative to the end of the user block; the alignment is
|
||
calculated by subtracting the user block size from the
|
||
absolute file address and then adjusting the address to be a
|
||
multiple of <code>alignment</code>.
|
||
<p>
|
||
Default values for <code>threshold</code> and
|
||
<code>alignment</code> are one, implying
|
||
no alignment. Generally the default values will result in
|
||
the best performance for single-process access to the file.
|
||
For MPI-IO and other parallel systems, choose an alignment
|
||
which is a multiple of the disk block size.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for a file access property list.
|
||
<dt><em>hsize_t</em> <code>threshold</code>
|
||
<dd>IN: Threshold value.
|
||
Must be non-negative.
|
||
Note that setting the threshold value to 0 (zero) has
|
||
the effect of a special case, forcing everything
|
||
to be aligned.
|
||
<dt><em>hsize_t</em> <code>alignment</code>
|
||
<dd>IN: Alignment value.
|
||
Must be a positive value.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_alignment_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetAlignment">H5Pget_alignment</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_alignment</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hsize_t</em> <code>*threshold</code>,
|
||
<em>hsize_t</em> <code>*alignment</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the current settings for alignment properties from a
|
||
file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_alignment</code> retrieves the current settings for
|
||
alignment properties from a file access property list.
|
||
The <code>threshold</code> and/or <code>alignment</code> pointers
|
||
may be null pointers (NULL).
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of a file access property list.
|
||
<dt><em>hsize_t</em> <code>*threshold</code>
|
||
<dd>OUT: Pointer to location of return threshold value.
|
||
<dt><em>hsize_t</em> <code>*alignment</code>
|
||
<dd>OUT: Pointer to location of return alignment value.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_alignment_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetExternal">H5Pset_external</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_external</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>const char</em> <code>*name</code>,
|
||
<em>off_t</em> <code>offset</code>,
|
||
<em>hsize_t</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Adds an external file to the list of external files.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_external</code> adds an external file to the
|
||
list of external files.
|
||
<p>
|
||
If a dataset is split across multiple files then the files
|
||
should be defined in order. The total size of the dataset is
|
||
the sum of the <code>size</code> arguments for all the external files. If
|
||
the total size is larger than the size of a dataset then the
|
||
dataset can be extended (provided the data space also allows
|
||
the extending).
|
||
<p>
|
||
The <code>size</code> argument specifies number of bytes reserved
|
||
for data in the external file.
|
||
If <code>size</code> is set to <code>H5F_UNLIMITED</code>, the
|
||
external file can be of unlimited size and no more files can be added to
|
||
the external files list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of a dataset creation property list.
|
||
<dt><em>const char</em> <code>*name</code>
|
||
<dd>IN: Name of an external file.
|
||
<dt><em>off_t</em> <code>offset</code>
|
||
<dd>IN: Offset, in bytes, from the beginning of the file
|
||
to the location in the file where the data starts.
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Number of bytes reserved in the file for the data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_external_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetExternalCount">H5Pget_external_count</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_external_count</code>(<em>hid_t</em> <code>plist</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the number of external files for a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_external_count</code> returns the number of external files
|
||
for the specified dataset.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of a dataset creation property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns the number of external files if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_external_count_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetExternal">H5Pget_external</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_external</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>idx</code>,
|
||
<em>size_t</em> <code>name_size</code>,
|
||
<em>char</em> <code>*name</code>,
|
||
<em>off_t</em> <code>*offset</code>,
|
||
<em>hsize_t</em> <code>*size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns information about an external file.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_external</code> returns information about an external
|
||
file. The external file is specified by its index, <code>idx</code>,
|
||
which is a number from zero to N-1, where N is the value
|
||
returned by <code>H5Pget_external_count</code>.
|
||
At most <code>name_size</code> characters are copied into the
|
||
<code>name</code> array. If the external file name is
|
||
longer than <code>name_size</code> with the null terminator, the
|
||
return value is not null terminated (similar to <code>strncpy()</code>).
|
||
<p>
|
||
If <code>name_size</code> is zero or <code>name</code> is the
|
||
null pointer, the external file name is not returned.
|
||
If <code>offset</code> or <code>size</code> are null pointers
|
||
then the corresponding information is not returned.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier of a dataset creation property list.
|
||
<dt><em>int</em> <code>idx</code>
|
||
<dd>IN: External file index.
|
||
<dt><em>size_t</em> <code>name_size</code>
|
||
<dd>IN: Maximum length of <code>name</code> array.
|
||
<dt><em>char</em> <code>*name</code>
|
||
<dd>OUT: Name of the external file.
|
||
<dt><em>off_t</em> <code>*offset</code>
|
||
<dd>OUT: Pointer to a location to return an offset value.
|
||
<dt><em>hsize_t</em> <code>*size</code>
|
||
<dd>OUT: Pointer to a location to return the size of the
|
||
external file data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_external_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFillValue">H5Pset_fill_value</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fill_value</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>hid_t</em> <code>type_id</code>,
|
||
<em>const void *</em><code>value</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the fill value for a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fill_value</code> sets the fill value for
|
||
a dataset in the dataset creation property list.
|
||
<p>
|
||
<code>value</code> is interpreted as being of datatype
|
||
<code>type_id</code>. This datatype may differ from that of
|
||
the dataset, but the HDF5 library must be able to convert
|
||
<code>value</code> to the dataset datatype when the dataset
|
||
is created.
|
||
<p>
|
||
The default fill value is <code>0</code> (zero), which is
|
||
interpreted according to the actual dataset datatype.
|
||
<p>
|
||
Setting <code>value</code> to <code>NULL</code> indicates
|
||
that the fill value is to be undefined.
|
||
<dt><strong>Notes:</strong>
|
||
<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
|
||
<span class="termEmphasis">fill value</span>.
|
||
This function allows the user application to set that fill value;
|
||
the functions
|
||
<a href="RM_H5D.html#Dataset-Fill">H5Dfill</a> and
|
||
<a href="RM_H5P.html#Property-SetFillTime">H5Pset_fill_time</a>,
|
||
respectively, provide the ability
|
||
to apply the fill value on demand or
|
||
to set up its automatic application.
|
||
<p>
|
||
A fill value should be defined so that it is appropriate for
|
||
the application. While the HDF5 default fill value is
|
||
<code>0</code> (zero), it is often appropriate to use another value.
|
||
It might be useful, for example, to use a value that is
|
||
known to be impossible for the application to legitimately generate.
|
||
<p>
|
||
<code>H5Pset_fill_value</code> is designed to work in
|
||
concert with <code>H5Pset_alloc_time</code> and
|
||
<code>H5Pset_fill_time</code>.
|
||
<code>H5Pset_alloc_time</code> and <code>H5Pset_fill_time</code>
|
||
govern the timing of dataset storage allocation and fill value
|
||
write operations and can be important in tuning application
|
||
performance.
|
||
<p>
|
||
See <a href="RM_H5D.html#Dataset-Create">H5Dcreate</a> for
|
||
further cross-references.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>hid_t</em> <code>type_id</code>,
|
||
<dd>IN: Datatype of <code>value</code>.
|
||
<dt><em>const void *</em><code>value</code>
|
||
<dd>IN: Pointer to buffer containing value to use as fill value.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fill_value_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFillValue">H5Pget_fill_value</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fill_value</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>hid_t</em> <code>type_id</code>,
|
||
<em>void *</em><code>value</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves a dataset fill value.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fill_value</code> returns the dataset
|
||
fill value defined in the dataset creation property list
|
||
<code>plist_id</code>.
|
||
<p>
|
||
The fill value is returned through the <code>value</code>
|
||
pointer and will be converted to the datatype specified
|
||
by <code>type_id</code>.
|
||
This datatype may differ from the
|
||
fill value datatype in the property list,
|
||
but the HDF5 library must be able to convert between the
|
||
two datatypes.
|
||
<p>
|
||
If the fill value is undefined,
|
||
i.e., set to <code>NULL</code> in the property list,
|
||
<code>H5Pget_fill_value</code> will return an error.
|
||
<code>H5Pfill_value_defined</code> should be used to
|
||
check for this condition before
|
||
<code>H5Pget_fill_value</code> is called.
|
||
<p>
|
||
Memory must be allocated by the calling application.
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pget_fill_value</code> is designed to coordinate
|
||
with the dataset storage allocation time and
|
||
fill value write time properties, which can be retrieved
|
||
with the functions <code>H5Pget_alloc_time</code>
|
||
and <code>H5Pget_fill_time</code>, respectively.
|
||
<p>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>hid_t</em> <code>type_id</code>,
|
||
<dd>IN: Datatype identifier for the value passed
|
||
via <code>value</code>.
|
||
<dt><em>void *</em><code>value</code>
|
||
<dd>OUT: Pointer to buffer to contain the returned fill value.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fill_value_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-FillValueDefined">H5Pfill_value_defined</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pfill_value_defined</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5D_fill_value_t *</em><code>status</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Determines whether fill value is defined.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pfill_value_defined</code> determines whether a fill value
|
||
is defined in the dataset creation property list <code>plist_id</code>.
|
||
<p>
|
||
Valid values returnrd in <code>status</code> are as follows:
|
||
<table border=0 width="80%">
|
||
<tr valign="top"><td rowspan="3"> </td><td>
|
||
<code>H5D_FILL_VALUE_UNDEFINED</code>
|
||
</td><td>
|
||
Fill value is undefined.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_FILL_VALUE_DEFAULT</code>
|
||
</td><td>
|
||
Fill value is the library default.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_FILL_VALUE_USER_DEFINED</code>
|
||
</td><td>
|
||
Fill value is defined by the application.
|
||
</td></tr></table>
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pfill_value_defined</code> is designed for use in
|
||
concert with the dataset fill value properties functions
|
||
<code>H5Pget_fill_value</code> and <code>H5Pget_fill_time</code>.
|
||
<p>
|
||
See <a href="RM_H5D.html#Dataset-Create">H5Dcreate</a> for
|
||
further cross-references.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>H5D_fill_value_t *</em><code>status</code>
|
||
<dd>OUT: Status of fill value in property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pfill_value_defined_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFillTime">H5Pset_fill_time</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_fill_time</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5D_fill_time_t</em> <code>fill_time</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the time when fill values are written to a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fill_time</code> sets up the timing for writing fill values
|
||
to a dataset.
|
||
This property is set in the dataset creation property list <code>plist_id</code>.
|
||
<p>
|
||
Timing is specified in <code>fill_time</code> with one of the following values:
|
||
<table border=0 >
|
||
<tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_IFSET</code>
|
||
</td><td>
|
||
Write fill values to the dataset when storage space is allocated
|
||
only if there is a user-defined fill value, i.e., one set with
|
||
<a href="#Property-SetFillValue">H5Pset_fill_value</a>.
|
||
(Default)
|
||
</td></tr><tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_ALLOC</code>
|
||
</td><td>
|
||
Write fill values to the dataset when storage space is allocated.
|
||
</td></tr><tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_NEVER</code>
|
||
</td><td>
|
||
Never write fill values to the dataset.
|
||
</td></tr></table>
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pset_fill_time</code> is designed for coordination
|
||
with the dataset fill value and
|
||
dataset storage allocation time properties, set with the functions
|
||
<code>H5Pset_fill_value</code> and <code>H5Pset_alloc_time</code>.
|
||
<p>
|
||
See <a href="RM_H5D.html#Dataset-Create">H5Dcreate</a> for
|
||
further cross-references.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>H5D_fill_time_t</em> <code>fill_time</code>
|
||
<dd>IN: When to write fill values to a dataset.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fill_time_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFillTime">H5Pget_fill_time</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_fill_time</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5D_fill_time_t *</em><code>fill_time</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the time when fill value are written to a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fill_time</code> examines the dataset creation
|
||
property list <code>plist_id</code> to determine when fill values
|
||
are to be written to a dataset.
|
||
<p>
|
||
Valid values returned in <code>fill_time</code> are as follows:
|
||
<table border=0 >
|
||
<tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_IFSET</code>
|
||
</td><td>
|
||
Fill values are written to the dataset when storage space is allocated
|
||
only if there is a user-defined fill value, i.e., one set with
|
||
<a href="#Property-SetFillValue">H5Pset_fill_value</a>.
|
||
(Default)
|
||
</td></tr><tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_ALLOC</code>
|
||
</td><td>
|
||
Fill values are written to the dataset when storage space is allocated.
|
||
</td></tr><tr valign="top"><td> </td><td>
|
||
<code>H5D_FILL_TIME_NEVER</code>
|
||
</td><td>
|
||
Fill values are never written to the dataset.
|
||
</td></tr></table>
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pget_fill_time</code> is designed to work in coordination
|
||
with the dataset fill value and
|
||
dataset storage allocation time properties, retrieved with the functions
|
||
<code>H5Pget_fill_value</code> and <code>H5Pget_alloc_time</code>.
|
||
<p>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>H5D_fill_time_t *</em><code>fill_time</code>
|
||
<dd>OUT: Setting for the timing of writing fill values to the dataset.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fill_time_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetAllocTime">H5Pset_alloc_time</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pset_alloc_time</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5D_alloc_time_t</em> <code>alloc_time</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the timing for storage space allocation.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_alloc_time</code> sets up the timing for the allocation of
|
||
storage space for a dataset's raw data.
|
||
This property is set in the dataset creation property list
|
||
<code>plist_id</code>.
|
||
<p>
|
||
Timing is specified in <code>fill_time</code> with one of the
|
||
following values:
|
||
<table border=0 >
|
||
<tr valign="top"><td rowspan="4"> </td><td>
|
||
<code>H5D_ALLOC_TIME_DEFAULT</code>
|
||
</td><td>
|
||
Allocate dataset storage space at the default time.<br>
|
||
(Defaults differ by storage method.)
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_EARLY</code>
|
||
</td><td>
|
||
Allocate all space when the dataset is created.<br>
|
||
(Default for compact datasets.)
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_INCR</code>
|
||
</td><td>
|
||
Allocate space incrementally, as data is written to the dataset.<br>
|
||
(Default for chunked storage datasets.)
|
||
<li>Chunked datasets:
|
||
Storage space allocation for each chunk is deferred until data
|
||
is written to the chunk.
|
||
<li>Contiguous datasets:
|
||
Incremental storage space allocation for contiguous data
|
||
is treated as late allocation.
|
||
<li>Compact datasets:
|
||
Incremental allocation is not allowed with compact datasets;
|
||
</em><code>H5Pset_alloc_time</code> will return an error.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_LATE</code>
|
||
</td><td>
|
||
Allocate all space when data is first written to the dataset.<br>
|
||
(Default for contiguous datasets.)
|
||
</td></tr></table>
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pset_alloc_time</code> is designed to work in concert
|
||
with the dataset fill value and fill value write time properties,
|
||
set with the functions
|
||
<code>H5Pset_fill_value</code> and <code>H5Pset_fill_time</code>.
|
||
<p>
|
||
<p>
|
||
See <a href="RM_H5D.html#Dataset-Create">H5Dcreate</a> for
|
||
further cross-references.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>H5D_alloc_time_t</em> <code>alloc_time</code>
|
||
<dd>IN: When to allocate dataset storage space.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_alloc_time_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetAllocTime">H5Pget_alloc_time</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t </em><code>H5Pget_alloc_time</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5D_alloc_time_t *</em><code>alloc_time</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the timing for storage space allocation.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_alloc_time</code> retrieves the timing for allocating
|
||
storage space for a dataset's raw data.
|
||
This property is set in the dataset creation property list
|
||
<code>plist_id</code>.
|
||
<p>
|
||
The timing setting is returned in <code>fill_time</code> as one of the
|
||
following values:
|
||
<table border=0 >
|
||
<tr valign="top"><td rowspan="4"> </td><td>
|
||
<code>H5D_ALLOC_TIME_DEFAULT</code>
|
||
</td><td>
|
||
Uses the default allocation time, based on the dataset storage method.<br>
|
||
See the <code>fill_time</code> description in
|
||
<a href="#Property-SetAllocTime">H5Pset_alloc_time</a> for
|
||
default allocation times for various storage methods.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_EARLY</code>
|
||
</td><td>
|
||
All space is allocated when the dataset is created.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_INCR</code>
|
||
</td><td>
|
||
Space is allocated incrementally as data is written to the dataset.
|
||
</td></tr><tr valign="top"><td>
|
||
<code>H5D_ALLOC_TIME_LATE</code>
|
||
</td><td>
|
||
All space is allocated when data is first written to the dataset.
|
||
</td></tr></table>
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pget_alloc_time</code> is designed to work in concert
|
||
with the dataset fill value and fill value write time properties,
|
||
set with the functions
|
||
<code>H5Pget_fill_value</code> and <code>H5Pget_fill_time</code>.
|
||
<p>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
<dt><em>H5D_alloc_time_t *</em><code>alloc_time</code>
|
||
<dd>IN: When to allocate dataset storage space.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_alloc_time_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFilter">H5Pset_filter</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_filter</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5Z_filter_t</em> <code>filter</code>,
|
||
<em>unsigned int</em> <code>flags</code>,
|
||
<em>size_t</em> <code>cd_nelmts</code>,
|
||
<em>const unsigned int</em> <code>cd_values[]</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Adds a filter to the filter pipeline.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_filter</code> adds the specified
|
||
<code>filter</code> and corresponding properties to the
|
||
end of an output filter pipeline.
|
||
If <code>plist</code> is a dataset creation property list,
|
||
the filter is added to the permanent filter pipeline;
|
||
if <code>plist</code> is a dataset transfer property list,
|
||
the filter is added to the transient filter pipeline.
|
||
<p>
|
||
The array <code>cd_values</code> contains
|
||
<code>cd_nelmts</code> integers which are auxiliary data
|
||
for the filter. The integer values will be stored in the
|
||
dataset object header as part of the filter information.
|
||
<p>
|
||
The <code>flags</code> argument is a bit vector with
|
||
the following fields specifying certain general properties
|
||
of the filter:
|
||
<center>
|
||
<table align=center width="75%">
|
||
<tr valign=top>
|
||
<td valign=top><code>H5Z_FLAG_OPTIONAL</code> </td>
|
||
<td valign=top>If this bit is set then the filter is
|
||
optional. If the filter fails (see below) during an
|
||
<code>H5Dwrite</code> operation then the filter is
|
||
just excluded from the pipeline for the chunk for which
|
||
it failed; the filter will not participate in the
|
||
pipeline during an <code>H5Dread</code> of the chunk.
|
||
This is commonly used for compression filters: if the
|
||
filter result would be larger than the input, then
|
||
the compression filter returns failure and the
|
||
uncompressed data is stored in the file. If this bit is
|
||
clear and a filter fails, then <code>H5Dwrite</code>
|
||
or <code>H5Dread</code> also fails.
|
||
<p>
|
||
This flag should not be set for the Fletcher32 checksum
|
||
filter as it will bypass the checksum filter without
|
||
reporting checksum errors to an application.</td>
|
||
</tr>
|
||
</table>
|
||
</center>
|
||
<p>
|
||
The <code>filter</code> parameter specifies the filter to be set.
|
||
Valid values are as follows:
|
||
|
||
<center>
|
||
<table width=75%>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_DEFLATE</code>
|
||
</td><td>
|
||
Data compression filter, employing the gzip algorithm
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_SHUFFLE</code>
|
||
</td><td>
|
||
Data shuffling filter
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_FLETCHER32 </code>
|
||
</td><td>
|
||
Error detection filter, employing the Fletcher32 checksum algorithm
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_SZIP</code>
|
||
</td><td>
|
||
Data compression filter, employing the SZIP algorithm
|
||
</td></tr>
|
||
</table>
|
||
</center>
|
||
<p>
|
||
Also see <a href="#Property-SetEdcCheck">H5Pset_edc_check</a> and
|
||
<a href="Property-SetFilterCallback">H5Pset_filter_callback</a>.
|
||
|
||
<dt><strong>Notes:</strong>
|
||
<dd>This function currently supports only the permanent filter
|
||
pipeline; <code>plist</code> must be a dataset creation
|
||
property list.
|
||
<p>
|
||
If multiple filters are set for a property list, they will be
|
||
applied to each chunk in the order in which they were set.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Property list identifier.
|
||
<dt><em>H5Z_filter_t</em> <code>filter</code>
|
||
<dd>IN: Filter to be added to the pipeline.
|
||
<dt><em>unsigned int</em> <code>flags</code>
|
||
<dd>IN: Bit vector specifying certain general properties
|
||
of the filter.
|
||
<dt><em>size_t</em> <code>cd_nelmts</code>
|
||
<dd>IN: Number of elements in <code>cd_values</code>.
|
||
<dt><em>const unsigned int</em> <code>cd_values[]</code>
|
||
<dd>IN: Auxiliary data for the filter.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_filter_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-AllFiltersAvail">H5Pall_filters_avail</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>htri_t</em> <code>H5Pall_filters_avail</code>(<em>hid_t</em> <code>dcpl_id</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Verifies that all required filters are available.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pall_filters_avail</code> verifies that all of the filters
|
||
set in the dataset creation property list <code>dcpl_id</code> are
|
||
currently available.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dcpl_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns <code>TRUE</code> if all filters are available
|
||
and <code>FALSE</code> if one or more is not currently available.<br>
|
||
Returns <code>FAIL</code>, a negative value, on error.
|
||
<!--<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pall_filters_avail_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetNFilters">H5Pget_nfilters</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_nfilters</code>(<em>hid_t</em> <code>plist</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the number of filters in the pipeline.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_nfilters</code> returns the number of filters
|
||
defined in the filter pipeline associated with the property list
|
||
<code>plist</code>.
|
||
<p>
|
||
In each pipeline, the filters are numbered from
|
||
0 through <em>N</em>-1, where <em>N</em> is the value returned
|
||
by this function. During output to the file, the filters are
|
||
applied in increasing order; during input from the file, they
|
||
are applied in decreasing order.
|
||
<p>
|
||
<code>H5Pget_nfilters</code> returns the number of filters
|
||
in the pipeline, including zero (<code>0</code>) if there
|
||
are none.
|
||
<dt><strong>Note:</strong>
|
||
<dd>This function currently supports only the permanent filter
|
||
pipeline; <code>plist_id</code> must be a dataset creation
|
||
property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns the number of filters in the pipeline if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_nfilters_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFilter">H5Pget_filter</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>H5Z_filter_t</em> <code>H5Pget_filter</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>filter_number</code>,
|
||
<em>unsigned int *</em><code>flags</code>,
|
||
<em>size_t *</em><code>cd_nelmts</code>,
|
||
<em>unsigned int *</em><code>cd_values</code>,
|
||
<em>size_t</em> <code>namelen</code>,
|
||
<em>char</em> <code>name[]</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns information about a filter in a pipeline.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_filter</code> returns information about a
|
||
filter, specified by its filter number, in a filter pipeline,
|
||
specified by the property list with which it is associated.
|
||
<p>
|
||
If <code>plist</code> is a dataset creation property list,
|
||
the pipeline is a permanent filter pipeline;
|
||
if <code>plist</code> is a dataset transfer property list,
|
||
the pipeline is a transient filter pipeline.
|
||
<p>
|
||
On input, <code>cd_nelmts</code> indicates the number of entries
|
||
in the <code>cd_values</code> array, as allocated by the caller;
|
||
on return,<code>cd_nelmts</code> contains the number of values
|
||
defined by the filter.
|
||
<p>
|
||
<code>filter_number</code> is a value between zero and
|
||
<em>N</em>-1, as described in
|
||
<a href="#Property-GetNFilters"><code>H5Pget_nfilters</code></a>.
|
||
The function will return a negative value if the filter number
|
||
is out of range.
|
||
<p>
|
||
If <code>name</code> is a pointer to an array of at least
|
||
<code>namelen</code> bytes, the filter name will be copied
|
||
into that array. The name will be null terminated if
|
||
<code>namelen</code> is large enough. The filter name returned
|
||
will be the name appearing in the file, the name registered
|
||
for the filter, or an empty string.
|
||
<p>
|
||
The structure of the <code>flags</code> argument is discussed
|
||
in <a href="#Property-SetFilter"><code>H5Pset_filter</code></a>.
|
||
<dt><strong>Note:</strong>
|
||
<dd>This function currently supports only the permanent filter
|
||
pipeline; <code>plist</code> must be a dataset creation property
|
||
list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Property list identifier.
|
||
<dt><em>int</em> <code>filter_number</code>
|
||
<dd>IN: Sequence number within the filter pipeline of
|
||
the filter for which information is sought.
|
||
<dt><em>unsigned int *</em><code>flags</code>
|
||
<dd>OUT: Bit vector specifying certain general properties
|
||
of the filter.
|
||
<dt><em>size_t *</em><code>cd_nelmts</code>
|
||
<dd>IN/OUT: Number of elements in <code>cd_values</code>.
|
||
<dt><em>unsigned int *</em><code>cd_values</code>
|
||
<dd>OUT: Auxiliary data for the filter.
|
||
<dt><em>size_t</em> <code>namelen</code>
|
||
<dd>IN: Anticipated number of characters in <code>name</code>.
|
||
<dt><em>char</em> <code>name[]</code>
|
||
<dd>OUT: Name of the filter.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns the filter identifier if successful:
|
||
<center>
|
||
<table width=75%>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_DEFLATE</code>
|
||
</td><td>
|
||
Data compression filter, employing the gzip algorithm
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_SHUFFLE</code>
|
||
</td><td>
|
||
Data shuffling filter
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_FLETCHER32 </code>
|
||
</td><td>
|
||
Error detection filter, employing the Fletcher32 checksum algorithm
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5Z_FILTER_SZIP</code>
|
||
</td><td>
|
||
Data compression filter, employing the SZIP algorithm
|
||
</td></tr>
|
||
</table>
|
||
</center>
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_filter_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFilterById">H5Pget_filter_by_id</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_filter_by_id</code>(
|
||
<em>hid_t</em> <code>plist_id</code>,
|
||
<em>H5Z_filter_t</em> <code>filter</code>,
|
||
<em>unsigned int *</em><code>flags</code>,
|
||
<em>size_t *</em><code>cd_nelmts</code>,
|
||
<em>unsigned int</em> <code>cd_values[]</code>,
|
||
<em>size_t</em> <code>namelen</code>,
|
||
<em>char </em><code>name[]</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns information about the specified filter.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_filter_by_id</code> returns information about the
|
||
filter specified in <code>filter</code>, a filter identifier.
|
||
<p>
|
||
<code>plist_id</code> must identify a dataset creation property list
|
||
and <code>filter</code> will be in a permanent filter pipeline.
|
||
<p>
|
||
The <code>filter</code> and <code>flags</code> parameters are used
|
||
in the same manner as described in the discussion of
|
||
<a href="#Property-SetFilter"><code>H5Pset_filter</code></a>.
|
||
<p>
|
||
Aside from the fact that they are used for output, the
|
||
parameters <code>cd_nelmts</code> and <code>cd_values[]</code> are
|
||
used in the same manner as described in the discussion
|
||
of <a href="#Property-SetFilter"><code>H5Pset_filter</code></a>.
|
||
On input, the <code>cd_nelmts</code> parameter indicates the
|
||
number of entries in the <code>cd_values[]</code> array
|
||
allocated by the calling program; on exit it contains the
|
||
number of values defined by the filter.
|
||
<p>
|
||
On input, the <code>name_len</code> parameter indicates the
|
||
number of characters allocated for the filter name
|
||
by the calling program in the array <code>name[]</code>.
|
||
On exit it contains the length in characters of name of the filter.
|
||
On exit <code>name[]</code> contains the name of the filter
|
||
with one character of the name in each element of the array.
|
||
<p>
|
||
If the filter specified in <code>filter</code> is not
|
||
set for the property list, an error will be returned
|
||
and <code>H5Pget_filter_by_id</code> will fail.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Property list identifier.
|
||
<dt><em>H5Z_filter_t</em> <code>filter</code>
|
||
<dd>IN: Filter identifier.
|
||
<dt><em>unsigned int</em> <code>flags</code>
|
||
<dd>OUT: Bit vector specifying certain general properties
|
||
of the filter.
|
||
<dt><em>size_t</em> <code>cd_nelmts</code>
|
||
<dd>IN/OUT: Number of elements in <code>cd_values</code>.
|
||
<dt><em>const unsigned int</em> <code>cd_values[]</code>
|
||
<dd>OUT: Auxiliary data for the filter.
|
||
<dt><em>size_t</em> <code>namelen</code>
|
||
<dd>IN/OUT: Length of filter name and
|
||
number of elements in <code>name[]</code>.
|
||
<dt><em>char *</em><code>name[]</code>
|
||
<dd>OUT: Name of filter.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_filter_by_id_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-ModifyFilter">H5Pmodify_filter</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pmodify_filter</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5Z_filter_t</em> <code>filter</code>,
|
||
<em>unsigned int</em> <code>flags</code>,
|
||
<em>size_t</em> <code>cd_nelmts</code>,
|
||
<em>const unsigned int</em> <code>cd_values[]</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Modifies a filter in the filter pipeline.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pmodify_filter</code> modifies the specified
|
||
<code>filter</code> in the filter pipeline.
|
||
<code>plist</code> must be a dataset creation property list
|
||
and the modified filter will be in a permanent filter pipeline.
|
||
<p>
|
||
The <code>filter</code>, <code>flags</code>
|
||
<code>cd_nelmts[]</code>, and <code>cd_values</code> parameters
|
||
are used in the same manner and accept the same values as described
|
||
in the discussion of <a href="#Property-SetFilter">H5Pset_filter</a>.
|
||
<dt><strong>Note:</strong>
|
||
<dd>This function currently supports only the permanent filter
|
||
pipeline; <code>plist_id</code> must be a dataset creation
|
||
property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Property list identifier.
|
||
<dt><em>H5Z_filter_t</em> <code>filter</code>
|
||
<dd>IN: Filter to be modified.
|
||
<dt><em>unsigned int</em> <code>flags</code>
|
||
<dd>IN: Bit vector specifying certain general properties
|
||
of the filter.
|
||
<dt><em>size_t</em> <code>cd_nelmts</code>
|
||
<dd>IN: Number of elements in <code>cd_values</code>.
|
||
<dt><em>const unsigned int</em> <code>cd_values[]</code>
|
||
<dd>IN: Auxiliary data for the filter.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
|
||
dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pmodify_filter_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetShuffle">H5Pset_shuffle</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_shuffle</code>(<em>hid_t</em> <code>plist_id</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up use of the shuffle filter.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_shuffle</code> sets the shuffle filter,
|
||
<code>H5Z_FILTER_SHUFFLE</code>,
|
||
in the dataset creation property list <code>plist_id</code>. <20>
|
||
<p>
|
||
The shuffle filter <span class=termEmphasis>de-interlaces</span>
|
||
a block of data by reordering the bytes.
|
||
All the bytes from one consistent byte position of
|
||
each data element are placed together in one block;
|
||
all bytes from a second consistent byte position of
|
||
each data element are placed together a second block; etc.
|
||
For example, given three data elements of a 4-byte datatype
|
||
stored as <code>012301230123</code>,
|
||
shuffling will re-order data as <code>000111222333</code>.
|
||
This can be a valuable step in an effective compression
|
||
algorithm because the bytes in each byte position are often
|
||
closely related to each other and putting them together
|
||
can increase the compression ratio.
|
||
<p>
|
||
This filter is designed to be used in combination with
|
||
a compression filter.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_shuffle_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFletcher32">H5Pset_fletcher32</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fletcher32</code>(<em>hid_t</em> <code>plist</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up use of the Fletcher32 checksum filter.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fletcher32</code> sets the Fletcher32 checksum filter
|
||
in the dataset creation property list <code>plist</code>. <20>
|
||
<dt><strong>Note:</strong>
|
||
<dd>The initial error detection implementation supports
|
||
error detection for chunked datasets only.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Dataset creation property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fletcher32_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetSzip">H5Pset_szip</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_szip</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>unsigned int</em> <code>options_mask</code>,
|
||
<em>unsigned int</em> <code>pixels_per_block</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up use of the SZIP compression filter.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_szip</code> sets a filter for the dataset
|
||
to SZIP compression, <code>H5Z_FILTER_SZIP</code>,
|
||
a compression method designed for use with scientific data.
|
||
<p>
|
||
SZIP options are passed in an options mask, <code>options_mask</code>,
|
||
as follows.
|
||
<center>
|
||
<table>
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<b>Option</b>
|
||
</td><td>
|
||
<hr>
|
||
<b>Description</b>
|
||
<br>
|
||
<font size=-1>(Paired options are mutually exclusive.)</font>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5_SZIP_CHIP_OPTION_MASK </code>
|
||
</td><td>
|
||
<hr>
|
||
Compresses exactly as in hardware.
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5_SZIP_ALLOW_K13_OPTION_MASK </code>
|
||
</td><td>
|
||
Allows k split = 13 compression mode. (Default)
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5_SZIP_EC_OPTION_MASK</code>
|
||
</td><td>
|
||
<hr>
|
||
Selects entropy coding method. (Default)
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5_SZIP_NN_OPTION_MASK</code>
|
||
</td><td>
|
||
Selects nearest neighbor coding method.
|
||
</td></tr>
|
||
|
||
<!-- THESE OPTIONS ARE SET DIRECTLY BY THE LIBRARY AND
|
||
ARE NOT AVAILABLE FOR USER CONTROL
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>LSB_OPTION_MASK</code>
|
||
</td><td>
|
||
<hr>
|
||
Data format is least significant byte first. (Default)
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>MSB_OPTION_MASK</code>
|
||
</td><td>
|
||
Data format is most significant byte first.
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>RAW_OPTION_MASK</code>
|
||
</td><td>
|
||
<hr>
|
||
Do not output SZIP header.<br>
|
||
Not a default setting, but should always be set in HDF5.
|
||
</td></tr>
|
||
|
||
END LIBRARY-SET OPTION TAGS -->
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
</td><td>
|
||
<hr>
|
||
</td></tr>
|
||
</table>
|
||
</center>
|
||
Some typical usages are as follows:
|
||
<ul>
|
||
<li>One of the compression methods,
|
||
<code>H5_SZIP_EC_OPTION_MASK</code> or
|
||
<code>H5_SZIP_NN_OPTION_MASK</code>, is specified.
|
||
<li>The <code>H5_SZIP_ALLOW_K13_OPTION_MASK</code> is used.
|
||
</ul>
|
||
<p>
|
||
Options are combined to create the options mask by means of
|
||
a logical <code>OR</code> operation. For example, the
|
||
option mask can be set as follows:
|
||
<br><br><code>
|
||
options_mask = H5_SZIP_NN_OPTION_MASK | H5_SZIP_ALLOW_K13_OPTION_MASK;
|
||
</code>
|
||
<p>
|
||
SZIP compresses data block by block, with a user-tunable block size.
|
||
This block size is passed in the parameter
|
||
<code>pixels_per_block</code> and must be even,
|
||
with typical values being <code>8</code>, <code>10</code>,
|
||
<code>16</code>, and <code>32</code>.
|
||
The more pixel values vary, the smaller this number should be.
|
||
For optimal performance, the number of pixels per scan line
|
||
(i.e., the size of the fastest-changing dimension in the chunk)
|
||
should be an even multiple of the number of pixels per block.
|
||
<p>
|
||
<dt><strong>Notes:</strong>
|
||
<dd>SZIP works only with datasets with 1 through 24 bits/pixel,
|
||
32 pits/pixel, or 64 bits/pixel.
|
||
<p>
|
||
SZIP typically requires that the user application also supply
|
||
the number of pixels in the object to be compressed,
|
||
the number of bits per pixel, and the number of pixels per scan line.
|
||
These values need not be independently supplied in the HDF5
|
||
environment as they are derived from the datatype and dataspace,
|
||
which are already known.
|
||
<p>
|
||
Also see
|
||
<a href="http://hdf.ncsa.uiuc.edu/HDF5/doc_resource/SZIP/index.html"
|
||
target="External">SZIP Compression in HDF5</a>
|
||
for further discussion of SZIP compression in HDF5,
|
||
for <em>important information regarding terms of use and
|
||
the SZIP copyright notice</em>,
|
||
and for a list of SZIP-related references.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Dataset creation or dataset transfer property list
|
||
identifier.
|
||
<dt><em>unsigned int</em> <code>options_mask</code>
|
||
<dd>IN: A bit-mask conveying the desired SZIP options.
|
||
<dt><em>unsigned int</em> <code>pixels_per_block</code>
|
||
<dd>IN: The number of pixels or data elements in each data block.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_szip_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
|
||
<!--
|
||
<p>
|
||
<dt><strong>References:</strong>
|
||
(This material will appear in a separate file in the final release documents.)
|
||
<ul>
|
||
<li>J. Venbrux, P.S. Yeh, G. Zweigle, J. Vesel,
|
||
"A VLSI Chip Solution for Lossless Medical Imagery Compression,"
|
||
<cite>SPIE conference on Medical Imaging 1994</cite>.
|
||
Vol. 2164, pp. 561-572, February 13-14, 1994,
|
||
Newport Beach, California.
|
||
|
||
<li>J. Venbrux, J. Gambles, D. Wiseman, G. Zweigle, W.H. Miller, P.S. Yeh,
|
||
"A VLSI Chip Set Development for Lossless Data Compression,"
|
||
<cite>AIAA Computing in Aerospace 9 Conference</cite>.
|
||
October 1993, San Diego, California.
|
||
|
||
<li>J. Venbrux, G. Zweigle, J. Gambles, D.Wiseman, W. Miller, P. Yeh,
|
||
"An Adaptive, Lossless Data Compression Algorithm and VLSI
|
||
Implementations,"
|
||
<cite>NASA Symposium on VLSI Design</cite>.
|
||
Pp 1.2.1-1.2.16, November 1993.
|
||
|
||
<li>J. Venbrux, P.S. Yeh, and M. N. Liu,
|
||
"A VLSI Chip Set for High Speed Lossless Data Compression,"
|
||
<cite>IEEE Transactions on Circuits and Systems for Video
|
||
Technology</cite>.
|
||
Pp. 381-391, December 1992.
|
||
|
||
<li>CCSDS 120.0-G-1.
|
||
<cite>Lossless Data Compression</cite>.
|
||
Green Book. Issue 1, May 1997.
|
||
This Report presents a summary of the key operational concepts and
|
||
rationale underlying the requirements for the CCSDS Recommendation,
|
||
Lossless Data Compression. Supporting performance information along
|
||
with illustrations are also included. This Report also provides a
|
||
broad tutorial overview of the CCSDS Lossless Data Compression
|
||
algorithm and is aimed at helping first-time readers
|
||
to understand the Recommendation.
|
||
<br>
|
||
Appears In: CCSDS Publications TGannett 02/04/2003 387K Services
|
||
Check Out View
|
||
|
||
<li>CCSDS 121.0-B-1.
|
||
<cite>Lossless Data Compression</cite>.
|
||
Blue Book. Issue 1, May 1997.
|
||
This Recommendation defines a source-coding data-compression
|
||
algorithm and specifies how data compressed using the algorithm
|
||
are inserted into source packets for retrieval and decoding.
|
||
<br>
|
||
Appears In: CCSDS Publications
|
||
|
||
</ul>
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetEdcCheck">H5Pset_edc_check</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_edc_check</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5Z_EDC_t</em> <code>check</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets whether to enable error-detection when reading a dataset.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_edc_check</code> sets the dataset transfer property
|
||
list <code>plist</code> to enable or disable error detection
|
||
when reading data.
|
||
<p>
|
||
Whether error detection is enabled or disabled is specified
|
||
in the <code>check</code> parameter.
|
||
Valid values are as follows:
|
||
<table border="0">
|
||
<tr><td> </td><td>
|
||
<code>H5Z_ENABLE_EDC</code> (default)
|
||
<br>
|
||
<code>H5Z_DISABLE_EDC</code>
|
||
</td></tr>
|
||
</table>
|
||
<p>
|
||
The error detection algorithm used is the algorithm previously
|
||
specified in the corresponding dataset creation property list. <20>
|
||
<p>
|
||
This function does not affect the use of error detection when
|
||
writing data. <20>
|
||
<dt><strong>Note:</strong>
|
||
<dd>The initial error detection implementation, Fletcher32 checksum,
|
||
supports error detection for chunked datasets only.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Dataset transfer property list identifier.
|
||
<dt><em>H5Z_EDC_t</em> <code>check</code>
|
||
<dd>IN: Specifies whether error checking is enabled or disabled
|
||
for dataset read operations.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_edc_check_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetEdcCheck">H5Pget_edc_check</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>H5Z_EDC_t</em> <code>H5Pget_edc_check</code>(<em>hid_t</em> <code>plist</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Determines whether error-detection is enabled for dataset reads.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_edc_check</code> queries the dataset transfer property
|
||
list <code>plist</code> to determine whether error detection
|
||
is enabled for data read operations.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Dataset transfer property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns <code>H5P_ENABLE_EDC</code> or <code>H5P_DISABLE_EDC</code>
|
||
if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_edc_check_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFilterCallback">H5Pset_filter_callback</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_filter_callback</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5Z_filter_func_t</em> <code>func</code>,
|
||
<em>void *</em><code>op_data</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets user-defined filter callback function.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_filter_callback</code> sets the user-defined
|
||
filter callback function <code>func</code> in the
|
||
dataset transfer property list <code>plist</code>.
|
||
<p>
|
||
The parameter <code>op_data</code> is a pointer to user-defined
|
||
input data for the callback function and will be passed through
|
||
to the callback function.
|
||
<p>
|
||
The callback function <code>func</code> defines the actions
|
||
an application is to take when a filter fails.
|
||
The function prototype is as follows:
|
||
<dir>
|
||
<code>typedef</code> <em>H5Z_cb_return_t</em> (<code>H5Z_filter_func_t</code>)
|
||
(<em>H5Z_filter_t</em> <code>filter</code>,
|
||
<em>void *</em><code>buf</code>,
|
||
<em>size_t</em> <code>buf_size</code>,
|
||
<em>void *</em><code>op_data</code>)
|
||
</dir>
|
||
<p>
|
||
where <code>filter</code> indicates which filter has failed,
|
||
<code>buf</code> and <code>buf_size</code> are used to pass in
|
||
the failed data,
|
||
and <code>op_data</code> is the required input data for this
|
||
callback function.
|
||
<p>
|
||
Valid callback function return values are
|
||
<code>H5Z_CB_FAIL</code> and <code>H5Z_CB_CONT</code>. <20>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Dataset transfer property list identifier.
|
||
<dt><em>H5Z_filter_func_t</em> <code>func</code>
|
||
<dd>IN: User-defined filter callback function.
|
||
<dt><em>void *</em><code>op_data</code>
|
||
<dd>IN: User-defined input data for the callback function.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_filter_callback_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_meta_block_size</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the minimum metadata block size.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_meta_block_size</code> sets the
|
||
minimum size, in bytes, of metadata block allocations when
|
||
<code>H5FD_FEAT_AGGREGATE_METADATA</code> is set by a VFL driver.
|
||
<p>
|
||
Each <i>raw</i> metadata block is initially allocated to be of the
|
||
given size. Specific metadata objects (e.g., object headers,
|
||
local heaps, B-trees) are then sub-allocated from this block.
|
||
<p>
|
||
The default setting is 2048 bytes, meaning that the library
|
||
will attempt to aggregate metadata in at least 2K blocks in the file.
|
||
Setting the value to <code>0</code> (zero) with this function
|
||
will turn off metadata aggregation, even if the VFL driver attempts
|
||
to use the metadata aggregation strategy.
|
||
<p>
|
||
Metadata aggregation reduces the number of small data objects
|
||
in the file that would otherwise be required for metadata.
|
||
The aggregated block of metadata is usually written in a
|
||
single write action and always in a contiguous block,
|
||
potentially significantly improving library and application
|
||
performance.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Minimum size, in bytes, of metadata block allocations.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_meta_block_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetMetaBlockSize">H5Pget_meta_block_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_meta_block_size</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t *</em><code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the current metadata block size setting.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_meta_block_size</code> returns the current
|
||
minimum size, in bytes, of new metadata block allocations.
|
||
This setting is retrieved from the file access property list
|
||
<code>fapl_id</code>.
|
||
<p>
|
||
This value is set by
|
||
<a href="#Property-SetMetaBlockSize">H5Pset_meta_block_size</a>
|
||
and is retrieved from the file access property list
|
||
<code>fapl_id</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t *</em><code>size</code>
|
||
<dd>OUT: Minimum size, in bytes, of metadata block allocations.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_meta_block_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetSieveBufSize">H5Pset_sieve_buf_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_sieve_buf_size</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the maximum size of the data sieve buffer.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_sieve_buf_size</code> sets <code>size</code>,
|
||
the maximum size in bytes of the data sieve buffer, which is
|
||
used by file drivers that are capable of using data sieving.
|
||
<p>
|
||
The data sieve buffer is used when performing I/O on datasets
|
||
in the file. Using a buffer which is large enough to hold
|
||
several pieces of the dataset being read in for
|
||
hyperslab selections boosts performance by quite a bit.
|
||
<p>
|
||
The default value is set to 64KB, indicating that file I/O for
|
||
raw data reads and writes will occur in at least 64KB blocks.
|
||
Setting the value to 0 with this API function will turn off the
|
||
data sieving, even if the VFL driver attempts to use that strategy.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Maximum size, in bytes, of data sieve buffer.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_sieve_buf_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetSieveBufSize">H5Pget_sieve_buf_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_sieve_buf_size</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t *</em><code>size</code>
|
||
)
|
||
<br>
|
||
<br>
|
||
<dt><strong>Purpose:</strong>
|
||
<dd> Returns maximum data sieve buffer size.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_sieve_buf_size</code> retrieves, <code>size</code>,
|
||
the current maximum size of the data sieve buffer.
|
||
<p>
|
||
This value is set by
|
||
<a href="#Property-SetSieveBufSize">H5Pset_sieve_buf_size</a>
|
||
and is retrieved from the file access property list
|
||
<code>fapl_id</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t *</em><code>size</code>
|
||
<dd>IN: Maximum size, in bytes, of data sieve buffer.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_sieve_buf_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetGCReferences">H5Pset_gc_references</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_gc_reference</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>unsigned</em> <code>gc_ref</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets garbage collecting references flag.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_gc_references</code> sets the flag for
|
||
garbage collecting references for the file.
|
||
<p>
|
||
Dataset region references and other reference types use space
|
||
in an HDF5 file's global heap. If garbage collection is on
|
||
and the user passes in an uninitialized value in a reference structure,
|
||
the heap might get corrupted. When garbage collection is off, however,
|
||
and the user re-uses a reference, the previous heap block will be
|
||
orphaned and not returned to the free heap space.
|
||
<p>
|
||
When garbage collection is on, the user must initialize the
|
||
reference structures to 0 or risk heap corruption.
|
||
<p>
|
||
The default value for garbage collecting references is off.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>unsigned</em> <code>gc_ref</code>
|
||
<dd>IN: Flag setting reference garbage collection to
|
||
on (<code>1</code>) or off (<code>0</code>).
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_gc_references_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetGCReferences">H5Pget_gc_references</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_gc_references</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>unsigned</em> *<code>gc_ref</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns garbage collecting references setting.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_gc_references</code> returns the current setting
|
||
for the garbage collection references property from
|
||
the specified file access property list.
|
||
The garbage collection references property is set
|
||
by <a href="#Property-SetGCReferences">H5Pset_gc_references</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>unsigned</em> <code>gc_ref</code>
|
||
<dd>OUT: Flag returning the state of reference garbage collection.
|
||
A returned value of <code>1</code> indicates that
|
||
garbage collection is on while
|
||
<code>0</code> indicates that garbage collection is off.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_gc_references_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetCache">H5Pset_cache</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_cache</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>int</em> <code>mdc_nelmts</code>,
|
||
<em>int</em> <code>rdcc_nelmts</code>,
|
||
<em>size_t</em> <code>rdcc_nbytes</code>,
|
||
<em>double</em> <code>rdcc_w0</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the meta data cache and raw data chunk cache parameters.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_cache</code> sets
|
||
the number of elements (objects) in the meta data cache and
|
||
the number of elements, the total number of bytes, and
|
||
the preemption policy value in the raw data chunk cache.
|
||
<p>
|
||
The <em>plist_id</em> is a file access property list.
|
||
The number of elements (objects) in the meta data cache
|
||
and the raw data chunk cache are <em>mdc_nelmts</em> and
|
||
<em>rdcc_nelmts</em>, respectively.
|
||
The total size of the raw data chunk cache and the preemption policy
|
||
are <em>rdcc_nbytes</em> and <em>rdcc_w0</em>.
|
||
<p>
|
||
Any (or all) of the <code>H5Pget_cache</code> pointer arguments
|
||
may be null pointers.
|
||
<p>
|
||
The <em>rdcc_w0</em> value should be between 0 and 1 inclusive and
|
||
indicates how much chunks that have been fully read are
|
||
favored for preemption. A value of zero means fully read
|
||
chunks are treated no differently than other chunks (the
|
||
preemption is strictly LRU) while a value of one means fully
|
||
read chunks are always preempted before other chunks.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Identifier of the file access property list.
|
||
<dt><em>int</em> <code>mdc_nelmts</code>
|
||
<dd>IN: Number of elements (objects) in the meta data cache.
|
||
<dt><em>int</em> <code>rdcc_nelmts</code>
|
||
<dd>IN: Number of elements (objects) in the raw data chunk cache.
|
||
<dt><em>size_t</em> <code>rdcc_nbytes</code>
|
||
<dd>IN: Total size of the raw data chunk cache, in bytes.
|
||
<dt><em>double</em> <code>rdcc_w0</code>
|
||
<dd>IN: Preemption policy.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_cache_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetCache">H5Pget_cache</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_cache</code>(<em>hid_t</em> <code>plist_id</code>,
|
||
<em>int</em> <code>*mdc_nelmts</code>,
|
||
<em>int</em> <code>*rdcc_nelmts</code>,
|
||
<em>size_t</em> <code>*rdcc_nbytes</code>,
|
||
<em>double</em> <code>*rdcc_w0</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries the meta data cache and raw data chunk cache parameters.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_cache</code> retrieves the maximum possible
|
||
number of elements in the meta
|
||
data cache and raw data chunk cache, the maximum possible number of
|
||
bytes in the raw data chunk cache, and the preemption policy value.
|
||
<p>
|
||
Any (or all) arguments may be null pointers, in which case the
|
||
corresponding datum is not returned.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: Identifier of the file access property list.
|
||
<dt><em>int</em> <code>*mdc_nelmts</code>
|
||
<dd>IN/OUT: Number of elements (objects) in the meta data cache.
|
||
<dt><em>int</em> <code>*rdcc_nelmts</code>
|
||
<dd>IN/OUT: Number of elements (objects) in the raw data chunk cache.
|
||
<dt><em>size_t</em> <code>*rdcc_nbytes</code>
|
||
<dd>IN/OUT: Total size of the raw data chunk cache, in bytes.
|
||
<dt><em>double</em> <code>*rdcc_w0</code>
|
||
<dd>IN/OUT: Preemption policy.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_cache_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetHyperVectorSize">H5Pset_hyper_vector_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_hyper_vector_size</code>(<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>size_t</em> <code>vector_size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets number of I/O vectors to be read/written in hyperslab I/O.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_hyper_vector_size</code> sets the number of
|
||
I/O vectors to be accumulated in memory before being issued
|
||
to the lower levels of the HDF5 library for reading or writing the
|
||
actual data.
|
||
<p>
|
||
The <em>I/O vectors</em> are hyperslab offset and length pairs
|
||
and are generated during hyperslab I/O.
|
||
<p>
|
||
The number of I/O vectors is passed in <code>vector_size</code>
|
||
to be set in the dataset transfer property list <code>dxpl_id</code>.
|
||
<code>vector_size</code> must be greater than <code>1</code> (one).
|
||
<p>
|
||
<code>H5Pset_hyper_vector_size</code> is an I/O optimization function;
|
||
increasing <code>vector_size</code> should provide better performance,
|
||
but the library will use more memory during hyperslab I/O.
|
||
The default value of <code>vector_size</code> is <code>1024</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>
|
||
<dd>IN: Dataset transfer property list identifier.
|
||
<dt><em>size_t</em> <code>vector_size</code>
|
||
<dd>IN: Number of I/O vectors to accumulate in memory for I/O operations.
|
||
Must be greater than <code>1</code> (one).
|
||
Default value: <code>1024</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_hyper_vector_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetHyperVectorSize">H5Pget_hyper_vector_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_hyper_vector_size</code>(<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>size_t *</em><code>vector_size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves number of I/O vectors to be read/written in hyperslab I/O.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_hyper_vector_size</code> retrieves the number of
|
||
I/O vectors to be accumulated in memory before being issued
|
||
to the lower levels of the HDF5 library for reading or writing the
|
||
actual data.
|
||
<p>
|
||
The number of I/O vectors set in the dataset transfer property list
|
||
<code>dxpl_id</code> is returned in <code>vector_size</code>.
|
||
Unless the default value is in use, <code>vector_size</code>
|
||
was previously set with a call to
|
||
<a href="#Property-SetHyperVectorSize">H5Pset_hyper_vector_size</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>
|
||
<dd>IN: Dataset transfer property list identifier.
|
||
<dt><em>size_t *</em><code>vector_size</code>
|
||
<dd>OUT: Number of I/O vectors to accumulate in memory for I/O operations.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
|
||
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_hyper_vector_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetBTreeRatios">H5Pset_btree_ratios</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_btree_ratios</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>double</em> <code>left</code>,
|
||
<em>double</em> <code>middle</code>,
|
||
<em>double</em> <code>right</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets B-tree split ratios for a dataset transfer property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_btree_ratios</code> sets the B-tree split ratios
|
||
for a dataset transfer property list. The split ratios determine
|
||
what percent of children go in the first node when a node splits.
|
||
<p>
|
||
The ratio <code>left</code> is used when the splitting node is
|
||
the left-most node at its level in the tree;
|
||
the ratio <code>right</code> is used when the splitting node is
|
||
the right-most node at its level;
|
||
and the ratio <code>middle</code> is used for all other cases.
|
||
<p>
|
||
A node which is the only node at its level in the tree uses
|
||
the ratio <code>right</code> when it splits.
|
||
<p>
|
||
All ratios are real numbers between 0 and 1, inclusive.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: The dataset transfer property list identifier.
|
||
<dt><em>double</em> <code>left</code>
|
||
<dd>IN: The B-tree split ratio for left-most nodes.
|
||
<dt><em>double</em> <code>right</code>
|
||
<dd>IN: The B-tree split ratio for right-most nodes and lone nodes.
|
||
<dt><em>double</em> <code>middle</code>
|
||
<dd>IN: The B-tree split ratio for all other nodes.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_btree_ratios_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetBTreeRatios">H5Pget_btree_ratios</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_btree_ratios</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>double</em> *<code>left</code>,
|
||
<em>double</em> *<code>middle</code>,
|
||
<em>double</em> *<code>right</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Gets B-tree split ratios for a dataset transfer property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_btree_ratios</code> returns the B-tree split ratios
|
||
for a dataset transfer property list.
|
||
<p>
|
||
The B-tree split ratios are returned through the non-<code>NULL</code>
|
||
arguments <code>left</code>, <code>middle</code>, and <code>right</code>,
|
||
as set by the <a href="#Property-SetBTreeRatios">H5Pset_btree_ratios</a> function.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: The dataset transfer property list identifier.
|
||
<dt><em>double</em> <code>left</code>
|
||
<dd>OUT: The B-tree split ratio for left-most nodes.
|
||
<dt><em>double</em> <code>right</code>
|
||
<dd>OUT: The B-tree split ratio for right-most nodes and lone nodes.
|
||
<dt><em>double</em> <code>middle</code>
|
||
<dd>OUT: The B-tree split ratio for all other nodes.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_btree_ratios_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetBuffer">H5Pset_buffer</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_buffer</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hsize_t</em> <code>size</code>,
|
||
<em>void</em> <code>*tconv</code>,
|
||
<em>void</em> <code>*bkg</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets type conversion and background buffers.
|
||
<dt><strong>Description:</strong>
|
||
<dd> Given a dataset transfer property list, <code>H5Pset_buffer</code>
|
||
sets the maximum size
|
||
for the type conversion buffer and background buffer and
|
||
optionally supplies pointers to application-allocated buffers.
|
||
If the buffer size is smaller than the entire amount of data
|
||
being transferred between the application and the file, and a type
|
||
conversion buffer or background buffer is required, then
|
||
strip mining will be used.
|
||
<p>
|
||
Note that there are minimum size requirements for the buffer.
|
||
Strip mining can only break the data up along the first dimension,
|
||
so the buffer must be large enough to accommodate a complete slice
|
||
that encompasses all of the remaining dimensions.
|
||
For example, when strip mining a 100x200x300 hyperslab
|
||
of a simple data space, the buffer must be large enough to
|
||
hold 1x200x300 data elements.
|
||
When strip mining a 100x200x300x150 hyperslab of a simple data space,
|
||
the buffer must be large enough to hold 1x200x300x150 data elements.
|
||
<p>
|
||
If <code>tconv</code> and/or <code>bkg</code> are null pointers,
|
||
then buffers will be allocated and freed during the data transfer.
|
||
<p>
|
||
The default value for the maximum buffer is 1 Mb.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Size, in bytes, of the type conversion and background buffers.
|
||
<dt><em>void</em> <code>tconv</code>
|
||
<dd>IN: Pointer to application-allocated type conversion buffer.
|
||
<dt><em>void</em> <code>bkg</code>
|
||
<dd>IN: Pointer to application-allocated background buffer.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_buffer_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetBuffer">H5Pget_buffer</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hsize_t</em> <code>H5Pget_buffer</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>void</em> <code>**tconv</code>,
|
||
<em>void</em> <code>**bkg</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Reads buffer settings.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_buffer</code> reads values previously set
|
||
with H5Pset_buffer.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
<dt><em>void</em> <code>**tconv</code>
|
||
<dd>OUT: Address of the pointer to application-allocated
|
||
type conversion buffer.
|
||
<dt><em>void</em> <code>**bkg</code>
|
||
<dd>OUT: Address of the pointer to application-allocated
|
||
background buffer.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns buffer size, in bytes, if successful;
|
||
otherwise 0 on failure.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_buffer_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetSmallData">H5Pset_small_data_block_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_small_data_block_size</code>(<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t</em> <code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the size of a contiguous block reserved for small data.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_small_data_block_size</code> reserves blocks of
|
||
<code>size</code> bytes for the contiguous storage of the raw data
|
||
portion of <em>small</em> datasets.
|
||
The HDF5 library then writes the raw data from small datasets
|
||
to this reserved space, thus reducing unnecessary discontinuities
|
||
within blocks of meta data and improving IO performance.
|
||
<p>
|
||
A small data block is actually allocated the first time a
|
||
qualifying small dataset is written to the file.
|
||
Space for the raw data portion of this small dataset is suballocated
|
||
within the small data block.
|
||
The raw data from each subsequent small dataset is also written to
|
||
the small data block until it is filled; additional small data blocks
|
||
are allocated as required.
|
||
<p>
|
||
The HDF5 library employs an algorithm that determines whether
|
||
IO performance is likely to benefit from the use of this mechanism
|
||
with each dataset as storage space is allocated in the file.
|
||
A larger <code>size</code> will result in this mechanism being
|
||
employed with larger datasets.
|
||
<p>
|
||
The small data block size is set as an allocation property in the
|
||
file access property list identified by <code>fapl_id</code>.
|
||
<p>
|
||
Setting <code>size</code> to zero (<code>0</code>) disables the
|
||
small data block mechanism.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier .
|
||
<dt><em>hsize_t</em> <code>size</code>
|
||
<dd>IN: Maximum size, in bytes, of the small data block.
|
||
<br>
|
||
The default size is <code>2048</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_small_data_block_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetSmallData">H5Pget_small_data_block_size</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_small_data_block_size</code>(<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t *</em><code>size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves the current small data block size setting.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_small_data_block_size</code> retrieves the
|
||
current setting for the size of the small data block.
|
||
<p>
|
||
If the returned value is zero (<code>0</code>), the small data
|
||
block mechanism has been disabled for the file.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier .
|
||
<dt><em>hsize_t *</em><code>size</code>
|
||
<dd>OUT: Maximum size, in bytes, of the small data block.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_small_data_block_size_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetPreserve">H5Pset_preserve</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_preserve</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>hbool_t</em> <code>status</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the dataset transfer property list status to TRUE or FALSE.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_preserve</code> sets the
|
||
dataset transfer property list status to TRUE or FALSE.
|
||
<p>
|
||
When reading or writing compound data types and the
|
||
destination is partially initialized and the read/write is
|
||
intended to initialize the other members, one must set this
|
||
property to TRUE. Otherwise the I/O pipeline treats the
|
||
destination datapoints as completely uninitialized.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
<dt><em>hbool_t</em> <code>status</code>
|
||
<dd>IN: Status of for the dataset transfer property list
|
||
(TRUE/FALSE).
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_preserve_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetPreserve">H5Pget_preserve</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_preserve</code>(<em>hid_t</em> <code>plist</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Checks status of the dataset transfer property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_preserve</code> checks the status of the
|
||
dataset transfer property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns TRUE or FALSE if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_preserve_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!--
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetCompression">H5Pset_compression</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_compression</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5Z_method_t</em> <code>method</code>,
|
||
<em>unsigned int</em> <code>flags</code>,
|
||
<em>size_t</em> <code>cd_size</code>,
|
||
<em>const void</em> <code>*client_data</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets compression method.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_compression</code> sets the compression method
|
||
in a dataset creation property list. This is a catch-all
|
||
function for defining compression methods
|
||
and is intended to be called from a wrapper such as
|
||
<code>H5Pset_deflate</code>. The dataset creation property
|
||
list <em>plist</em> is adjusted to use the specified
|
||
compression method. The <em>flags</em> is an 8-bit vector
|
||
which is stored in the file as part of the compression message
|
||
and passed to the compress and uncompress functions. The
|
||
<em>client_data</em> is a byte array of length
|
||
<em>cd_size</em> which is copied to the file and passed to the
|
||
compress and uncompress methods.
|
||
<p>
|
||
The FLAGS, CD_SIZE, and CLIENT_DATA are copied to the
|
||
property list and eventually to the file and passed to the
|
||
compression functions.
|
||
<p>
|
||
See <a href="Datasets.html"><cite>The Dataset Interface (H5D)</cite></a>
|
||
in the <cite>HDF5 User's Guide</cite> for further information
|
||
regarding data compression.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset creation property list.
|
||
<dt><em>H5Z_method_t</em> <code>method</code>
|
||
<dd>IN: Compression method, an integer from 16 to 225.
|
||
<dt><em>unsigned int</em> <code>flags</code>
|
||
<dd>IN: Compression flags.
|
||
<dt><em>size_t</em> <code>cd_size</code>
|
||
<dd>IN: Size of the byte array <code>client_data</code>.
|
||
<dt><em>const void</em> <code>*client_data</code>
|
||
<dd>IN: Client data byte array passed to the compression method.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
</dl>
|
||
|
||
-->
|
||
|
||
|
||
<!--
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetCompression">H5Pget_compression</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>H5Z_method_t</em> <code>H5Pget_compression</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>unsigned int</em> <code>*flags</code>,
|
||
<em>size_t</em> <code>*cd_size</code>,
|
||
<em>void</em> <code>*client_data</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Gets compression method.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_compression</code> gets the compression method
|
||
information from a dataset creation property list.
|
||
The <code>client_data</code> buffer is initially
|
||
<code>cd_size</code> bytes. On return, <code>client_data</code>
|
||
will be initialized with at most that many bytes, and
|
||
<code>cd_size</code> will contain the actual size of the
|
||
client data, which might be larger than its original value.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset creation property list.
|
||
<dt><em>unsigned int</em> <code>*flags</code>
|
||
<dd>OUT: Compression flags.
|
||
<dt><em>size_t</em> <code>*cd_size</code>
|
||
<dd>IN/OUT: Size of the <code>client_data</code> array.
|
||
<dt><em>void</em> <code>*client_data</code>
|
||
<dd>OUT: Byte array for the client data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns compression method if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
</dl>
|
||
|
||
-->
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetDeflate">H5Pset_deflate</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_deflate</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>int</em> <code>level</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets compression method and compression level.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_deflate</code> sets the compression method for a
|
||
dataset creation property list to <code>H5D_COMPRESS_DEFLATE</code>
|
||
and the compression level to <code>level</code>, which should
|
||
be a value from zero to nine, inclusive.
|
||
Lower compression levels are faster but result in less compression.
|
||
This is the same algorithm as used by the GNU gzip program.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset creation property list.
|
||
<dt><em>int</em> <code>level</code>
|
||
<dd>IN: Compression level.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_deflate_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!--
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetDeflate">H5Pget_deflate</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>int</em> <code>H5Pget_deflate</code>(<em>hid_t</em> <code>plist</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the deflate compression level from a dataset creation
|
||
property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_deflate</code> returns the deflate compression level
|
||
from a dataset creation property list that uses that method.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset creation property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns compression level, a value between 0 and 9, if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
</dl>
|
||
|
||
-->
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetVLMemManager">H5Pset_vlen_mem_manager</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_vlen_mem_manager</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5MM_allocate_t</em> <code>alloc</code>,
|
||
<em>void</em> *<code>alloc_info</code>,
|
||
<em>H5MM_free_t</em> <code>free</code>,
|
||
<em>void</em> *<code>free_info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the memory manager for variable-length datatype allocation in
|
||
<code>H5Dread</code> and <code>H5Dvlen_reclaim</code>.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_vlen_mem_manager</code> sets the memory manager for
|
||
variable-length datatype allocation in <code>H5Dread</code>
|
||
and free in <code>H5Dvlen_reclaim</code>.
|
||
<p>
|
||
The <code>alloc</code> and <code>free</code> parameters
|
||
identify the memory management routines to be used.
|
||
If the user has defined custom memory management routines,
|
||
<code>alloc</code> and/or <code>free</code> should be set to make
|
||
those routine calls (i.e., the name of the routine is used as
|
||
the value of the parameter);
|
||
if the user prefers to use the system's <code> malloc</code>
|
||
and/or <code>free</code>, the <code>alloc</code> and
|
||
<code>free</code> parameters, respectively, should be set to
|
||
<code> NULL</code>
|
||
<p>
|
||
The prototypes for these user-defined functions would appear as follows:
|
||
<br>
|
||
<em>typedef void</em> *(*<code>H5MM_allocate_t</code>)(<em>size_t</em> <code>size</code>,
|
||
<em>void</em> *<code>alloc_info</code>) ;
|
||
|
||
<br>
|
||
<em>typedef void</em> (*<code>H5MM_free_t</code>)(<em>void</em> *<code>mem</code>,
|
||
<em>void</em> *<code>free_info</code>) ;
|
||
<br>
|
||
The <code>alloc_info</code> and <code>free_info</code> parameters
|
||
can be used to pass along any required information to
|
||
the user's memory management routines.
|
||
<p>
|
||
In summary, if the user has defined custom memory management
|
||
routines, the name(s) of the routines are passed in the
|
||
<code>alloc</code> and <code>free</code> parameters and the
|
||
custom routines' parameters are passed in the
|
||
<code>alloc_info</code> and <code>free_info</code> parameters.
|
||
If the user wishes to use the system <code> malloc</code> and
|
||
<code>free</code> functions, the <code>alloc</code> and/or
|
||
<code>free</code> parameters are set to <code> NULL</code>
|
||
and the <code>alloc_info</code> and <code>free_info</code>
|
||
parameters are ignored.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
<dt><em>H5MM_allocate_t</em> <code>alloc</code>
|
||
<dd>IN: User's allocate routine, or <code> NULL</code>
|
||
for system <code> malloc</code>.
|
||
<dt><em>void</em> *<code>alloc_info</code>
|
||
<dd>IN: Extra parameter for user's allocation routine.
|
||
<br>
|
||
Contents are ignored if preceding parameter is
|
||
<code> NULL</code>.
|
||
<dt><em>H5MM_free_t</em> <code>free</code>
|
||
<dd>IN: User's free routine, or <code> NULL</code>
|
||
for system <code>free</code>.
|
||
<dt><em>void</em> *<code>free_info</code>
|
||
<dd>IN: Extra parameter for user's free routine.
|
||
<br>
|
||
Contents are ignored if preceding parameter is
|
||
<code> NULL</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetVLMemManager">H5Pget_vlen_mem_manager</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_vlen_mem_manager</code>(<em>hid_t</em> <code>plist</code>,
|
||
<em>H5MM_allocate_t</em> *<code>alloc</code>,
|
||
<em>void</em> **<code>alloc_info</code>,
|
||
<em>H5MM_free_t</em> *<code>free</code>,
|
||
<em>void</em> **<code>free_info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Gets the memory manager for variable-length datatype allocation in
|
||
<code>H5Dread</code> and <code>H5Dvlen_reclaim</code>.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_vlen_mem_manager</code> is the companion function to
|
||
<code>H5Pset_vlen_mem_manager</code>, returning the parameters
|
||
set by that function.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist</code>
|
||
<dd>IN: Identifier for the dataset transfer property list.
|
||
<dt><em>H5MM_allocate_t</em> <code>alloc</code>
|
||
<dd>OUT: User's allocate routine, or <code> NULL</code>
|
||
for system <code> malloc</code>.
|
||
<dt><em>void</em> *<code>alloc_info</code>
|
||
<dd>OUT: Extra parameter for user's allocation routine.
|
||
<br>
|
||
Contents are ignored if preceding parameter is
|
||
<code> NULL</code>.
|
||
<dt><em>H5MM_free_t</em> <code>free</code>
|
||
<dd>OUT: User's free routine, or <code> NULL</code> for
|
||
system <code>free</code>.
|
||
<dt><em>void</em> *<code>free_info</code>
|
||
<dd>OUT: Extra parameter for user's free routine.
|
||
<br>
|
||
Contents are ignored if preceding parameter is
|
||
<code> NULL</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!-- -->
|
||
<!-- The new *fapl* functions with R1.4 -->
|
||
<!-- -->
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplFamily">H5Pset_fapl_family</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_family</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em> hsize_t</em> <code>memb_size</code>,
|
||
<em>hid_t</em> <code>memb_fapl_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the file access property list to use the family driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_family</code> sets the file access property list
|
||
identifier, <code>fapl_id</code>, to use the family driver.
|
||
<p>
|
||
<code>memb_size</code> is the size in bytes of each file member
|
||
and is used only when creating a new file.
|
||
<p>
|
||
<code>memb_fapl_id</code> is the identifier of the
|
||
file access property list to be used for each family member.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em> hsize_t</em> <code>memb_size</code>
|
||
<dd>IN: Size in bytes of each file member.
|
||
<dt><em>hid_t</em> <code>memb_fapl_id</code>
|
||
<dd>IN: Identifier of file access property list for each
|
||
family member.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_family_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplFamily">H5Pget_fapl_family</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_family</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t *</em><code>memb_size</code>,
|
||
<em>hid_t *</em><code>memb_fapl_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns file access property list information.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fapl_family</code> returns file access property list
|
||
for use with the family driver.
|
||
This information is returned through the output parameters.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em> hsize_t *</em><code>memb_size</code>
|
||
<dd>OUT: Size in bytes of each file member.
|
||
<dt><em>hid_t *</em><code>memb_fapl_id</code>
|
||
<dd>OUT: Identifier of file access property list for each
|
||
family member.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fapl_family_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFamilyOffset">H5Pset_family_offset</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_family_offset</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t</em> <code>offset</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets offset property for low-level access to a file in a family of files.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_family_offset</code> sets the offset property in the
|
||
file access property list <code>fapl_id</code> so that the user application
|
||
can retrieve a file handle for low-level access to a particluar member
|
||
of a family of files. The file handle is retrieved with a separate call
|
||
to <a href="RM_H5F.html#File-GetVfdHandle"><code>H5Fget_vfd_handle</code></a>
|
||
(or, in special circumstances, to <code>H5FDget_vfd_handle</code>;
|
||
see <cite>Virtual File Layer</cite> and <cite>List of VFL Functions</cite>
|
||
in <a href="TechNotes.html"><cite>HDF5 Technical Notes</cite></a>).
|
||
<p>
|
||
The value of <code>offset</code> is an offset in bytes from the
|
||
beginning of the HDF5 file, identifying a user-determined location
|
||
within the HDF5 file. The file handle the user application is seeking
|
||
is for the specific member-file in the associated family of files
|
||
to which this offset is mapped.
|
||
<p>
|
||
Use of this function is only appropriate for an HDF5 file written as a
|
||
family of files with the <code>FAMILY</code> file driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t</em> <code>offset</code>
|
||
<dd>IN: Offset in bytes within the HDF5 file.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_family_offset_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFamilyOffset">H5Pget_family_offset</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_family_offset</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>hsize_t *</em><code>offset</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves a data offset from the file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_family_offset</code> retrieves the value of <code>offset</code>
|
||
from the file access property list <code>fapl_id</code>
|
||
so that the user application
|
||
can retrieve a file handle for low-level access to a particluar member
|
||
of a family of files. The file handle is retrieved with a separate call
|
||
to <a href="RM_H5F.html#File-GetVfdHandle"><code>H5Fget_vfd_handle</code></a>
|
||
(or, in special circumstances, to <code>H5FDget_vfd_handle</code>;
|
||
see <cite>Virtual File Layer</cite> and <cite>List of VFL Functions</cite>
|
||
in <a href="TechNotes.html"><cite>HDF5 Technical Notes</cite></a>).
|
||
<p>
|
||
The data offset returned in <code>offset</code> is the offset
|
||
of the data in the HDF5 file that is stored on disk in the selected
|
||
member file in a family of files.
|
||
<p>
|
||
Use of this function is only appropriate for an HDF5 file written as a
|
||
family of files with the <code>FAMILY</code> file driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>hsize_t *</em><code>offset</code>
|
||
<dd>IN: Offset in bytes within the HDF5 file.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplLog">H5Pset_fapl_log</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_log</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>const char *</em><code>logfile</code>,
|
||
<em>unsigned int</em> <code>flags</code>,
|
||
<em>size_t</em> <code>buf_size</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up the use of the logging driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_log</code> modifies the
|
||
file access property list to use the logging driver
|
||
<code>H5FD_LOG</code>.
|
||
<p>
|
||
<code>logfile</code> is the name of the file in which the
|
||
logging entries are to be recorded.
|
||
<p>
|
||
The actions to be logged are specified in the parameter <code>flags</code>
|
||
using the pre-defined constants described in the following table.
|
||
Multiple flags can be set through the use of an logical OR contained
|
||
in parentheses. For example, logging read and write locations would
|
||
be specified as <code>(H5FD_LOG_LOC_READ|H5FD_LOG_LOC_WRITE)</code>.
|
||
<!--The <code>flags</code> parameter contains a 2-byte hexadecimal value
|
||
which is computed from the following elements:-->
|
||
<center>
|
||
<table width=100%>
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<b>Flag</b>
|
||
<!--</td><td width="20%">
|
||
<hr>
|
||
<b>Hex value</b>-->
|
||
</td><td>
|
||
<hr>
|
||
<b>Description</b>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_LOC_READ</code>
|
||
<!--</td><td>
|
||
<code>0x0001</code>-->
|
||
</td><td rowspan="3">
|
||
<hr>
|
||
Track the location and length of every read, write, or seek operation.
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_LOC_WRITE </code>
|
||
<!--</td><td>
|
||
<code>0x0002 </code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_LOC_SEEK</code>
|
||
<!--</td><td>
|
||
<code>0x0004</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_LOC_IO</code>
|
||
<!--</td><td>
|
||
<code>0x0007</code>-->
|
||
</td><td>
|
||
Track all I/O locations and lengths.
|
||
The logical equivalent of the following:
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code> </code>
|
||
</td><td>
|
||
<code>(H5FD_LOG_LOC_READ | H5FD_LOG_LOC_WRITE | H5FD_LOG_LOC_SEEK)</code>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_FILE_READ</code>
|
||
<!--</td><td>
|
||
<code>0x0008</code>-->
|
||
</td><td rowspan="2">
|
||
<hr>
|
||
Track the number of times each byte is read or written.
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_FILE_WRITE </code>
|
||
<!--</td><td>
|
||
<code>0x0010</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_FILE_IO</code>
|
||
<!--</td><td>
|
||
<code>0x0018</code>-->
|
||
</td><td>
|
||
Track the number of times each byte is read and written.
|
||
The logical equivalent of the following:
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code> </code>
|
||
</td><td>
|
||
<code>(H5FD_LOG_FILE_READ | H5FD_LOG_FILE_WRITE)</code>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_FLAVOR</code>
|
||
<!--</td><td>
|
||
<code>0x0020</code>-->
|
||
</td><td>
|
||
<hr>
|
||
Track the type, or flavor, of information stored at each byte.
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_NUM_READ</code>
|
||
<!--</td><td>
|
||
<code>0x0040</code>-->
|
||
</td><td rowspan="3">
|
||
<hr>
|
||
Track the total number of read, write, or seek operations that occur.
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_NUM_WRITE</code>
|
||
<!--</td><td>
|
||
<code>0x0080</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_NUM_SEEK</code>
|
||
<!--</td><td>
|
||
<code>0x0100</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_NUM_IO</code>
|
||
<!--</td><td>
|
||
<code>0x01C0</code>-->
|
||
</td><td>
|
||
Track the total number of all types of I/O operations.
|
||
The logical equivalent of the following:
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code> </code>
|
||
</td><td>
|
||
<code>(H5FD_LOG_NUM_READ | H5FD_LOG_NUM_WRITE | H5FD_LOG_NUM_SEEK)</code>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_TIME_OPEN</code>
|
||
<!--</td><td>
|
||
<code>0x0200</code>-->
|
||
</td><td rowspan="5">
|
||
<hr>
|
||
Track the time spent in open, read, write, seek, or close operations.
|
||
<dir>
|
||
<span class="termEmphasis"><i>
|
||
Not implemented in this release: open and read
|
||
<br>
|
||
Partially implemented: write and seek
|
||
<br>
|
||
Fully implemented: close</i></span>
|
||
</dir>
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_TIME_READ</code>
|
||
<!--</td><td>
|
||
<code>0x0400</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_TIME_WRITE</code>
|
||
<!--</td><td>
|
||
<code>0x0800</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_TIME_SEEK</code>
|
||
<!--</td><td>
|
||
<code>0x1000</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_TIME_CLOSE</code>
|
||
<!--</td><td>
|
||
<code>0x2000</code>-->
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code>H5FD_LOG_TIME_IO</code>
|
||
<!--</td><td>
|
||
<code>0x3E00</code>-->
|
||
</td><td>
|
||
Track the time spent in each of the above operations.
|
||
The logical equivalent of the following:
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code> </code>
|
||
</td><td>
|
||
<code>(H5FD_LOG_TIME_OPEN | H5FD_LOG_TIME_READ | H5FD_LOG_TIME_WRITE
|
||
| H5FD_LOG_TIME_SEEK | H5FD_LOG_TIME_CLOSE)</code>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_ALLOC</code>
|
||
<!--</td><td>
|
||
<code>0x4000</code>-->
|
||
</td><td>
|
||
<hr>
|
||
Track the allocation of space in the file.
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
<code>H5FD_LOG_ALL</code>
|
||
<!--</td><td>
|
||
<code>0xFFFF -- all possible
|
||
<br>0x8FFF -- all current at r1.6</code>-->
|
||
</td><td>
|
||
<hr>
|
||
Track everything.
|
||
The logical equivalent of the following:
|
||
</td></tr>
|
||
<tr valign=top align=left><td>
|
||
<code> </code>
|
||
</td><td>
|
||
<code>(H5FD_LOG_ALLOC | H5FD_LOG_TIME_IO | H5FD_LOG_NUM_IO | H5FD_LOG_FLAVOR
|
||
|H5FD_LOG_FILE_IO | H5FD_LOG_LOC_IO)</code>
|
||
</td></tr>
|
||
|
||
<tr valign=top align=left><td>
|
||
<hr>
|
||
</td><td>
|
||
<hr>
|
||
</td></tr>
|
||
|
||
</table>
|
||
</center>
|
||
|
||
<p>
|
||
The logging driver can track the number of times
|
||
each byte in the file is read from or written to
|
||
(using <code>H5FD_LOG_FILE_READ</code> and <code>H5FD_LOG_FILE_WRITE</code>)
|
||
and what kind of data is at that location
|
||
(e.g., meta data, raw data; using <code>H5FD_LOG_FLAVOR</code>).
|
||
This information is tracked in a buffer of size <code>buf_size</code>,
|
||
which must be at least the size in bytes of the file to be logged.
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>char *</em><code>logfile</code>
|
||
<dd>IN: Name of the log file.
|
||
<dt><em>unsigned int</em> <code>flags</code>
|
||
<dd>IN: Flags specifying the types of logging activity.
|
||
<dt><em>size_t</em> <code>buf_size</code>
|
||
<dd>IN: The size of the logging buffer.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns non-negative if successful.
|
||
Otherwise returns negative.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplMpio">H5Pset_fapl_mpio</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_mpio</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>MPI_Comm</em> <code>comm</code>,
|
||
<em>MPI_Info</em> <code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Stores MPI IO communicator information to the file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_mpio</code> stores the user-supplied
|
||
MPI IO parameters <code>comm</code>, for communicator, and
|
||
<code>info</code>, for information, in
|
||
the file access property list <code>fapl_id</code>.
|
||
That property list can then be used to create and/or open the file.
|
||
<p>
|
||
<code>H5Pset_fapl_mpio</code> is available only in the
|
||
parallel HDF5 library and is not a collective function.
|
||
<p>
|
||
<code>comm</code> is the MPI communicator to be used for
|
||
file open as defined in <code>MPI_FILE_OPEN</code> of MPI-2.
|
||
This function does not create a duplicated communicator.
|
||
Modifications to <code>comm</code> after this function call
|
||
returns may have an undetermined effect on the access property list.
|
||
Users should not modify the communicator while it is defined
|
||
in a property list.
|
||
<p>
|
||
<code>info</code> is the MPI info object to be used for
|
||
file open as defined in <code>MPI_FILE_OPEN</code> of MPI-2.
|
||
This function does not create a duplicated info object.
|
||
Any modification to the info object after this function call
|
||
returns may have an undetermined effect on the access property list.
|
||
Users should not modify the info while it is defined
|
||
in a property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>MPI_Comm</em> <code>comm</code>
|
||
<dd>IN: MPI-2 communicator.
|
||
<dt><em>MPI_Info</em> <code>info</code>
|
||
<dd>IN: MPI-2 info object.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_mpio_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplMpio">H5Pget_fapl_mpio</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_mpio</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>MPI_Comm *</em><code>comm</code>,
|
||
<em>MPI_Info *</em><code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd> Returns MPI communicator information.
|
||
<dt><strong>Description:</strong>
|
||
<dd>If the file access property list is set to the <code>H5FD_MPIO</code>
|
||
driver, <code>H5Pget_fapl_mpio</code> returns the MPI communicator and
|
||
information through the <code>comm</code> and <code>info</code>
|
||
pointers, if those values are non-null.
|
||
<p>
|
||
Neither <code>comm</code> nor <code>info</code> is copied,
|
||
so they are valid only until the file access property list
|
||
is either modified or closed.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>MPI_Comm *</em><code>comm</code>
|
||
<dd>OUT: MPI-2 communicator.
|
||
<dt><em>MPI_Info *</em><code>info</code>
|
||
<dd>OUT: MPI-2 info object.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fapl_mpio_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplMpiPosix">H5Pset_fapl_mpiposix</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_mpiposix</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>MPI_Comm</em> <code>comm</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Stores MPI IO communicator information to a file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_mpiposix</code> stores the user-supplied
|
||
MPI IO parameter <code>comm</code>, for communicator,
|
||
in the file access property list <code>fapl_id</code>.
|
||
That property list can then be used to create and/or open the file.
|
||
<p>
|
||
<code>H5Pset_fapl_mpiposix</code> is available only in the
|
||
parallel HDF5 library and is not a collective function.
|
||
<p>
|
||
<code>comm</code> is the MPI communicator to be used for
|
||
file open as defined in <code>MPI_FILE_OPEN</code> of MPI-2.
|
||
This function does not create a duplicated communicator.
|
||
Modifications to <code>comm</code> after this function call
|
||
returns may have an undetermined effect on the access property list.
|
||
Users should not modify the communicator while it is defined
|
||
in a property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>MPI_Comm</em> <code>comm</code>
|
||
<dd>IN: MPI-2 communicator.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_mpiposix_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplMpiPosix">H5Pget_fapl_mpiposix</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_mpiposix</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>MPI_Comm *</em><code>comm</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd> Returns MPI communicator information.
|
||
<dt><strong>Description:</strong>
|
||
<dd>If the file access property list is set to the <code>H5FD_MPIO</code>
|
||
driver, <code>H5Pget_fapl_mpiposix</code> returns
|
||
the MPI communicator through the <code>comm</code>
|
||
pointer, if those values are non-null.
|
||
<p>
|
||
<code>comm</code> is not copied, so it is valid only
|
||
until the file access property list is either modified or closed.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>MPI_Comm *</em><code>comm</code>
|
||
<dd>OUT: MPI-2 communicator.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fapl_mpiposix_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
--> <!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetDxplMpio">H5Pset_dxpl_mpio</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_dxpl_mpio</code>(
|
||
<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>H5FD_mpio_xfer_t</em> <code>xfer_mode</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets data transfer mode.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_dxpl_mpio</code> sets the data transfer property list
|
||
<code>dxpl_id</code> to use transfer mode <code>xfer_mode</code>.
|
||
The property list can then be used to control the I/O transfer mode
|
||
during data I/O operations.
|
||
<p>
|
||
Valid transfer modes are as follows:
|
||
<dir>
|
||
<dl>
|
||
<dt><code>H5FD_MPIO_INDEPENDENT</code>
|
||
<dd>Use independent I/O access (default).
|
||
<dt><code>H5FD_MPIO_COLLECTIVE</code>
|
||
<dd>Use collective I/O access.
|
||
</dl>
|
||
</dir>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>
|
||
<dd>IN: Data transfer property list identifier.
|
||
<dt><em>H5FD_mpio_xfer_t</em> <code>xfer_mode</code>
|
||
<dd>IN: Transfer mode.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_dxpl_mpio_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetDxplMpio">H5Pget_dxpl_mpio</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_dxpl_mpio</code>(
|
||
<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>H5FD_mpio_xfer_t *</em><code>xfer_mode</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the data transfer mode.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_dxpl_mpio</code> queries the data transfer mode
|
||
currently set in the data transfer property list <code>dxpl_id</code>.
|
||
<p>
|
||
Upon return, <code>xfer_mode</code> contains the data transfer mode,
|
||
if it is non-null.
|
||
<p>
|
||
<code>H5Pget_dxpl_mpio</code> is not a collective function.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>
|
||
<dd>IN: Data transfer property list identifier.
|
||
<dt><em>H5FD_mpio_xfer_t *</em><code>xfer_mode</code>
|
||
<dd>OUT: Data transfer mode.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_dxpl_mpio_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplMulti">H5Pset_fapl_multi</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_multi</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>const H5FD_mem_t *</em><code>memb_map</code>,
|
||
<em>const hid_t *</em><code>memb_fapl</code>,
|
||
<em>const char **</em><code>memb_name</code>,
|
||
<em>const haddr_t *</em><code>memb_addr</code>,
|
||
<em>hbool_t</em> <code>relax</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up use of the multi-file driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_multi</code> sets the file access property list
|
||
<code>fapl_id</code> to use the multi-file driver.
|
||
<p>
|
||
The multi-file driver enables different types of HDF5 data and
|
||
metadata to be written to separate files. These files are viewed
|
||
by the HDF5 library and the application as a single virtual HDF5 file
|
||
with a single HDF5 file address space.
|
||
The types of data that can be broken out into separate files include
|
||
raw data, the superblock, B-tree data, global heap data,
|
||
local heap data, and object headers.
|
||
At the programmer's discretion, two or more types of data can be
|
||
written to the same file while other types of data are written to
|
||
separate files.
|
||
<p>
|
||
The array <code>memb_map</code> maps memory usage types to other
|
||
memory usage types and is the mechanism that allows the caller
|
||
to specify how many files are created.
|
||
The array contains <code>H5FD_MEM_NTYPES</code> entries,
|
||
which are either the value <code>H5FD_MEM_DEFAULT</code>
|
||
or a memory usage type.
|
||
The number of unique values determines the number of files
|
||
that are opened.
|
||
<p>
|
||
The array <code>memb_fapl</code> contains a property list
|
||
for each memory usage type that will be associated with a file.
|
||
<p>
|
||
The array <code>memb_name</code> should be a name generator
|
||
(a printf-style format with a %s which will be replaced with the
|
||
name passed to <code>H5FDopen</code>, usually from
|
||
<code>H5Fcreate</code> or <code>H5Fopen</code>).
|
||
<p>
|
||
The array <code>memb_addr</code> specifies the offsets within the
|
||
virtual address space, from <code>0</code> (zero) to
|
||
<code>HADDR_MAX</code>, at which each type of data storage begins.
|
||
<p>
|
||
If <code>relax</code> is set to <code>TRUE</code> (or <code>1</code>),
|
||
then opening an existing file for read-only access will not fail
|
||
if some file members are missing.
|
||
This allows a file to be accessed in a limited sense if just the
|
||
meta data is available.
|
||
<p>
|
||
Default values for each of the optional arguments are as follows:
|
||
<dir>
|
||
<dl>
|
||
<dt><code>memb_map</code>
|
||
<dd>The default member map contains the value
|
||
<code>H5FD_MEM_DEFAULT</code> for each element.
|
||
<dt><code>memb_fapl</code>
|
||
<dd>The default value is <code>H5P_DEFAULT</code> for each element.
|
||
<dt><code>memb_name</code>
|
||
<dd>The default string is <code>%s-<i>X</i>.h5</code>
|
||
where <code><i>X</i></code> is one of the
|
||
following letters:
|
||
<dir>
|
||
<code>s</code> for <code>H5FD_MEM_SUPER</code>
|
||
<br>
|
||
<code>b</code> for <code>H5FD_MEM_BTREE</code>
|
||
<br>
|
||
<code>r</code> for <code>H5FD_MEM_DRAW</code>
|
||
<br>
|
||
<code>g</code> for <code>H5FD_MEM_GHEAP</code>
|
||
<br>
|
||
<code>l</code> for <code>H5FD_MEM_LHEAP</code>
|
||
<br>
|
||
<code>o</code> for <code>H5FD_MEM_OHDR</code>
|
||
</dir>
|
||
<dt><code>memb_addr</code>
|
||
<dd>The default value is <code>HADDR_UNDEF</code> for each element.
|
||
</dl>
|
||
</dir>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>const H5FD_mem_t *</em><code>memb_map</code>
|
||
<dd>IN: Maps memory usage types to other memory usage types.
|
||
<dt><em>const hid_t *</em><code>memb_fapl</code>
|
||
<dd>IN: Property list for each memory usage type.
|
||
<dt><em>const char **</em><code>memb_name</code>
|
||
<dd>IN: Name generator for names of member files.
|
||
<dt><em>const haddr_t *</em><code>memb_addr</code>
|
||
<dd>IN: The offsets within the virtual address space,
|
||
from <code>0</code> (zero) to <code>HADDR_MAX</code>,
|
||
at which each type of data storage begins.
|
||
<dt><em>hbool_t</em> <code>relax</code>
|
||
<dd>IN: Allows read-only access to incomplete file sets
|
||
when <code>TRUE</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Example:</strong>
|
||
<dd>The following code sample sets up a multi-file access property list
|
||
that partitions data into meta and raw files, each being
|
||
one-half of the address:
|
||
<pre>
|
||
H5FD_mem_t mt, memb_map[H5FD_MEM_NTYPES];
|
||
hid_t memb_fapl[H5FD_MEM_NTYPES];
|
||
const char *memb[H5FD_MEM_NTYPES];
|
||
haddr_t memb_addr[H5FD_MEM_NTYPES];
|
||
|
||
// The mapping...
|
||
for (mt=0; mt<H5FD_MEM_NTYPES; mt++) {
|
||
memb_map[mt] = H5FD_MEM_SUPER;
|
||
}
|
||
memb_map[H5FD_MEM_DRAW] = H5FD_MEM_DRAW;
|
||
|
||
// Member information
|
||
memb_fapl[H5FD_MEM_SUPER] = H5P_DEFAULT;
|
||
memb_name[H5FD_MEM_SUPER] = "%s.meta";
|
||
memb_addr[H5FD_MEM_SUPER] = 0;
|
||
|
||
memb_fapl[H5FD_MEM_DRAW] = H5P_DEFAULT;
|
||
memb_name[H5FD_MEM_DRAW] = "%s.raw";
|
||
memb_addr[H5FD_MEM_DRAW] = HADDR_MAX/2;
|
||
|
||
hid_t fapl = H5Pcreate(H5P_FILE_ACCESS);
|
||
H5Pset_fapl_multi(fapl, memb_map, memb_fapl,
|
||
memb_name, memb_addr, TRUE);
|
||
</pre>
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_multi_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplMulti">H5Pget_fapl_multi</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_multi</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>const H5FD_mem_t *</em><code>memb_map</code>,
|
||
<em>const hid_t *</em><code>memb_fapl</code>,
|
||
<em>const char **</em><code>memb_name</code>,
|
||
<em>const haddr_t *</em><code>memb_addr</code>,
|
||
<em>hbool_t *</em><code>relax</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns information about the multi-file access property list.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fapl_multi</code> returns information about the
|
||
multi-file access property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>const H5FD_mem_t *</em><code>memb_map</code>
|
||
<dd>OUT: Maps memory usage types to other memory usage types.
|
||
<dt><em>const hid_t *</em><code>memb_fapl</code>
|
||
<dd>OUT: Property list for each memory usage type.
|
||
<dt><em>const char **</em><code>memb_name</code>
|
||
<dd>OUT: Name generator for names of member files.
|
||
<dt><em>const haddr_t *</em><code>memb_addr</code>
|
||
<dd>OUT:
|
||
<dt><em>hbool_t *</em><code>relax</code>
|
||
<dd>OUT: Allows read-only access to incomplete file sets
|
||
when <code>TRUE</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fapl_multi_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetDxplMulti">H5Pset_dxpl_multi</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_dxpl_multi</code>(
|
||
<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>const hid_t *</em><code>memb_dxpl</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the data transfer property list for the multi-file driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_dxpl_multi</code> sets the data transfer property list
|
||
<code>dxpl_id</code> to use the multi-file driver for each
|
||
memory usage type <code>memb_dxpl[]</code>.
|
||
<p>
|
||
<code>H5Pset_dxpl_multi</code> can only be used after
|
||
the member map has been set with <code>H5Pset_fapl_multi</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>,
|
||
<dd>IN: Data transfer property list identifier.
|
||
<dt><em>const hid_t *</em><code>memb_dxpl</code>
|
||
<dd>IN: Array of data access property lists.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetDxplMulti">H5Pget_dxpl_multi</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_dxpl_multi</code>(
|
||
<em>hid_t</em> <code>dxpl_id</code>,
|
||
<em>const hid_t *</em><code>memb_dxpl</code>
|
||
)
|
||
<br>
|
||
<br>
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns multi-file data transfer property list information.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_dxpl_multi</code> returns the data transfer property list
|
||
information for the multi-file driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>dxpl_id</code>,
|
||
<dd>IN: Data transfer property list identifier.
|
||
<dt><em>const hid_t *</em><code>memb_dxpl</code>
|
||
<dd>OUT: Array of data access property lists.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplSplit">H5Pset_fapl_split</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_split</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>const char *</em><code>meta_ext</code>,
|
||
<em>hid_t</em> <code>meta_plist_id</code>,
|
||
<em>const char *</em><code>raw_ext</code>,
|
||
<em>hid_t</em> <code>raw_plist_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Emulates the old split file driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_split</code> is a compatibility function that
|
||
enables the multi-file driver to emulate the split driver from
|
||
HDF5 Releases 1.0 and 1.2.
|
||
The split file driver stored metadata and raw data in separate files
|
||
but provided no mechanism for separating types of metadata.
|
||
<p>
|
||
<code>fapl_id</code> is a file access property list identifier.
|
||
<p>
|
||
<code>meta_ext</code> is the filename extension for the metadata file.
|
||
The extension is appended to the name passed to <code>H5FDopen</code>,
|
||
usually from <code>H5Fcreate</code> or <code>H5Fopen</code>,
|
||
to form the name of the metadata file.
|
||
If the string %s is used in the extension, it works like the
|
||
name generator as in <code>H5Pset_fapl_multi</code>.
|
||
<p>
|
||
<code>meta_plist_id</code> is the file access property list identifier
|
||
for the metadata file.
|
||
<p>
|
||
<code>raw_ext</code> is the filename extension for the raw data file.
|
||
The extension is appended to the name passed to <code>H5FDopen</code>,
|
||
usually from <code>H5Fcreate</code> or <code>H5Fopen</code>,
|
||
to form the name of the rawdata file.
|
||
If the string %s is used in the extension, it works like the
|
||
name generator as in <code>H5Pset_fapl_multi</code>.
|
||
<p>
|
||
<code>raw_plist_id</code> is the file access property list identifier
|
||
for the raw data file.
|
||
<p>
|
||
If a user wishes to check to see whether this driver is in use,
|
||
the user must call <code>H5Pget_driver</code> and compare the
|
||
returned value to the string <code>H5FD_MULTI</code>.
|
||
A positive match will confirm that the multi driver is in use;
|
||
HDF5 provides no mechanism to determine whether it was called
|
||
as the special case invoked by <code>H5Pset_fapl_split</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>,
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>const char *</em><code>meta_ext</code>,
|
||
<dd>IN: Metadata filename extension.
|
||
<dt><em>hid_t</em> <code>meta_plist_id</code>,
|
||
<dd>IN: File access property list identifier for the metadata file.
|
||
<dt><em>const char *</em><code>raw_ext</code>,
|
||
<dd>IN: Raw data filename extension.
|
||
<dt><em>hid_t</em> <code>raw_plist_id</code>
|
||
<dd>IN: File access property list identifier for the raw data file.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Example:</strong>
|
||
<dd>
|
||
<pre>
|
||
/* Example 1: Both metadata and rawdata files are in the same */
|
||
/* directory. Use Station1-m.h5 and Station1-r.h5 as */
|
||
/* the metadata and rawdata files. */
|
||
hid_t fapl, fid;
|
||
fapl = H5Pcreate(H5P_FILE_ACCESS);
|
||
H5Pset_fapl_split(fapl, "-m.h5", H5P_DEFAULT, "-r.h5", H5P_DEFAULT);
|
||
fid=H5Fcreate("Station1",H5F_ACC_TRUNC,H5P_DEFAULT,fapl);
|
||
|
||
/* Example 2: metadata and rawdata files are in different */
|
||
/* directories. Use PointA-m.h5 and /pfs/PointA-r.h5 as */
|
||
/* the metadata and rawdata files. */
|
||
hid_t fapl, fid;
|
||
fapl = H5Pcreate(H5P_FILE_ACCESS);
|
||
H5Pset_fapl_split(fapl, "-m.h5", H5P_DEFAULT, "/pfs/%s-r.h5", H5P_DEFAULT);
|
||
fid=H5Fcreate("PointA",H5F_ACC_TRUNC,H5P_DEFAULT,fapl);
|
||
</pre>
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_split_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetMultiType">H5Pset_multi_type</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_multi_type</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5FD_mem_t</em> <code>type</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets data type property for <code>MULTI</code> driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_multi_type</code> sets the data type property in the
|
||
file access or data transfer property list <code>fapl_id</code>.
|
||
This enables a user application to specifiy the type of data the
|
||
appication wishes to access so that the application
|
||
can retrieve a file handle for low-level access to the particular member
|
||
of a set of <code>MULTI</code> files in which that type of data is stored.
|
||
The file handle is retrieved with a separate call
|
||
to <a href="RM_H5F.html#File-GetVfdHandle"><code>H5Fget_vfd_handle</code></a>
|
||
(or, in special circumstances, to <code>H5FDget_vfd_handle</code>;
|
||
see <cite>Virtual File Layer</cite> and <cite>List of VFL Functions</cite>
|
||
in <a href="TechNotes.html"><cite>HDF5 Technical Notes</cite></a>).
|
||
<p>
|
||
The type of data specified in <code>type</code> may be one of the following:
|
||
<table border=0>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_DEFAULT</code>
|
||
</td><td>
|
||
Need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_SUPER</code>
|
||
</td><td>
|
||
Super block ... need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_BTREE</code>
|
||
</td><td>
|
||
Btree ... need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_DRAW</code>
|
||
</td><td>
|
||
Need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_GHEAP</code>
|
||
</td><td>
|
||
Global heap ... need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_LHEAP</code>
|
||
</td><td>
|
||
Local Heap ... need description....
|
||
</td></tr>
|
||
<tr valign=top align=left><td> </td><td>
|
||
<code>H5FD_MEM_OHDR</code>
|
||
</td><td>
|
||
Need description....
|
||
</td></tr>
|
||
</table>
|
||
<p>
|
||
Use of this function is only appropriate for an HDF5 file written
|
||
as a set of files with the <code>MULTI</code> file driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list or data transfer property list identifier.
|
||
<dt><em>H5FD_mem_t</em> <code>type</code>
|
||
<dd>OUT: Type of data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetMultiType">H5Pget_multi_type</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_multi_type</code> (
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5FD_mem_t *</em><code>type</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves data type property for <code>MULTI</code> driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_multi_type</code> retrieves the data type setting from the
|
||
file access or data transfer property list <code>fapl_id</code>.
|
||
This enables a user application to specifiy the type of data the
|
||
application wishes to access so that the application
|
||
can retrieve a file handle for low-level access to the particular member
|
||
of a set of <code>MULTI</code> files in which that type of data is stored.
|
||
The file handle is retrieved with a separate call
|
||
to <a href="RM_H5F.html#File-GetVfdHandle"><code>H5Fget_vfd_handle</code></a>
|
||
(or, in special circumstances, to <code>H5FDget_vfd_handle</code>;
|
||
see <cite>Virtual File Layer</cite> and <cite>List of VFL Functions</cite>
|
||
in <a href="TechNotes.html"><cite>HDF5 Technical Notes</cite></a>).
|
||
<p>
|
||
The type of data returned in <code>type</code> will be one of those
|
||
listed in the discussion of the <code>type</code> parameter in the the
|
||
description of the function
|
||
<a href="#Property-SetMultiType"><code>H5Pset_multi_type</code></a>.
|
||
<p>
|
||
Use of this function is only appropriate for an HDF5 file written
|
||
as a set of files with the <code>MULTI</code> file driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list or data transfer property list identifier.
|
||
<dt><em>H5FD_mem_t *</em><code>type</code>
|
||
<dd>OUT: Type of data.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful;
|
||
otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplSec2">H5Pset_fapl_sec2</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_sec2</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the sec2 driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_sec2</code> modifies the file access property list
|
||
to use the <code>H5FD_SEC2</code> driver.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_sec2_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplStdio">H5Pset_fapl_stdio</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_stdio</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the standard I/O driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_stdio</code> modifies the file access property list
|
||
to use the standard I/O driver, <code>H5FD_STDIO</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_stdio_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplStream">H5Pset_fapl_stream</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_stream</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5FD_stream_fapl_t *</em><code>fapl</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets up the use of the streaming I/O driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_stream</code> sets up the use of the
|
||
streaming I/O driver.
|
||
<p>
|
||
<code>fapl_id</code> is the identifier for the
|
||
file access property list currently in use.
|
||
<p>
|
||
<code>fapl</code> is the file access property list.
|
||
<p>
|
||
The <code>H5FD_stream_fapl_t</code> struct contains the following
|
||
elements:
|
||
<dir>
|
||
<table border=0>
|
||
<tr align=left>
|
||
<td><em>size_t</em></td>
|
||
<td><code>increment</code></td></tr>
|
||
<tr align=left>
|
||
<td><em><font size=-1>H5FD_STREAM_SOCKET_TYPE</font></em></td>
|
||
<td><code>socket</code></td></tr>
|
||
<tr align=left>
|
||
<td><em>hbool_t</em></td>
|
||
<td><code>do_socket_io</code></td></tr>
|
||
<tr align=left>
|
||
<td><em>unsigned int</em></td>
|
||
<td><code>backlog</code></td></tr>
|
||
<tr align=left>
|
||
<td><em><font size=-1>H5FD</font>_stream_broadcast_t</em></td>
|
||
<td><code>broadcast_fn</code></td></tr>
|
||
<tr align=left>
|
||
<td><em>void *</em></td>
|
||
<td><code>broadcast_arg</code></td></tr>
|
||
</table>
|
||
<ul>
|
||
<li><code>increment</code> specifies how much memory to allocate
|
||
each time additional memory is required.
|
||
<li><code>socket</code> is an external socket descriptor;
|
||
if a valid socket argument is provided, that socket will be used.
|
||
<li><code>do_socket_io</code> is a boolean value specifying whether
|
||
to perform I/O on <code>socket</code>.
|
||
<li><code>backlog</code> is the argument for the
|
||
<code>listen</code> call.
|
||
<li><code>broadcast_fn</code> is the broadcast callback function.
|
||
<li><code>broadcast_arg</code> is the user argument to
|
||
the broadcast callback function.
|
||
</ul>
|
||
</dir>
|
||
<p>
|
||
<code>H5Pset_fapl_stream</code> and <code>H5Pget_fapl_stream</code>
|
||
are not intended for use in a parallel environment.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>H5FD_stream_fapl_t *</em><code>fapl</code>
|
||
<dd>IN: The streaming I/O file access property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplStream">H5Pget_fapl_stream</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_stream</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5FD_stream_fapl_t *</em><code>fapl</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the streaming I/O driver settings.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fapl_stream</code> returns the file access properties
|
||
set for the use of the streaming I/O driver.
|
||
<p>
|
||
<code>H5Pset_fapl_stream</code> and <code>H5Pget_fapl_stream</code>
|
||
are not intended for use in a parallel environment.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>H5FD_stream_fapl_t *</em><code>fapl</code>
|
||
<dd>OUT: The streaming I/O file access property list.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!-- ********** MOVED TO TechNotes/VFLfunc.html **********
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetDriver">H5Pset_driver</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_driver</code>(
|
||
<em>hid_t</em> <code>plist_id</code>,
|
||
<em>hid_t</em> <code>driver_id</code>,
|
||
<em>const void *</em> <code>driver_info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the file driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_driver</code> sets the file driver,
|
||
<code>driver_id</code>, for a file access or data transfer
|
||
property list, <code>plist_id</code>, and supplies an
|
||
optional struct containing the driver-specific properties,
|
||
<code>driver_info</code>.
|
||
<p>
|
||
<font color=red><b><i>Need <code>driver_info</code> struct definition.</i></b></font>
|
||
<p>
|
||
The driver properties will be copied into the property list
|
||
and the reference count on the driver will be incremented,
|
||
allowing the caller to close the driver identifier but still use
|
||
the property list.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: File access or data transfer property list identifier.
|
||
<dt><em>hid_t</em> <code>driver_id</code>
|
||
<dd>IN: Driver identifier.
|
||
<dt><em>const void *</em> <code>driver_info</code>
|
||
<dd>IN: Optional struct containing driver properties.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
</dl>
|
||
|
||
-->
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetDriver">H5Pget_driver</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>hid_t</em> <code>H5Pget_driver</code>(
|
||
<em>hid_t</em> <code>plist_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns low-lever driver identifier.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_driver</code> returns the identifier of the
|
||
low-level file driver associated with the file access property list
|
||
or data transfer property list <code>plist_id</code>.
|
||
<p>
|
||
Valid driver identifiers with the standard HDF5 library distribution
|
||
include the following:
|
||
<pre>
|
||
H5FD_CORE
|
||
H5FD_DPSS
|
||
H5FD_FAMILY
|
||
H5FD_GASS
|
||
H5FD_LOG
|
||
H5FD_MPIO
|
||
H5FD_MULTI
|
||
H5FD_SEC2
|
||
H5FD_STDIO
|
||
H5FD_STREAM </pre>
|
||
If a user defines and registers custom drivers or
|
||
if additional drivers are defined in an HDF5 distribution,
|
||
this list will be longer.
|
||
<p>
|
||
The returned driver identifier is only valid as long as the
|
||
file driver remains registered.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: File access or data transfer property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a valid low-level driver identifier if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_driver_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!-- ********** MOVED TO TechNotes/VFLfunc.html **********
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetDriverInfo">H5Pget_driver_info</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>void *</em><code>H5Pget_driver_info</code>(
|
||
<em>hid_t</em> <code>plist_id</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns a pointer to file driver information.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_driver_info</code> returns a pointer to
|
||
file driver-specific information for the low-level driver
|
||
associated with the file access or data transfer property list
|
||
<code>plist_id</code>.
|
||
|
||
<p>
|
||
<font color=red><b><i>Need more on "a pointer" or on what
|
||
is "pointed to." Might this be the <code>driver_info</code>
|
||
struct definition in <code>H5Pset_driver</code>?</i></b></font>
|
||
|
||
<p>
|
||
If no driver-specific properties have been registered,
|
||
<code>H5Pget_driver_info</code> returns <code>NULL</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>plist_id</code>
|
||
<dd>IN: File access or data transfer property list identifier.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a pointer to the struct containing
|
||
low-level driver information.
|
||
Otherwise returns <code>NULL</code>.
|
||
<p>
|
||
<code>NULL</code> is also returned if no driver-specific properties
|
||
have been registered.
|
||
No error is pushed on the stack in this case.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
</dl>
|
||
|
||
-->
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplGass">H5Pset_fapl_gass</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_gass</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>GASS_Info</em> <code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Stores user-supplied GASS information.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_gass</code> stores user-supplied GASS information,
|
||
the <em>GASS_Info</em> struct data as passed in <code>info</code>,
|
||
to the file access property list <code>fapl_id</code>.
|
||
<code>fapl_id</code> can then be used to create and/or open the file.
|
||
<p>
|
||
The <em>GASS_Info</em> object, <code>info</code>, is used for
|
||
file open operations when using GASS in the Globus environment.
|
||
<p>
|
||
Any modification to <code>info</code> after this function call
|
||
returns may have undetermined effect to the access property list.
|
||
Users must call <code>H5Pset_fapl_gass</code> again to setup
|
||
the property list.
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pset_fapl_gass</code> is an experimental function.
|
||
It is designed for use only when accessing files via the
|
||
GASS facility of the Globus environment.
|
||
For further information, see
|
||
<a href="http://www.globus.org/">http//www.globus.org/</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>,
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>GASS_Info</em> <code>info</code>
|
||
<dd>IN: Pointer to the GASS information structure.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplGass">H5Pget_fapl_gass</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_gass</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>GASS_Info *</em><code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves GASS information.
|
||
<dt><strong>Description:</strong>
|
||
<dd>If the file access property list <code>fapl_id</code> is set
|
||
for use of the <code>H5FD_GASS</code> driver,
|
||
<code>H5Pget_fapl_gass</code> returns the <em>GASS_Info</em>
|
||
object through the <code>info</code> pointer.
|
||
<p>
|
||
The <em>GASS_Info</em> information is copied, so it is valid
|
||
only until the file access property list is modified or closed.
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pget_fapl_gass</code> is an experimental function.
|
||
It is designed for use only when accessing files via the
|
||
GASS facility of the Globus environment.
|
||
For further information, see
|
||
<a href="http://www.globus.org/">http//www.globus.org/</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>,
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>GASS_Info *</em><code>info</code>
|
||
<dd>OUT: Pointer to the GASS information structure.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplSrb">H5Pset_fapl_srb</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_srb</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>SRB_Info</em> <code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Saves SRB connection handler and sets SRB settings.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_srb</code> stores the SRB client-to-server
|
||
connection handler <code>SRB_CONN</code> after the connection
|
||
is established and other user-supplied SRB information.
|
||
<p>
|
||
The user-supplied SRB information is contained in the
|
||
<em>SRB_Info</em> struct pointed to by <code>info</code>
|
||
and is stored in the file access property list <code>fapl_id</code>.
|
||
This information can then be used to create or open a file.
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pset_fapl_gass</code> is an experimental function.
|
||
It is designed for use only when accessing files via the
|
||
Storage Resource Broker (SRB). For further information, see
|
||
<a href="http://www.npaci.edu/Research/DI/srb/">http//www.npaci.edu/Research/DI/srb/</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>SRB_Info</em> <code>info</code>
|
||
<dd>IN: Pointer to the SRB information structure.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplSrb">H5Pget_fapl_srb</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_srb</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>SRB_Info *</em><code>info</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Retrieves SRB information.
|
||
<dt><strong>Description:</strong>
|
||
<dd>If the file access property list <code>fapl_id</code> is set
|
||
for use of the <code>H5FD_SRB</code> driver,
|
||
<code>H5Pget_fapl_srb</code> returns the <em>SRB_Info</em>
|
||
object through the <code>info</code> pointer.
|
||
<p>
|
||
The <em>SRB_Info</em> information is copied, so it is valid
|
||
only until the file access property list is modified or closed.
|
||
<dt><strong>Note:</strong>
|
||
<dd><code>H5Pset_fapl_gass</code> is an experimental function.
|
||
It is designed for use only when accessing files via the
|
||
Storage Resource Broker (SRB). For further information, see
|
||
<a href="http://www.npaci.edu/Research/DI/srb/">http//www.npaci.edu/Research/DI/srb/</a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>SRB_Info *</em><code>info</code>
|
||
<dd>OUT: Pointer to the SRB information structure.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFaplCore">H5Pset_fapl_core</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fapl_core</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>size_t</em> <code>increment</code>,
|
||
<em>hbool_t</em> <code>backing_store</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Modifies the file access property list to use the
|
||
<code>H5FD_CORE</code> driver.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fapl_core</code> modifies the file access property list
|
||
to use the <code>H5FD_CORE</code> driver.
|
||
<p>
|
||
The <code>H5FD_CORE</code> driver enables an application to work
|
||
with a file in memory, speeding reads and writes as no disk access
|
||
is made. File contents are stored only in memory until the file
|
||
is closed. The <code>backing_store</code> parameter determines
|
||
whether file contents are ever written to disk.
|
||
<p>
|
||
<code>increment</code> specifies the increment by which allocated
|
||
memory is to be increased each time more memory is required.
|
||
<p>
|
||
If <code>backing_store</code> is set to <code>1</code>
|
||
(<code>TRUE</code>), the file contents are flushed to a file
|
||
with the same name as this core file when the file is closed
|
||
or access to the file is terminated in memory.
|
||
<dt><strong>Note:</strong>
|
||
<dd>There is currently no means for reading a file from disk then
|
||
using the <code>H5FD_CORE</code> driver to manipulate the file.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>size_t</em> <code>increment</code>
|
||
<dd>IN: Size, in bytes, of memory increments.
|
||
<dt><em>hbool_t</em> <code>backing_store</code>
|
||
<dd>IN: Boolean flag indicating whether to write the file
|
||
contents to disk when the file is closed.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fapl_core_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFaplCore">H5Pget_fapl_core</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fapl_core</code>(
|
||
<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>size_t</em> *<code>increment</code>,
|
||
<em>hbool_t</em> *<code>backing_store</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Queries core file driver properties.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fapl_core</code> queries the <code>H5FD_CORE</code>
|
||
driver properties as set by <code>H5Pset_fapl_core</code>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>size_t</em> *<code>increment</code>
|
||
<dd>OUT: Size, in bytes, of memory increments.
|
||
<dt><em>hbool_t</em> *<code>backing_store</code>
|
||
<dd>OUT: Boolean flag indicating whether to write the file
|
||
contents to disk when the file is closed.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fapl_core_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SetFcloseDegree">H5Pset_fclose_degree</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pset_fclose_degree</code>(<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5F_close_degree_t</em> <code>fc_degree</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Sets the file close degree.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pset_fclose_degree</code> sets the file close degree property <code>fc_degree</code>
|
||
in the file access property list <code>fapl_id</code>.<2E>
|
||
<p> The value of <code>fc_degree</code> determines how aggressively <code>H5Fclose</code>
|
||
deals with objects within a file that remain open when <code>H5Fclose</code>
|
||
is called to close that file.<2E> <code>fc_degree</code> can have any one of
|
||
four valid values:
|
||
<div align="center">
|
||
<table width="75%" border="1" cellpadding="3">
|
||
<tr>
|
||
<th valign="top">Degree name</th>
|
||
<th valign="top"><code>H5Fclose</code> behavior with no open object
|
||
in file</th>
|
||
<th valign="top"><code>H5Fclose</code> behavior with open object(s)
|
||
in file</th>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><code>H5F_CLOSE_WEAK</code></td>
|
||
<td valign="top">Actual file is closed.</td>
|
||
<td valign="top">Access to file identifier is terminated; actual file
|
||
close is delayed until all objects in file are closed</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><code>H5F_CLOSE_SEMI</code></td>
|
||
<td valign="top">Actual file is closed.</td>
|
||
<td valign="top">Function returns FAILURE</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><code>H5F_CLOSE_STRONG</code></td>
|
||
<td valign="top">Actual file is closed.</td>
|
||
<td valign="top">All open objects ramaining in the file are closed then
|
||
file is closed</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><code>H5F_CLOSE_DEFAULT</code></td>
|
||
<td colspan="2" valign="top">The VFL driver chooses the behavior.<2E> Currently,
|
||
all VFL drivers set this value to <code>H5F_CLOSE_WEAK</code>, except
|
||
for the MPI-I/O driver, which sets it to <code>H5F_CLOSE_SEMI</code>.
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>H5F_close_degree_t</em> <code>fc_degree</code>
|
||
<dd>IN: Pointer to a location containing the file close degree property,
|
||
the value of <code>fc_degree</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful. Otherwise returns a negative
|
||
value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pset_fclose_degree_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-GetFcloseDegree">H5Pget_fclose_degree</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>herr_t</em> <code>H5Pget_fclose_degree</code>(<em>hid_t</em> <code>fapl_id</code>,
|
||
<em>H5F_close_degree_t</em> <code>fc_degree</code>)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>Returns the file close degree.
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Pget_fclose_degree</code> returns the current setting of the file
|
||
close degree property <code>fc_degree</code> in the file access property list
|
||
<code>fapl_id</code>.<2E>
|
||
<p> The value of <code>fc_degree</code> determines how aggressively <code>H5Fclose</code>
|
||
deals with objects within a file that remain open when <code>H5Fclose</code>
|
||
is called to close that file.<2E> <code>fc_degree</code> can have any one of
|
||
four valid values as described above in <a href="#Property-SetFcloseDegree"><code>H5Pset_fclose_degree</code></a>.
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>hid_t</em> <code>fapl_id</code>
|
||
<dd>IN: File access property list identifier.
|
||
<dt><em>H5F_close_degree_t</em> <code>fc_degree</code>
|
||
<dd>OUT: Pointer to a location to which to return the file close degree
|
||
property, the value of <code>fc_degree</code>.
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful. Otherwise returns a negative
|
||
value.
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pget_fclose_degree_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
</dl>
|
||
|
||
|
||
<!-- ***** TEMPLATE *****
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-SGetFaplxxx">H5Psget_fapl_xxx</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>xxx</em> <code>H5Psget_fapl_xxx</code>(
|
||
<em>xxx</em> <code>xxx</code>,
|
||
<em>xxx</em> <code>xxx</code>,
|
||
<em>xxx</em> <code>xxx</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>H5Psget_fapl_xxx</code>
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>xxx</em> <code>xxx</code>
|
||
<dd>IN:
|
||
<dd>OUT:
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns a non-negative value if successful.
|
||
Otherwise returns a negative value.
|
||
-->
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
<!--
|
||
</dl>
|
||
-->
|
||
<!-- ***** TEMPLATE *****
|
||
|
||
<hr>
|
||
<dl>
|
||
<dt><strong>Name:</strong> <a name="Property-xxx">xxx</a>
|
||
<dt><strong>Signature:</strong>
|
||
<dd><em>xxx</em> <code>xxx</code>(
|
||
<em>xxx</em> <code>xxx</code>,
|
||
<em>xxx</em> <code>xxx</code>,
|
||
<em>xxx</em> <code>xxx</code>
|
||
)
|
||
<dt><strong>Purpose:</strong>
|
||
<dd>
|
||
<dt><strong>Description:</strong>
|
||
<dd><code>xxx</code>
|
||
|
||
<dt><strong>Parameters:</strong>
|
||
<dl>
|
||
<dt><em>xxx</em> <code>xxx</code>
|
||
<dd>IN:
|
||
<dd>OUT:
|
||
</dl>
|
||
<dt><strong>Returns:</strong>
|
||
<dd>Returns xxx if successful.
|
||
Otherwise returns xxx.
|
||
-->
|
||
<!--
|
||
<dt><strong>Non-C API(s):</strong>
|
||
<dd><a href="fortran/h5p_FORTRAN.html#h5pxxx_f"
|
||
target="FortranWin"><img src="Graphics/FORTRAN.gif" border=0></a>
|
||
-->
|
||
<!--
|
||
<img src="Graphics/Java.gif">
|
||
<img src="Graphics/C++.gif">
|
||
-->
|
||
<!--
|
||
</dl>
|
||
-->
|
||
|
||
|
||
<!-- #BeginLibraryItem "/ed_libs/NavBar_RM.lbi" --><hr>
|
||
<center>
|
||
<table border=0 width=98%>
|
||
<tr><td valign=top align=left>
|
||
<a href="index.html">HDF5 documents and links</a> <br>
|
||
<a href="H5.intro.html">Introduction to HDF5</a> <br>
|
||
<a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User Guide</a> <br>
|
||
<!--
|
||
<a href="Glossary.html">Glossary</a><br>
|
||
-->
|
||
</td>
|
||
<td valign=top align=right>
|
||
And in this document, the
|
||
<a href="RM_H5Front.html">HDF5 Reference Manual</a>
|
||
<br>
|
||
<a href="RM_H5.html">H5</a>
|
||
<a href="RM_H5A.html">H5A</a>
|
||
<a href="RM_H5D.html">H5D</a>
|
||
<a href="RM_H5E.html">H5E</a>
|
||
<a href="RM_H5F.html">H5F</a>
|
||
<a href="RM_H5G.html">H5G</a>
|
||
<a href="RM_H5I.html">H5I</a>
|
||
<a href="RM_H5P.html">H5P</a>
|
||
<br>
|
||
<a href="RM_H5R.html">H5R</a>
|
||
<a href="RM_H5S.html">H5S</a>
|
||
<a href="RM_H5T.html">H5T</a>
|
||
<a href="RM_H5Z.html">H5Z</a>
|
||
<a href="Tools.html">Tools</a>
|
||
<a href="PredefDTypes.html">Datatypes</a>
|
||
</td></tr>
|
||
</table>
|
||
</center>
|
||
<hr>
|
||
<!-- #EndLibraryItem --><!-- #BeginLibraryItem "/ed_libs/Footer.lbi" --><address>
|
||
<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a>
|
||
<br>
|
||
Describes HDF5 Release 1.6.0, July 2003
|
||
</address><!-- #EndLibraryItem -->
|
||
|
||
Last modified: 3 July 2003
|
||
|
||
</body>
|
||
</html>
|
||
|