Files
hdf5/doc/html/cpplus_RM/H5File_8h-source.html
Frank Baker c17fb6fa1d [svn-r9028]
Purpose:
    Adding C++ Reference Manual to 1.6 release branch.
    This manual is automatically generated
    by doxygen from the C++ source code.
Platforms tested:
    Mozilla, Safari, IE 5
2004-08-05 16:22:19 -05:00

441 lines
20 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 10">
<meta name=Originator content="Microsoft Word 10">
<link rel=File-List href="header_files/filelist.xml">
<link rel=Edit-Time-Data href="header_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>Main Page</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Randy Ribler</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Randy Ribler</o:LastAuthor>
<o:Revision>6</o:Revision>
<o:TotalTime>16</o:TotalTime>
<o:Created>2004-07-23T05:34:00Z</o:Created>
<o:LastSaved>2004-07-23T06:03:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>5</o:Words>
<o:Characters>32</o:Characters>
<o:Company>LC</o:Company>
<o:Lines>1</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>36</o:CharactersWithSpaces>
<o:Version>10.2625</o:Version>
</o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:SpellingState>Clean</w:SpellingState>
<w:GrammarState>Clean</w:GrammarState>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]-->
<link rel=Stylesheet type="text/css" media=all href=doxygen.css>
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
mso-believe-normal-left:yes;}
h1
{mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
text-align:center;
mso-pagination:widow-orphan;
mso-outline-level:1;
font-size:24.0pt;
font-family:"Times New Roman";
font-weight:bold;}
h2
{mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
mso-outline-level:2;
font-size:18.0pt;
font-family:"Times New Roman";
font-weight:bold;}
a:link, span.MsoHyperlink
{color:#252E78;
text-decoration:underline;
text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
{color:#3D2185;
text-decoration:underline;
text-underline:single;}
p
{mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
address
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
font-style:italic;}
pre
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;
font-size:10.0pt;
font-family:"Courier New";
mso-fareast-font-family:"Times New Roman";}
p.formuladsp, li.formuladsp, div.formuladsp
{mso-style-name:formuladsp;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
text-align:center;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.mdtable, li.mdtable, div.mdtable
{mso-style-name:mdtable;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
background:#F4F4FB;
border:none;
mso-border-alt:solid #868686 .75pt;
padding:0in;
mso-padding-alt:0in 0in 0in 0in;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.mdrow, li.mdrow, div.mdrow
{mso-style-name:mdrow;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.mdescleft, li.mdescleft, div.mdescleft
{mso-style-name:mdescleft;
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
background:#FAFAFA;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
font-style:italic;}
p.mdescright, li.mdescright, div.mdescright
{mso-style-name:mdescright;
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
background:#FAFAFA;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
font-style:italic;}
p.memitemleft, li.memitemleft, div.memitemleft
{mso-style-name:memitemleft;
margin:3.0pt;
mso-pagination:widow-orphan;
background:#FAFAFA;
border:none;
mso-border-top-alt:solid #E0E0E0 .75pt;
padding:0in;
mso-padding-alt:1.0pt 0in 0in 0in;
font-size:9.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.memitemright, li.memitemright, div.memitemright
{mso-style-name:memitemright;
margin:3.0pt;
mso-pagination:widow-orphan;
background:#FAFAFA;
border:none;
mso-border-top-alt:solid #E0E0E0 .75pt;
padding:0in;
mso-padding-alt:1.0pt 0in 0in 0in;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.search, li.search, div.search
{mso-style-name:search;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
font-weight:bold;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
table.MsoTableGrid
{mso-style-name:"Table Grid";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
border:solid windowtext 1.0pt;
mso-border-alt:solid windowtext .5pt;
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-border-insideh:.5pt solid windowtext;
mso-border-insidev:.5pt solid windowtext;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";}
</style>
<![endif]--><![if mso 9]>
<style>
p.MsoNormal
{margin-left:15.0pt;}
</style>
<![endif]><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="4098">
<o:colormru v:ext="edit" colors="#060"/>
<o:colormenu v:ext="edit" strokecolor="#060"/>
</o:shapedefaults></xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link="#252E78" vlink="#3D2185" style='tab-interval:
.5in;margin-left:15.0pt;margin-right:15.0pt'>
<div class=Section1>
<p class=MsoNormal style='margin-top:0in;margin-right:15.0pt;margin-bottom:
0in;margin-left:15.0pt;margin-bottom:.0001pt'><!--[if gte vml 1]><v:shapetype
id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" style='position:absolute;
left:0;text-align:left;margin-left:30pt;margin-top:9pt;width:72.75pt;height:57.75pt;
z-index:1'>
<v:imagedata src="header_files/image001.jpg" o:title="NCSAlogo"/>
</v:shape><![endif]--><![if !vml]><span style='mso-ignore:vglayout;position:
absolute;z-index:1;left:0px;margin-left:40px;margin-top:12px;width:97px;
height:77px'><img width=97 height=77 src="header_files/image002.jpg" v:shapes="_x0000_s1026"></span><![endif]><span
style='mso-spacerun:yes'> </span><b style='mso-bidi-font-weight:normal'><span
style='font-size:22.0pt'><o:p></o:p></span></b></p>
<div align=center>
<table class=MsoTableGrid border=1 cellspacing=0 cellpadding=0
style='margin-left:103.45pt;border-collapse:collapse;border:none;mso-border-bottom-alt:
solid #006600 2.25pt;mso-yfti-tbllook:480;mso-padding-alt:0in 5.4pt 0in 5.4pt'>
<tr style='mso-yfti-irow:0;mso-yfti-lastrow:yes;height:29.25pt'>
<td width=443 valign=top style='width:332.6pt;border:none;border-bottom:solid #006600 2.25pt;
padding:0in 5.4pt 0in 5.4pt;height:29.25pt'>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span
style='font-size:22.0pt'>HDF5 C++ API Reference Manual</span></b></p>
</td>
</tr>
</table>
</div>
<p class=MsoNormal><o:p>&nbsp;</o:p></p>
<p class=MsoNormal><o:p>&nbsp;</o:p></p>
<p class=MsoNormal><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>
<!-- Generated by Doxygen 1.3.7-20040718 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="examples.html">Examples</a></div>
<h1>H5File.h</h1><a href="H5File_8h.html">Go to the documentation of this file.</a><pre class="fragment"><div>00001 <span class="comment">// C++ informative line for the emacs editor: -*- C++ -*-</span>
00002 <span class="comment">/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *</span>
00003 <span class="comment"> * Copyright by the Board of Trustees of the University of Illinois. *</span>
00004 <span class="comment"> * All rights reserved. *</span>
00005 <span class="comment"> * *</span>
00006 <span class="comment"> * This file is part of HDF5. The full HDF5 copyright notice, including *</span>
00007 <span class="comment"> * terms governing use, modification, and redistribution, is contained in *</span>
00008 <span class="comment"> * the files COPYING and Copyright.html. COPYING can be found at the root *</span>
00009 <span class="comment"> * of the source code distribution tree; Copyright.html can be found at the *</span>
00010 <span class="comment"> * root level of an installed copy of the electronic HDF5 document set and *</span>
00011 <span class="comment"> * is linked from the top-level documents page. It can also be found at *</span>
00012 <span class="comment"> * http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *</span>
00013 <span class="comment"> * access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *</span>
00014 <span class="comment"> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */</span>
00015
00016 <span class="preprocessor">#ifndef _H5File_H</span>
00017 <span class="preprocessor"></span><span class="preprocessor">#define _H5File_H</span>
00018 <span class="preprocessor"></span>
00019 <span class="preprocessor">#ifndef H5_NO_NAMESPACE</span>
00020 <span class="preprocessor"></span><span class="keyword">namespace </span>H5 {
00021 <span class="preprocessor">#endif</span>
00022 <span class="preprocessor"></span>
<a name="l00023"></a><a class="code" href="classH5_1_1H5File.html">00023</a> <span class="keyword">class </span>H5_DLLCPP H5File : <span class="keyword">public</span> <a class="code" href="classH5_1_1IdComponent.html">IdComponent</a>, <span class="keyword">public</span> <a class="code" href="classH5_1_1CommonFG.html">CommonFG</a> {
00024 <span class="keyword">public</span>:
00025 <span class="comment">// Creates or opens an HDF5 file.</span>
00026 H5File( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags,
00027 <span class="keyword">const</span> <a class="code" href="classH5_1_1FileCreatPropList.html">FileCreatPropList</a>&amp; create_plist = FileCreatPropList::DEFAULT,
00028 <span class="keyword">const</span> <a class="code" href="classH5_1_1FileAccPropList.html">FileAccPropList</a>&amp; access_plist = FileAccPropList::DEFAULT );
00029 H5File( <span class="keyword">const</span> string&amp; name, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags,
00030 <span class="keyword">const</span> <a class="code" href="classH5_1_1FileCreatPropList.html">FileCreatPropList</a>&amp; create_plist = FileCreatPropList::DEFAULT,
00031 <span class="keyword">const</span> <a class="code" href="classH5_1_1FileAccPropList.html">FileAccPropList</a>&amp; access_plist = FileAccPropList::DEFAULT );
00032
00033 <span class="comment">// Gets the access property list of this file.</span>
00034 <a class="code" href="classH5_1_1FileAccPropList.html">FileAccPropList</a> getAccessPlist() <span class="keyword">const</span>;
00035
00036 <span class="comment">// Gets the creation property list of this file.</span>
00037 <a class="code" href="classH5_1_1FileCreatPropList.html">FileCreatPropList</a> getCreatePlist() <span class="keyword">const</span>;
00038
00039 <span class="comment">// Gets the name of this file.</span>
00040 string getFileName() <span class="keyword">const</span>;
00041
00042 <span class="comment">// Retrieves the file size of an opened file.</span>
00043 hsize_t getFileSize() <span class="keyword">const</span>;
00044
00045 <span class="comment">// Returns the amount of free space in the file.</span>
00046 hssize_t getFreeSpace() <span class="keyword">const</span>;
00047
00048 <span class="comment">// Returns the number of opened object IDs (files, datasets, groups </span>
00049 <span class="comment">// and datatypes) in the same file.</span>
00050 <span class="keywordtype">int</span> getObjCount(<span class="keywordtype">unsigned</span> types) <span class="keyword">const</span>;
00051 <span class="keywordtype">int</span> getObjCount() <span class="keyword">const</span>;
00052
00053 <span class="comment">// Retrieves a list of opened object IDs (files, datasets, groups </span>
00054 <span class="comment">// and datatypes) in the same file.</span>
00055 <span class="keywordtype">void</span> getObjIDs(<span class="keywordtype">unsigned</span> types, <span class="keywordtype">int</span> max_objs, hid_t *oid_list) <span class="keyword">const</span>;
00056
00057 <span class="comment">// Retrieves the type of object that an object reference points to.</span>
00058 H5G_obj_t getObjType(<span class="keywordtype">void</span> *ref, H5R_type_t ref_type) <span class="keyword">const</span>;
00059
00060 <span class="comment">// Retrieves a dataspace with the region pointed to selected.</span>
00061 <a class="code" href="classH5_1_1DataSpace.html">DataSpace</a> getRegion(<span class="keywordtype">void</span> *ref, H5R_type_t ref_type = H5R_DATASET_REGION) <span class="keyword">const</span>;
00062
00063 <span class="comment">// Returns the pointer to the file handle of the low-level file driver.</span>
00064 <span class="keywordtype">void</span> getVFDHandle(<a class="code" href="classH5_1_1FileAccPropList.html">FileAccPropList</a>&amp; fapl, <span class="keywordtype">void</span> **file_handle) <span class="keyword">const</span>;
00065 <span class="keywordtype">void</span> getVFDHandle(<span class="keywordtype">void</span> **file_handle) <span class="keyword">const</span>;
00066
00067 <span class="comment">// Determines if a file, specified by its name, is in HDF5 format</span>
00068 <span class="keyword">static</span> <span class="keywordtype">bool</span> isHdf5(<span class="keyword">const</span> <span class="keywordtype">char</span>* name );
00069 <span class="keyword">static</span> <span class="keywordtype">bool</span> isHdf5(<span class="keyword">const</span> string&amp; name );
00070
00071 <span class="comment">// Reopens this file.</span>
00072 <span class="keywordtype">void</span> reOpen(); <span class="comment">// added for better name</span>
00073 <span class="keywordtype">void</span> reopen();
00074
00075 <span class="comment">// Creates a reference to a named Hdf5 object or to a dataset region </span>
00076 <span class="comment">// in this object.</span>
00077 <span class="keywordtype">void</span>* Reference(<span class="keyword">const</span> <span class="keywordtype">char</span>* name, <a class="code" href="classH5_1_1DataSpace.html">DataSpace</a>&amp; dataspace, H5R_type_t ref_type = H5R_DATASET_REGION) <span class="keyword">const</span>;
00078
00079 <span class="comment">// Creates a reference to a named Hdf5 object in this object.</span>
00080 <span class="keywordtype">void</span>* Reference(<span class="keyword">const</span> <span class="keywordtype">char</span>* name) <span class="keyword">const</span>;
00081
00082 <span class="comment">// Throw file exception.</span>
00083 <span class="keyword">virtual</span> <span class="keywordtype">void</span> throwException(<span class="keyword">const</span> string func_name, <span class="keyword">const</span> string msg) <span class="keyword">const</span>;
00084
00085 <span class="comment">// Gets the file id</span>
00086 <span class="keyword">virtual</span> hid_t getLocId() <span class="keyword">const</span>;
00087
00088 <span class="comment">// Default constructor</span>
00089 H5File();
00090
00091 <span class="comment">// Copy constructor: makes a copy of the original H5File object.</span>
00092 H5File(<span class="keyword">const</span> H5File&amp; original);
00093
00094 <span class="preprocessor">#ifndef DOXYGEN_SHOULD_SKIP_THIS</span>
00095 <span class="preprocessor"></span> <span class="comment">// Used by the API to appropriately close a file.</span>
00096 <span class="keywordtype">void</span> p_close() <span class="keyword">const</span>;
00097 <span class="preprocessor">#endif // DOXYGEN_SHOULD_SKIP_THIS</span>
00098 <span class="preprocessor"></span>
00099 <span class="comment">// H5File destructor.</span>
00100 <span class="keyword">virtual</span> ~H5File();
00101
00102 <span class="keyword">private</span>:
00103 <span class="comment">// This function is private and contains common code between the</span>
00104 <span class="comment">// constructors taking a string or a char*</span>
00105 <span class="keywordtype">void</span> p_get_file( <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags, <span class="keyword">const</span> <a class="code" href="classH5_1_1FileCreatPropList.html">FileCreatPropList</a>&amp; create_plist, <span class="keyword">const</span> <a class="code" href="classH5_1_1FileAccPropList.html">FileAccPropList</a>&amp; access_plist );
00106
00107 };
00108 <span class="preprocessor">#ifndef H5_NO_NAMESPACE</span>
00109 <span class="preprocessor"></span>}
00110 <span class="preprocessor">#endif</span>
00111 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
</div></pre><hr size="1"><address style="align: right;"><small>Generated on Thu Aug 5 00:22:37 2004 by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 ></a> 1.3.7-20040718 </small></address>
</body>
</html>