mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-30 15:32:37 +08:00
[svn-r986] Defined <data> and <string> in ddl.html.
Updated the current status of dumper.
This commit is contained in:
parent
82fb21b613
commit
be41a8feed
@ -162,15 +162,23 @@ These tools enable the user to examine HDF5 files interactively.
|
||||
</ul>
|
||||
<li>Data type
|
||||
<ul>
|
||||
<li>scalar type
|
||||
<li>transient type
|
||||
<li>named type
|
||||
<li>unnamed type
|
||||
<li>atomic type
|
||||
<li>compound type
|
||||
<li>string type
|
||||
</ul>
|
||||
<li>Simple data space
|
||||
<li>Soft link
|
||||
<li>Hard link
|
||||
<li>Loop detection
|
||||
</ul>
|
||||
<dd>The to do list includes:
|
||||
<ul>
|
||||
<li>Display data correctly
|
||||
<li>Make h5dump output consistent with DDL
|
||||
<li>Support storage layout
|
||||
<li>Define file boot block
|
||||
</ul>
|
||||
|
||||
<dt><strong>See Also:</strong>
|
||||
<dd>HDF5 Data Description Language syntax
|
||||
(<a href="ddl.html"><cite>DDL for HDF5</cite></a>)
|
||||
|
@ -103,23 +103,54 @@ This section contains a brief explanation of the symbols used in the DDL.
|
||||
|
||||
<root_group> ::= GROUP "/" { <unamed_datatype>* <group_attribute>* <group_member>* }
|
||||
|
||||
<unamed_datatype> ::= DATATYPE "<unamed_type_name>" { <compound_type_def>+ }
|
||||
<unamed_datatype> ::= DATATYPE "<unamed_type_name>" { <compound_type> }
|
||||
|
||||
<unamed_type_name> ::= the assigned name for unamed type is in the form of
|
||||
#oid1:oid2, where oid1 and oid2 are the object ids of the type
|
||||
|
||||
<compound_type_def> ::= <named_scalar_type> | <named_array_type>
|
||||
<compound_type> ::= <member_type_def>+
|
||||
|
||||
<named_scalar_type> ::= <scalar_type> <field_name> ;
|
||||
<member_type_def> ::= <scalar_type_def> | <array_type_def>
|
||||
|
||||
<scalar_type> ::= H5T_STD_I8BE | H5T_STD_I8LE | ...
|
||||
<scalar_type_def> ::= <atomic_type> "<field_name>" ;
|
||||
|
||||
<atomic_type> ::= <integer> | <float> | <time> | <string> | <bitfield> | <opaque>
|
||||
|
||||
<integer> ::= H5T_STD_I8LE | H5T_STD_I16BE | H5T_STD_I16LE | H5T_STD_I32BE |
|
||||
H5T_STD_I32LE | H5T_STD_I64BE | H5T_STD_I64LE | H5T_STD_U8BE |
|
||||
H5T_STD_U8LE | H5T_STD_U16BE | H5T_STD_U16LE | H5T_STD_U32BE |
|
||||
H5T_STD_U32LE | H5T_STD_U64BE | H5T_STD_U64LE | H5T_NATIVE_CHAR |
|
||||
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
|
||||
|
||||
<float> ::= H5T_IEEE_F32BE | H5T_IEEE_F32LE | H5T_IEEE_F64BE | H5T_IEEE_F64LE |
|
||||
H5T_NATIVE_FLOAT | H5T_NATIVE_DOUBLE | H5T_NATIVE_LDOUBLE
|
||||
|
||||
<time> ::= TBD
|
||||
|
||||
<string> ::= { STRSIZE <strsize> ;
|
||||
STRPAD <strpad> ;
|
||||
CSET <cset> ;
|
||||
CTYPE <ctype> ; }
|
||||
|
||||
<strsize> ::= an integer
|
||||
|
||||
<strpad> ::= H5T_STR_NULLTERM | H5T_STR_NULLPAD | H5T_STR_SPACEPAD
|
||||
|
||||
<cset> ::= H5T_CSET_ASCII
|
||||
|
||||
<ctype> ::= H5T_C_S1 | H5T_FORTRAN_S1
|
||||
|
||||
<bitfield> ::= TBD
|
||||
|
||||
<opaque> ::= TBD
|
||||
|
||||
<field_name> ::= <identifier>
|
||||
|
||||
<named_array_type> ::= <scalar_type> <field_name> <dim_sizes> ;
|
||||
<array_type_def> ::= <atomic_type> "<field_name>" <dim_sizes> ;
|
||||
|
||||
<dim_sizes> ::= dimension sizes in the form of [dimsize1][dimzise2]...,
|
||||
where dimsize1, dimsize2 are integers
|
||||
<dim_sizes> ::= [dimsize1][dimzise2]..., where dimsize1, dimsize2 are integers
|
||||
|
||||
<group_attribute> ::= <attribute>
|
||||
|
||||
@ -128,48 +159,68 @@ This section contains a brief explanation of the symbols used in the DDL.
|
||||
<data><FONT SIZE=1.7>opt</FONT> }
|
||||
// <datatype> and <dataspace> must appear before <data>.
|
||||
|
||||
<attr_name> ::= <identifier>
|
||||
<attr_name> ::= <identifier>
|
||||
|
||||
<datatype> ::= DATATYPE { <named_type> } |
|
||||
DATATYPE { "<scalar_type>" } |
|
||||
DATATYPE { <compound_type_def>+ }
|
||||
<datatype> ::= DATATYPE { <atomic_type> } |
|
||||
DATATYPE { <compound_type> }
|
||||
DATATYPE { <named_type> }
|
||||
|
||||
<named_type> ::= <hardlink>
|
||||
<named_type> ::= "<path_name>"
|
||||
|
||||
<hardlink> ::= HARDLINK { "<abs_name>" }
|
||||
<path_name> ::= <identifier>
|
||||
|
||||
<abs_name> ::= object absolute name
|
||||
<dataspace> ::= DATASPACE { SCALAR } |
|
||||
DATASPACE { SIMPLE <current_dims> / <max_dims> } |
|
||||
DATASPACE { COMPLEX <ds_definition>+ }
|
||||
DATASPACE { "<dataspace_name>" } |
|
||||
|
||||
<dataspace> ::= DATASPACE { "<dataspace_name>" } |
|
||||
DATASPACE { ARRAY <current_dims> <max_dims> } |
|
||||
DATASPACE { OTHER <ds_definition>+ }
|
||||
|
||||
<dataspace_name> ::= <identifier>
|
||||
|
||||
<current_dims> ::= a list of integers in the form of (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ),
|
||||
where <i>i<FONT SIZE=1.0>k</i></FONT> is an integer, <i>k</i> = 1,2,...
|
||||
<current_dims> ::= (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ), where <i>i<FONT SIZE=1.0>k</i></FONT> is an integer, <i>k</i> = 1,2,...
|
||||
|
||||
<max_dims> ::= (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ) where <i>i<FONT SIZE=1.0>k</i></FONT> is an integer or H5S_UNLIMITED
|
||||
|
||||
<ds_definition> ::= TBD
|
||||
|
||||
<data> ::= data {TBD}
|
||||
<dataspace_name> ::= <identifier>
|
||||
|
||||
<data> ::= DATA { <scalar_space_data> | <simple_space_data> | <complex_space_data> }
|
||||
|
||||
<scalar_space_data> ::= <atomic_scalar_data> | <compound_scalar_data>
|
||||
|
||||
<atomic_scalar_data> :: = the value of data
|
||||
// A string is enclosed in double quotes.
|
||||
|
||||
<compound_scalar_data> ::= { [ <member_data> ], [ <member_data> ], ... }
|
||||
|
||||
<member_data> ::= <atomic_scalar_data> | <atomic_simple_data>
|
||||
|
||||
<atomic_simple_data> :: = <atomic_element>, <atomic_element>, ...
|
||||
|
||||
<atomic_element> ::= <atomic_scalar_data>
|
||||
|
||||
<simple_space_data> :: = <atomic_simple_data> | <compound_simple_data>
|
||||
|
||||
<compound_simple_data> ::= <compoud_element>, <compound_element>, ...
|
||||
|
||||
<compound_element> ::= <compound_scalar_data>
|
||||
|
||||
<complex_space_data> ::= TBD
|
||||
|
||||
<group_member> ::= <named_datatype> | <named_dataspace> | <group> | <dataset> |
|
||||
<softlink>
|
||||
|
||||
<named_datatype> ::= DATATYPE "<type_name>" { <compound_type_def>+ }
|
||||
<named_datatype> ::= DATATYPE "<type_name>" { <compound_type> }
|
||||
|
||||
<type_name> ::= "<identifier>"
|
||||
<type_name> ::= <identifier>
|
||||
|
||||
<named_dataspace> ::= DATASPACE "<dataspace_name>" { ARRAY <current_dims> <max_dims> } |
|
||||
DATASPACE "<dataspace_name>" { OTHER <ds_definition>+ }
|
||||
<named_dataspace> ::= TBD
|
||||
|
||||
<group> ::= GROUP "<group_name>" { <hardlink> } |
|
||||
GROUP "<group_name>" { <group_attribute>* <group_member>* }
|
||||
|
||||
<group_name> ::= <identifier>
|
||||
|
||||
<hardlink> ::= HARDLINK "<path_name>"
|
||||
|
||||
<dataset> ::= DATASET "<dataset_name>" { <hardlink> } |
|
||||
DATASET "<dataset_name>" { <datatype>
|
||||
<dataspace>
|
||||
|
Loading…
Reference in New Issue
Block a user