Files
hdf5/doc/html/PredefDTypes.html
Frank Baker cec846b3d0 [svn-r7758]
Purpose:
    Updated footers to "Describes HDF5 Release 1.7, the unreleased
    development branch; working toward HDF5 Release 1.8.0"

Platforms tested:
    IE 5, Safari
2003-10-27 16:55:13 -05:00

509 lines
12 KiB
HTML

<html>
<head><title>
HDF5/Predefined Datatypes
</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>&nbsp;<br>
<a href="H5.intro.html">Introduction to HDF5</a>&nbsp;<br>
<a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User Guide</a>&nbsp;<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>&nbsp;&nbsp;
<br>
<a href="RM_H5.html">H5</a>&nbsp;&nbsp;
<a href="RM_H5A.html">H5A</a>&nbsp;&nbsp;
<a href="RM_H5D.html">H5D</a>&nbsp;&nbsp;
<a href="RM_H5E.html">H5E</a>&nbsp;&nbsp;
<a href="RM_H5F.html">H5F</a>&nbsp;&nbsp;
<a href="RM_H5G.html">H5G</a>&nbsp;&nbsp;
<a href="RM_H5I.html">H5I</a>&nbsp;&nbsp;
<a href="RM_H5P.html">H5P</a>&nbsp;&nbsp;
<br>
<a href="RM_H5R.html">H5R</a>&nbsp;&nbsp;
<a href="RM_H5S.html">H5S</a>&nbsp;&nbsp;
<a href="RM_H5T.html">H5T</a>&nbsp;&nbsp;
<a href="RM_H5Z.html">H5Z</a>&nbsp;&nbsp;
<a href="Tools.html">Tools</a>&nbsp;&nbsp;
<a href="PredefDTypes.html">Datatypes</a>&nbsp;&nbsp;
</td></tr>
</table>
</center>
<hr>
<!-- #EndLibraryItem --><center>
<h1>HDF5 Predefined Datatypes</h1>
</center>
The following datatypes are predefined in HDF5.
<h4>IEEE floating point datatypes</h4>
<ul>
<li>32-bit and 64-bit
<li>Big-endian and little-endian
</ul>
<pre>
H5T_IEEE_F32BE
H5T_IEEE_F32LE
H5T_IEEE_F64BE
H5T_IEEE_F64LE
</pre>
<h4>Standard datatypes</h4>
<ul>
<li>Signed integer (2's complement), unsigned integer, and bitfield
<li>8-bit, 16-bit, 32-bit, and 64-bit
<li>Big-endian and little-endian
</ul>
<table border=0 width=76%>
<tr><td valign=top width=33% align=left>
<pre>
H5T_STD_I8BE
H5T_STD_I8LE
H5T_STD_I16BE
H5T_STD_I16LE
H5T_STD_I32BE
H5T_STD_I32LE
H5T_STD_I64BE
H5T_STD_I64LE
</pre>
</td>
<td valign=top width=34% align=left>
<pre>
H5T_STD_U8BE
H5T_STD_U8LE
H5T_STD_U16BE
H5T_STD_U16LE
H5T_STD_U32BE
H5T_STD_U32LE
H5T_STD_U64BE
H5T_STD_U64LE
</pre>
</td>
<td valign=top width=33% align=left>
<pre>
H5T_STD_B8BE
H5T_STD_B8LE
H5T_STD_B16BE
H5T_STD_B16LE
H5T_STD_B32BE
H5T_STD_B32LE
H5T_STD_B64BE
H5T_STD_B64LE
</pre>
</tr></td>
</table>
<ul>
<li>Object reference or dataset region reference
</ul>
<pre>
H5T_STD_REF_OBJ
H5T_STD_REF_DSETREG
</pre>
<h4>UNIX-specific datatypes</h4>
<ul>
<li>32-bit and 64-bit
<li>Big-endian and little-endian
</ul>
<pre>
H5T_UNIX_D32BE
H5T_UNIX_D32LE
H5T_UNIX_D64BE
H5T_UNIX_D64LE
</pre>
<h4>C-specific datatype</h4>
<ul>
<li>String datatype in C (size defined in bytes rather than in bits)
</ul>
<pre>
H5T_C_S1
</pre>
<h4>FORTRAN-specific datatype</h4>
<ul>
<li>String datatype in FORTRAN (as defined for the HDF5 C library)
</ul>
<pre>
H5T_FORTRAN_S1
</pre>
<h4>Intel-specific datatypes</h4>
<ul>
<li>For Intel CPUs
<li>Little-endian
<li>Signed integer (2's complement), unsigned integer, bitfield, and
IEEE floating point
<li>8-bit, 16-bit, 32-bit, and 64-bit
</ul>
<table border=0 width=76%>
<tr><td valign=top width=50% align=left>
<pre>
H5T_INTEL_I8
H5T_INTEL_I16
H5T_INTEL_I32
H5T_INTEL_I64
H5T_INTEL_U8
H5T_INTEL_U16
H5T_INTEL_U32
H5T_INTEL_U64
</pre>
</td>
<td valign=top width=50% align=left>
<pre>
H5T_INTEL_B8
H5T_INTEL_B16
H5T_INTEL_B32
H5T_INTEL_B64
H5T_INTEL_F32
H5T_INTEL_F64
</pre>
</tr></td>
</table>
<h4>DEC Alpha-specific datatypes</h4>
<ul>
<li>For DEC Alpha CPUs
<li>Little-endian
<li>Signed integer (2's complement), unsigned integer, bitfield, and
IEEE floating point
<li>8-bit, 16-bit, 32-bit, and 64-bit
</ul>
<table border=0 width=76%>
<tr><td valign=top width=50% align=left>
<pre>
H5T_ALPHA_I8
H5T_ALPHA_I16
H5T_ALPHA_I32
H5T_ALPHA_I64
H5T_ALPHA_U8
H5T_ALPHA_U16
H5T_ALPHA_U32
H5T_ALPHA_U64
</pre>
</td>
<td valign=top width=50% align=left>
<pre>
H5T_ALPHA_B8
H5T_ALPHA_B16
H5T_ALPHA_B32
H5T_ALPHA_B64
H5T_ALPHA_F32
H5T_ALPHA_F64
</pre>
</tr></td>
</table>
<h4>MIPS-specific datatypes</h4>
<ul>
<li>For MIPS CPUs, commonly used in SGI system
<li>Big-endian
<li>Signed integer (2's complement), unsigned integer, bitfield, and
IEEE floating point
<li>8-bit, 16-bit, 32-bit, and 64-bit
</ul>
<table border=0 width=76%>
<tr><td valign=top width=50% align=left>
<pre>
H5T_MIPS_I8
H5T_MIPS_I16
H5T_MIPS_I32
H5T_MIPS_I64
H5T_MIPS_U8
H5T_MIPS_U16
H5T_MIPS_U32
H5T_MIPS_U64
</pre>
</td>
<td valign=top width=50% align=left>
<pre>
H5T_MIPS_B8
H5T_MIPS_B16
H5T_MIPS_B32
H5T_MIPS_B64
H5T_MIPS_F32
H5T_MIPS_F64
</pre>
</tr></td>
</table>
<h4>Predefined native datatypes</h4>
<dir>
These are the datatypes detected by <code>H5detect</code>.
Their names differ from other HDF5 datatype names as follows:
<ul>
<li>Instead of a class name, precision, and byte order as the last
component, they have a C-like datatype name.
<li>If the datatype begins with <code>U</code>, then it is the unsigned
version of the integer datatype; other integer datatypes are signed.
<li>The datatype <code>LLONG</code> corresponds to
C's <code>long_long</code> and
<code>LDOUBLE</code> is <code>long_double</code>.
These datatypes might be the same as <code>LONG</code> and
<code>DOUBLE</code>, respectively.
</ul>
</dir>
<table border=0 width=76%>
<tr><td valign=top width=50% align=left>
<pre>
H5T_NATIVE_CHAR
H5T_NATIVE_SCHAR
H5T_NATIVE_UCHAR
H5T_NATIVE_SHORT
H5T_NATIVE_USHORT
H5T_NATIVE_INT
H5T_NATIVE_UINT
H5T_NATIVE_LONG
H5T_NATIVE_ULONG
H5T_NATIVE_LLONG
H5T_NATIVE_ULLONG
</pre>
</td>
<td valign=top width=50% align=left>
<pre>
H5T_NATIVE_FLOAT
H5T_NATIVE_DOUBLE
H5T_NATIVE_LDOUBLE
H5T_NATIVE_B8
H5T_NATIVE_B16
H5T_NATIVE_B32
H5T_NATIVE_B64
H5T_NATIVE_OPAQUE
H5T_NATIVE_HADDR
H5T_NATIVE_HSIZE
H5T_NATIVE_HSSIZE
H5T_NATIVE_HERR
H5T_NATIVE_HBOOL
</pre>
</tr></td>
</table>
<h4>ANSI C9x-specific native integer datatypes</h4>
<ul>
<li>Signed integer (2's complement), unsigned integer, and bitfield
<li>8-bit, 16-bit, 32-bit, and 64-bit
<li><code>LEAST</code> -- storage to use least amount of space
<br>
<code>FAST</code> -- storage to maximize performance
</ul>
<table border=0 width=76%>
<tr><td valign=top width=50% align=left>
<pre>
H5T_NATIVE_INT8
H5T_NATIVE_UINT8
H5T_NATIVE_INT_LEAST8
H5T_NATIVE_UINT_LEAST8
H5T_NATIVE_INT_FAST8
H5T_NATIVE_UINT_FAST8
H5T_NATIVE_INT16
H5T_NATIVE_UINT16
H5T_NATIVE_INT_LEAST16
H5T_NATIVE_UINT_LEAST16
H5T_NATIVE_INT_FAST16
H5T_NATIVE_UINT_FAST16
</pre>
</td>
<td valign=top width=50% align=left>
<pre>
H5T_NATIVE_INT32
H5T_NATIVE_UINT32
H5T_NATIVE_INT_LEAST32
H5T_NATIVE_UINT_LEAST32
H5T_NATIVE_INT_FAST32
H5T_NATIVE_UINT_FAST32
H5T_NATIVE_INT64
H5T_NATIVE_UINT64
H5T_NATIVE_INT_LEAST64
H5T_NATIVE_UINT_LEAST64
H5T_NATIVE_INT_FAST64
H5T_NATIVE_UINT_FAST64
</pre>
</tr></td>
</table>
<a name="F90">
<h4>FORTRAN90 API datatypes</h4>
</a>
<ul>
<li>Datatypes defined for the FORTRAN90 APIs
<br>
<br>
<li>Native integer, single-precision real, double-precision real,
and character
</ul>
<pre>
H5T_NATIVE_INTEGER
H5T_NATIVE_REAL
H5T_NATIVE_DOUBLE
H5T_NATIVE_CHARACTER
</pre>
<ul>
<li>Signed integer (2's complement), unsigned integer, and
IEEE floating point
<li>8-bit, 16-bit, 32-bit, and 64-bit
<li>Big-endian and little-endian
</ul>
<table border=0 width=76%>
<tr><td valign=top width=33% align=left>
<pre>
H5T_STD_I8BE
H5T_STD_I8LE
H5T_STD_I16BE
H5T_STD_I16LE
H5T_STD_I32BE
H5T_STD_I32LE
H5T_STD_I64BE
H5T_STD_I64LE
</pre>
</td>
<td valign=top width=34% align=left>
<pre>
H5T_STD_U8BE
H5T_STD_U8LE
H5T_STD_U16BE
H5T_STD_U16LE
H5T_STD_U32BE
H5T_STD_U32LE
H5T_STD_U64BE
H5T_STD_U64LE
</pre>
</td>
<td valign=top width=33% align=left>
<pre>
H5T_IEEE_F32BE
H5T_IEEE_F32LE
H5T_IEEE_F64BE
H5T_IEEE_F64LE
</pre>
</tr></td>
</table>
<ul>
<li>Object reference or dataset region reference
</ul>
<pre>
H5T_STD_REF_OBJ
H5T_STD_REF_DSETREG
</pre>
<!-- #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>&nbsp;<br>
<a href="H5.intro.html">Introduction to HDF5</a>&nbsp;<br>
<a href="http://hdf.ncsa.uiuc.edu/HDF5/doc/UG/index.html">HDF5 User Guide</a>&nbsp;<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>&nbsp;&nbsp;
<br>
<a href="RM_H5.html">H5</a>&nbsp;&nbsp;
<a href="RM_H5A.html">H5A</a>&nbsp;&nbsp;
<a href="RM_H5D.html">H5D</a>&nbsp;&nbsp;
<a href="RM_H5E.html">H5E</a>&nbsp;&nbsp;
<a href="RM_H5F.html">H5F</a>&nbsp;&nbsp;
<a href="RM_H5G.html">H5G</a>&nbsp;&nbsp;
<a href="RM_H5I.html">H5I</a>&nbsp;&nbsp;
<a href="RM_H5P.html">H5P</a>&nbsp;&nbsp;
<br>
<a href="RM_H5R.html">H5R</a>&nbsp;&nbsp;
<a href="RM_H5S.html">H5S</a>&nbsp;&nbsp;
<a href="RM_H5T.html">H5T</a>&nbsp;&nbsp;
<a href="RM_H5Z.html">H5Z</a>&nbsp;&nbsp;
<a href="Tools.html">Tools</a>&nbsp;&nbsp;
<a href="PredefDTypes.html">Datatypes</a>&nbsp;&nbsp;
</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.7, the unreleased development branch; working toward HDF5 Release 1.8.0
</address><!-- #EndLibraryItem --><SCRIPT LANGUAGE="JAVASCRIPT">
<!--
document.writeln("Last modified: 12 December 2000");
-->
</SCRIPT>
</body>
</html>