Added H5DGet_storage_size and H5Diterate. RM_H5F.html Rearranged TOC. RM_H5P.html Added H5Pset/get_hyper_cache, H5Pset/get_btree_ratios, H5Pset/get_gc_references, and H5Pget_vlen_mem_manager. RM_H5R.html Added H5Rget_object_type. RM_H5Front.html As functions were added to the Reference Manual (above), they were removed from "functions missing in the RM" list in this document.
414 lines
15 KiB
HTML
414 lines
15 KiB
HTML
<html>
|
|
<head><title>
|
|
HDF5 API Specification
|
|
</title></head>
|
|
<body bgcolor="#FFFFFF">
|
|
|
|
|
|
<hr>
|
|
<center>
|
|
<table cellspacing=0 cellpadding=0 border=0 width=98%>
|
|
<tr><td valign=top align=left>
|
|
<a href="H5.intro.html">Introduction to HDF5</a> <br>
|
|
<a href="H5.user.html">HDF5 User Guide</a> <br>
|
|
<a href="index.html">Other HDF5 documents and links</a> <br>
|
|
<!--
|
|
<a href="Glossary.html">Glossary</a><br>
|
|
-->
|
|
</td>
|
|
<td valign=top align=right>
|
|
<!--
|
|
And in this document, the
|
|
HDF5 Reference Manual
|
|
<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>
|
|
<br>
|
|
<a href="RM_H5P.html">H5P</a>
|
|
<a href="RM_H5R.html">H5R</a>
|
|
<a href="RM_H5RA.html">H5RA</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>
|
|
-->
|
|
</td></tr>
|
|
</table>
|
|
</center>
|
|
<hr>
|
|
|
|
|
|
<center>
|
|
<h1>HDF5: API Specification<br>Reference Manual</h1>
|
|
</center>
|
|
The HDF5 library provides several interfaces, each of which provides the
|
|
tools required to meet specific aspects of the HDF5 data-handling requirements.
|
|
<i>(See <a href="#NotDocced">below</a> for a list of functions that are not yet documented in this HDF5 Reference Manual.)</i>
|
|
|
|
<center>
|
|
<table border=0>
|
|
|
|
<tr><td valign=top><a href="RM_H5.html">Library Functions</a>
|
|
</td><td> </td><td valign=top>The general-purpose <strong>H5</strong> functions.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5A.html">Attribute Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5A</strong> API for attributes.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5D.html">Dataset Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5D</strong> API for manipulating scientific datasets.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5E.html">Error Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5E</strong> API for error handling.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5F.html">File Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5F</strong> API for accessing HDF files.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5G.html">Group Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5G</strong> API for creating physical groups of objects on disk.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5I.html">Identifier Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5I</strong> API for working with object identifiers.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5P.html">Property List Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5P</strong> API for manipulating object property lists.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5R.html">Reference Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5R</strong> API for references.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5S.html">Dataspace Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5S</strong> API for defining dataset dataspace.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5T.html">Datatype Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5T</strong> API for defining dataset element information.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="RM_H5Z.html">Compression Interface</a>
|
|
</td><td></td><td valign=top>The <strong>H5Z</strong> API for compression.
|
|
</td></tr>
|
|
<tr><td valign=top><a href="Tools.html">Tools</a>
|
|
</td><td></td><td valign=top>Interactive tools for the examination of existing HDF5 files.
|
|
<!--
|
|
</td></tr>
|
|
<tr><td valign=top><a href="Glossary.html">Glossary</a>
|
|
</td><td></td><td valign=top>A glossary of data-types used in the APIs.
|
|
-->
|
|
</td></tr>
|
|
<tr><td valign=top><hr noshade size=1>Experimental interface:<br><a href="RM_H5RA.html">Ragged Arrays</a>
|
|
</td><td></td><td valign=top><hr noshade size=1><br>The <strong>H5RA</strong> API for ragged arrays.
|
|
|
|
|
|
</td></tr>
|
|
</table>
|
|
</center>
|
|
<a name="NotDocced">
|
|
<hr>
|
|
</a>
|
|
|
|
<pre>
|
|
SPECIAL NOTE
|
|
HDF5 Release 1.2 Beta
|
|
|
|
The following HDF5 functions are not documented in the HDF5 Reference
|
|
Manual that accompanies this Beta release; they will be documented in
|
|
the final Release 1.2. Brief descriptions, as extracted from comments
|
|
in the source code, are appended below.
|
|
|
|
H5Sget_select_hyper_nblocks
|
|
H5Sget_select_elem_npoints
|
|
H5Sget_select_hyper_blocklist
|
|
H5Sget_select_elem_pointlist
|
|
H5Sget_select_bounds
|
|
|
|
H5Tenum_create
|
|
H5Tenum_insert
|
|
H5Tenum_nameof
|
|
H5Tenum_valueof
|
|
H5Tset_tag
|
|
H5Tget_tag
|
|
H5Tget_super
|
|
H5Tget_member_value
|
|
H5Tregister
|
|
|
|
|
|
|
|
/*--------------------------------------------------------------------------
|
|
NAME
|
|
H5Sget_select_hyper_nblocks
|
|
PURPOSE
|
|
Get the number of hyperslab blocks in current hyperslab selection
|
|
USAGE
|
|
hssize_t H5Sget_select_hyper_nblocks(dsid)
|
|
hid_t dsid; IN: Dataspace ID of selection to query
|
|
RETURNS
|
|
The number of hyperslab blocks in selection on success, negative on failure
|
|
DESCRIPTION
|
|
Returns the number of hyperslab blocks in current selection for dataspace.
|
|
--------------------------------------------------------------------------*/
|
|
|
|
/*--------------------------------------------------------------------------
|
|
NAME
|
|
H5Sget_select_elem_npoints
|
|
PURPOSE
|
|
Get the number of points in current element selection
|
|
USAGE
|
|
hssize_t H5Sget_select_elem_npoints(dsid)
|
|
hid_t dsid; IN: Dataspace ID of selection to query
|
|
RETURNS
|
|
The number of element points in selection on success, negative on failure
|
|
DESCRIPTION
|
|
Returns the number of element points in current selection for dataspace.
|
|
--------------------------------------------------------------------------*/
|
|
|
|
/*--------------------------------------------------------------------------
|
|
NAME
|
|
H5Sget_select_hyper_blocklist
|
|
PURPOSE
|
|
Get the list of hyperslab blocks currently selected
|
|
USAGE
|
|
herr_t H5Sget_select_hyper_blocklist(dsid, hsize_t *buf)
|
|
hid_t dsid; IN: Dataspace ID of selection to query
|
|
hsize_t startblock; IN: Hyperslab block to start with
|
|
hsize_t numblocks; IN: Number of hyperslab blocks to get
|
|
hsize_t *buf; OUT: List of hyperslab blocks selected
|
|
RETURNS
|
|
Non-negative on success, negative on failure
|
|
DESCRIPTION
|
|
Puts a list of the hyperslab blocks into the user's buffer. The blocks
|
|
start with the 'startblock'th block in the list of blocks and put
|
|
'numblocks' number of blocks into the user's buffer (or until the end of
|
|
the list of blocks, whichever happen first)
|
|
The block coordinates have the same dimensionality (rank) as the
|
|
dataspace they are located within. The list of blocks is formatted as
|
|
follows: <"start" coordinate> immediately followed by <"opposite" corner
|
|
coordinate>, followed by the next "start" and "opposite" coordinate, etc.
|
|
until all the block information requested has been put into the user's
|
|
buffer.
|
|
No guarantee of any order of the blocks is implied.
|
|
--------------------------------------------------------------------------*/
|
|
|
|
/*--------------------------------------------------------------------------
|
|
NAME
|
|
H5Sget_select_elem_pointlist
|
|
PURPOSE
|
|
Get the list of element points currently selected
|
|
USAGE
|
|
herr_t H5Sget_select_elem_pointlist(dsid, hsize_t *buf)
|
|
hid_t dsid; IN: Dataspace ID of selection to query
|
|
hsize_t startpoint; IN: Element point to start with
|
|
hsize_t numpoints; IN: Number of element points to get
|
|
hsize_t *buf; OUT: List of element points selected
|
|
RETURNS
|
|
Non-negative on success, negative on failure
|
|
DESCRIPTION
|
|
Puts a list of the element points into the user's buffer. The points
|
|
start with the 'startpoint'th block in the list of points and put
|
|
'numpoints' number of points into the user's buffer (or until the end of
|
|
the list of points, whichever happen first)
|
|
The point coordinates have the same dimensionality (rank) as the
|
|
dataspace they are located within. The list of points is formatted as
|
|
follows: <coordinate> followed by the next coordinate, etc. until all the
|
|
point information in the selection have been put into the user's buffer.
|
|
The points are returned in the order they will be iterated through
|
|
when a selection is read/written from/to disk.
|
|
--------------------------------------------------------------------------*/
|
|
|
|
/*--------------------------------------------------------------------------
|
|
NAME
|
|
H5Sget_select_bounds
|
|
PURPOSE
|
|
Gets the bounding box containing the selection.
|
|
USAGE
|
|
herr_t H5S_get_select_bounds(space, start, end)
|
|
hid_t dsid; IN: Dataspace ID of selection to query
|
|
hsize_t *start; OUT: Starting coordinate of bounding box
|
|
hsize_t *end; OUT: Opposite coordinate of bounding box
|
|
RETURNS
|
|
Non-negative on success, negative on failure
|
|
DESCRIPTION
|
|
Retrieves the bounding box containing the current selection and places
|
|
it into the user's buffers. The start and end buffers must be large
|
|
enough to hold the dataspace rank number of coordinates. The bounding box
|
|
exactly contains the selection, ie. if a 2-D element selection is currently
|
|
defined with the following points: (4,5), (6,8) (10,7), the bounding box
|
|
with be (4, 5), (10, 8). Calling this function on a "none" selection
|
|
returns fail.
|
|
The bounding box calculations _does_ include the current offset of the
|
|
selection within the dataspace extent.
|
|
--------------------------------------------------------------------------*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tenum_create
|
|
*
|
|
* Purpose: Create a new enumeration data type based on the specified
|
|
* TYPE, which must be an integer type.
|
|
*
|
|
* Return: Success: ID of new enumeration data type
|
|
* Failure: Negative
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tenum_insert
|
|
*
|
|
* Purpose: Insert a new enumeration data type member into an enumeration
|
|
* type. TYPE is the enumeration type, NAME is the name of the
|
|
* new member, and VALUE points to the value of the new member.
|
|
* The NAME and VALUE must both be unique within the TYPE. VALUE
|
|
* points to data which is of the data type defined when the
|
|
* enumeration type was created.
|
|
*
|
|
* Return: Success: non-negative
|
|
* Failure: negative
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tenum_nameof
|
|
*
|
|
* Purpose: Finds the symbol name that corresponds to the specified VALUE
|
|
* of an enumeration data type TYPE. At most SIZE characters of
|
|
* the symbol name are copied into the NAME buffer. If the
|
|
* entire symbol name and null terminator do not fit in the NAME
|
|
* buffer then as many characters as possible are copied (not
|
|
* null terminated) and the function fails.
|
|
*
|
|
* Return: Success: Non-negative.
|
|
* Failure: Negative, first character of NAME is set to
|
|
* null if SIZE allows it.
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tenum_valueof
|
|
*
|
|
* Purpose: Finds the value that corresponds to the specified NAME f an
|
|
* enumeration TYPE. The VALUE argument should be at least as
|
|
* large as the value of H5Tget_size(type) in order to hold the
|
|
* result.
|
|
*
|
|
* Return: Success: Non-negative
|
|
* Failure: Negative
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tset_tag
|
|
*
|
|
* Purpose: Tag an opaque datatype with a unique ASCII identifier.
|
|
*
|
|
* Return: Non-negative on success/Negative on failure
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tget_tag
|
|
*
|
|
* Purpose: Get the tag associated with an opaque datatype.
|
|
*
|
|
* Return: A pointer to an allocated string. The caller should free
|
|
* the string. NULL is returned for errors.
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tget_super
|
|
*
|
|
* Purpose: Returns the type from which TYPE is derived. In the case of
|
|
* an enumeration type the return value is an integer type.
|
|
*
|
|
* Return: Success: Type ID for base data type.
|
|
* Failure: negative
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tget_member_value
|
|
*
|
|
* Purpose: Return the value for an enumeration data type member.
|
|
*
|
|
* Return: Success: non-negative with the member value copied
|
|
* into the memory pointed to by VALUE.
|
|
* Failure: negative, VALUE memory is undefined.
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
/*-------------------------------------------------------------------------
|
|
* Function: H5Tregister
|
|
*
|
|
* Purpose: Register a hard or soft conversion function for a data type
|
|
* conversion path. The path is specified by the source and
|
|
* destination data types SRC_ID and DST_ID (for soft functions
|
|
* only the class of these types is important). If FUNC is a
|
|
* hard function then it replaces any previous path; if it's a
|
|
* soft function then it replaces all existing paths to which it
|
|
* applies and is used for any new path to which it applies as
|
|
* long as that path doesn't have a hard function.
|
|
*
|
|
* Return: Non-negative on success/Negative on failure
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
|
|
|
<hr>
|
|
<center>
|
|
<table border=0 width=98%>
|
|
<tr><td valign=top align=left>
|
|
<a href="H5.intro.html">Introduction to HDF5</a> <br>
|
|
<a href="H5.user.html">HDF5 User Guide</a> <br>
|
|
<a href="index.html">Other HDF5 documents and links</a> <br>
|
|
<!--
|
|
<a href="Glossary.html">Glossary</a><br>
|
|
-->
|
|
</td>
|
|
<td valign=top align=right>
|
|
<!--
|
|
And in this document, the
|
|
HDF5 Reference Manual
|
|
<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>
|
|
<br>
|
|
<a href="RM_H5P.html">H5P</a>
|
|
<a href="RM_H5R.html">H5R</a>
|
|
<a href="RM_H5RA.html">H5RA</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>
|
|
-->
|
|
</td></tr>
|
|
</table>
|
|
</center>
|
|
<hr>
|
|
|
|
|
|
<address>
|
|
<table width=100% border=0>
|
|
<tr><td align=left valign=top>
|
|
<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a>
|
|
<br>
|
|
Last modified: 26 April 1999
|
|
|
|
</td><td align=right valign=top>
|
|
<a href="Copyright.html">Copyright</a>
|
|
</td></tr>
|
|
</table>
|
|
|
|
|
|
</body>
|
|
</html>
|