mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-12 15:04:59 +08:00
1d680fe04c
* Fixed warnings and started H5Epublic.h.
* Include H5FD* headers to correctly resolve references.
* Doxygen2 (#330)
* H5Eauto_is_v2.
* Added a few more calls.
* Added a few more H5E calls.
* First cut of H5E v2.
* Added the deprecated v1 calls.
* Updated spacing.
* Once more.
* Taking some inspiration from Eigen3.
* Add doxygen for the assigned functions: H5Pregister1,H5Pinsert1,H5Pen… (#352)
* Add doxygen for the assigned functions: H5Pregister1,H5Pinsert1,H5Pencode1, H5Pget_filter_by_id1,H5Pget_version, H5Pset_file_space,H5Pget_file_space. Someone already adds H5Pget_filter1. Also fixs an extra parameter 'close' call back function for HPregister2.
* doxygen work. fixs format by using clang-format.
* doxgen work for H5Pregister1 etc. Addressed Barbara and Gerd's comments.
For Quincey's comments, since we are not supposed to change the source code.
I leave this to future improvements.
* added documentation for H5P APIs (#350)
* add documenation for H5Pget_buffer,H5Pget_data_transform,H5Pget_edc_check,H5Pget_hyper_vector_size,H5Pget_preserve,H5Pget_type_conv_cb,H5Pget_vlen_mem_manager,H5Pset_btree_ratios
* format corrections
* fixed grammer
* fixed herr_t
* Better name.
* A fresh look.
* add doxygen to H5Ppublic.h
* use attention instead of warning
* Add doxygen comments in H5Ppublic.h (#375)
* Add doxygen comments in H5Ppublic.h
* H5Pset_meta_block_size
* H5Pset_metadata_read_attempts
* H5Pset_multi_type
* H5Pset_object_flush_cb
* H5Pset_sieve_buf_size
* H5Pset_small_data_block_size
* H5Pset_all_coll_metadata_ops
* H5Pget_all_coll_metadata_ops
* Add DOXYGEN_EXAMPLES_DIR to src/CMakeLists.txt
* Fix clang-format errors
* Fix filenames in doxygen/examples
* add doxygen to H5Ppublic.h (#378)
* add doxygen to H5Ppublic.h
* use attention instead of warning
Co-authored-by: Kimmy Mu <kmu@hdfgroup.org>
* Revert "add doxygen to H5Ppublic.h (#378)"
This reverts commit 2ee1821b13
.
* Updated Doxygen variables.
* I forgot to copy two images.
* Enable desktop search by default.
* Add my assigned Doxygen documentation.
* Remove whitespace at EOL. Appease clang-format.
* Addressed Chris' comments.
* Added an alias for asynchronous functions.
* One space is enough for all of us.
* Slightly restructured RM page.
* address some issues
* reformatting
* Style external links.
* reformatting
* reformatting
* Added "Metadata Caching in HDF5" as a technical note example.
* Revise this soon!
* Added specification examples.
* Fixed references.
* Added H5AC cache image stuff and file format study.
* Added older FMT versions. Where did 1.0 go?
* Updated C/C++ note and replaced ambiguous labels.
* Reformat source with clang v10.0.1.
* Added the VFL technical note.
* Added what I believe might be called version 1.0 of the format.
* Added the remaining specs.
* Added H5Z callback documentation and fixed a few mistakes.
* Added dox for deprecated H5G calls and fixed a few snippet blockIDs.
* clang-format happy?
* Ok?
* Bonus track: Deprecated H5D functions.
* Carry over the more detailed group description.
* Added documentation for the missing and deprecated H5R calls.
* Life is easier and less repetitive w/ snippets. Use them!
* Eliminate the snippet block ID artifacts in the HTML rendering.
* Fixed snippet HTML artifacts and added a few missing calls.
* Under 20 H5Ps to go!
* Almost complete!
* "This is a form of pedantry up with which I will not put." (Churchill)
* Let's not waste as much space on bulleted lists!
* First complete (?) draft of the Doxygen-based RM.
* Completeness check and minor fixes along the way.
* Pedantry.
* Adding missing H5FD calls checkpoint.
* Pedantry.
* More pedantry.
* Added H5Pset_fapl_log.
* First draft of H5ES.
* Fixed warnings.
* Prep. for map module.
* First cut of the map module.
* Pedantry.
* Possible H5F introduction.
* Fix the indentation.
* Pedantry.
* Ditto.
* Thanks to the reviewers for their comments.
* Added missing images.
* Line numbers are a distraction here.
* More examples, references, and clean-up. Don't repeat yourself!
* Clang pedantry.
* Ditto.
* More reviewer comments...
* Templatized references and cleaned up \todos.
* Committing clang-format changes
* Fixed MANIFEST.
* Addressed Quincey's comments. (OCPLs)
* Fixed a few more \todo items.
* Fixed more \todo items.
* Added attribute life cycle.
* Forgot the examples file.
* Committing clang-format changes
* Pedantry.
* Live and learn!
* Added a sample H5D life cycle.
* Committing clang-format changes
* Pedantry.
Co-authored-by: kyang2014 <kyang2014@users.noreply.github.com>
Co-authored-by: Scot Breitenfeld <brtnfld@hdfgroup.org>
Co-authored-by: Kimmy Mu <kmu@hdfgroup.org>
Co-authored-by: Christopher Hogan <ChristopherHogan@users.noreply.github.com>
Co-authored-by: jya-kmu <53388330+jya-kmu@users.noreply.github.com>
Co-authored-by: David Young <dyoung@hdfgroup.org>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
194 lines
4.6 KiB
HTML
194 lines
4.6 KiB
HTML
<html>
|
|
<head>
|
|
<title>HDF5 Table Specification</title>
|
|
</head>
|
|
|
|
The HDF5 specification defines the standard objects and storage for the
|
|
standard HDF5 objects. (For information about the HDF5 library, model and
|
|
specification, see the HDF documentation.) This document is an additional
|
|
specification do define a standard profile for how to store tables in HDF5.
|
|
Table data in HDF5 is stored as HDF5 datasets with standard attributes to define
|
|
the properties of the tables.
|
|
|
|
<h2>
|
|
1. Overview</h2>
|
|
A generic table is a sequence of records, each record has a name and a type.
|
|
Table data is stored as an HDF5 one dimensional compound dataset. A table
|
|
is defined as a collection of records whose values are stored in fixed-length
|
|
fields. All records have the same structure and all values in each field have
|
|
the same data type.
|
|
<p>The dataset for a table is distinguished from other datasets by giving
|
|
it an attribute "CLASS=TABLE".
|
|
Optional attributes allow the storage of a title for the Table and for
|
|
each column, and a fill value for each column.
|
|
<h2>
|
|
2. Table Attributes</h2>
|
|
The attributes for the Table are strings. They are written with the <a href="RM_H5LT.html#H5LTset_attribute_string"><code>H5LTset_attribute_string</code></a>
|
|
Lite API function. "Required" attributes must always be used. "Optional" attributes
|
|
must be used when required.
|
|
<br>
|
|
<h4>
|
|
Attributes</h4>
|
|
|
|
<dl>
|
|
<dt>
|
|
Attribute name="<b>CLASS</b>" (Required)</dt>
|
|
|
|
<dd>
|
|
This attribute is type H5T_C_S1, with size 5.</dd>
|
|
|
|
<dd>
|
|
For all Tables, the value of this attribute is "TABLE".</dd>
|
|
|
|
<dd>
|
|
This attribute identifies this data set as intended to be interpreted as Table that conforms to the specifications on this page.</dd>
|
|
</dl>
|
|
|
|
<dl>
|
|
Attribute name="<b>VERSION</b>" (Required)
|
|
|
|
<dd>
|
|
This attribute is of type H5T_C_S1, with size corresponding to the length
|
|
of the version string. This attribute identifies the version number
|
|
of this specification to which it conforms. The current version number
|
|
is "0.2".</dd>
|
|
|
|
</dl>
|
|
|
|
<dl>
|
|
<dt>
|
|
Attribute name="<b>TITLE</b>" (Optional)</dt>
|
|
|
|
<dd>
|
|
The <b>TITLE</b> is an optional String that is to be used as the
|
|
informative title of the whole table.
|
|
The <b>TITLE</b> is set with the parameter <code> table_title</code> of the function
|
|
<a href="RM_H5TB.html#H5TBmake_table"> <code> H5TBmake_table</code></a>. </dd>
|
|
</dl>
|
|
|
|
<dl>
|
|
<dt>
|
|
Attribute name="<b>FIELD_(n)_NAME</b>" (Required)</dt>
|
|
|
|
<dd>
|
|
The <b>FIELD_(n)_NAME</b> is an optional String that is to be used as the
|
|
informative title of column <b>n</b> of the table.
|
|
For each of the fields the word FIELD_ is concatenated with
|
|
the zero based field (n) index together with the name of the field.</dd>
|
|
|
|
</dl>
|
|
<dl>
|
|
<dt>
|
|
Attribute name="<b>FIELD_(n)_FILL</b>" (Optional)</dt>
|
|
|
|
<dd>
|
|
The <b>FIELD_(n)_FILL</b> is an optional String that is the fill value for
|
|
column <b>n</b> of the table.
|
|
For each of the fields the word FIELD_ is concatenated with
|
|
the zero based field (n) index together with the fill value, if present.
|
|
This value is written only when a fill value is defined for the table.</dd>
|
|
|
|
</dl>
|
|
|
|
<dl>
|
|
|
|
<br>
|
|
<center><table BORDER=2 BGCOLOR="#FFFFFF" >
|
|
<caption><b>Table 1. Attributes of an Image Dataset</b></caption>
|
|
|
|
<tr>
|
|
<td><b>Attribute Name</b></td>
|
|
|
|
<td><b>(R = Required</b>
|
|
<br><b>O= Optional)</b></td>
|
|
|
|
<td><b>Type</b></td>
|
|
|
|
<td><b>String Size</b></td>
|
|
|
|
<td><b>Value</b></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>CLASS</td>
|
|
|
|
<td>R</td>
|
|
|
|
<td>String</td>
|
|
|
|
<td>5</td>
|
|
|
|
<td>"TABLE"</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>VERSION</td>
|
|
|
|
<td>R</td>
|
|
|
|
<td>String</td>
|
|
|
|
<td>3</td>
|
|
|
|
<td>"0.2"</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>TITLE</td>
|
|
|
|
<td>O</td>
|
|
|
|
<td>String</td>
|
|
|
|
<td> </td>
|
|
|
|
<td>
|
|
|
|
<tr>
|
|
<td>FIELD_(n)_NAME</td>
|
|
|
|
<td>R</td>
|
|
|
|
<td>String</td>
|
|
|
|
<td> </td>
|
|
|
|
<td>
|
|
|
|
|
|
<tr>
|
|
<td>FIELD_(n)_FILL</td>
|
|
|
|
<td>O*</td>
|
|
|
|
<td>String</td>
|
|
|
|
<td> </td>
|
|
|
|
<td>
|
|
|
|
</table>
|
|
</center>
|
|
|
|
</dl>
|
|
<p>
|
|
<center>
|
|
|
|
</center>
|
|
<i>* </i>The attribute FIELD_(n)_FILL is written to the table if a fill value is
|
|
specified on the creation of the Table. Otherwise, it is not.<p>The following
|
|
section of code shows the calls necessary to the creation of a table.
|
|
|
|
<p><code>/* Create a new HDF5 file using default properties. */<br>
|
|
file_id = H5Fcreate( "my_table.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT );</code> </p>
|
|
|
|
<p><code>/* Call the make table function */<br>
|
|
</code> <code>H5TBmake_table( "Table Title", file_id, "Table1", NFIELDS, NRECORDS, dst_size, <br>
|
|
field_names, dst_offset, field_type, <br>
|
|
chunk_size, fill_data, compress, p_data ) </code> </p>
|
|
|
|
<p><code> /* Close the file. */<br>
|
|
status = H5Fclose( file_id );</code> </p>
|
|
|
|
</body>
|