From be41a8feed17662435ef603844aba2bbf721e13b Mon Sep 17 00:00:00 2001 From: Ruey-Hsia Li Date: Mon, 21 Dec 1998 17:54:16 -0500 Subject: [svn-r986] Defined and in ddl.html. Updated the current status of dumper. --- doc/html/Tools.html | 16 ++++++-- doc/html/ddl.html | 103 +++++++++++++++++++++++++++++++++++++++------------- 2 files changed, 89 insertions(+), 30 deletions(-) diff --git a/doc/html/Tools.html b/doc/html/Tools.html index b850862..192815a 100644 --- a/doc/html/Tools.html +++ b/doc/html/Tools.html @@ -162,15 +162,23 @@ These tools enable the user to examine HDF5 files interactively.
  • Data type
      -
    • scalar type -
    • transient type -
    • named type -
    • unnamed type +
    • atomic type +
    • compound type +
    • string type
  • Simple data space
  • Soft link
  • Hard link +
  • Loop detection +
    The to do list includes: +
      +
    • Display data correctly +
    • Make h5dump output consistent with DDL +
    • Support storage layout +
    • Define file boot block +
    +
    See Also:
    HDF5 Data Description Language syntax (DDL for HDF5) diff --git a/doc/html/ddl.html b/doc/html/ddl.html index 8405c77..0c57ef2 100644 --- a/doc/html/ddl.html +++ b/doc/html/ddl.html @@ -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>opt } // <datatype> and <dataspace> must appear before <data>. -<attr_name> ::= <identifier> +<attr_name> ::= <identifier> + +<datatype> ::= DATATYPE { <atomic_type> } | + DATATYPE { <compound_type> } + DATATYPE { <named_type> } -<datatype> ::= DATATYPE { <named_type> } | - DATATYPE { "<scalar_type>" } | - DATATYPE { <compound_type_def>+ } +<named_type> ::= "<path_name>" -<named_type> ::= <hardlink> +<path_name> ::= <identifier> -<hardlink> ::= HARDLINK { "<abs_name>" } +<dataspace> ::= DATASPACE { SCALAR } | + DATASPACE { SIMPLE <current_dims> / <max_dims> } | + DATASPACE { COMPLEX <ds_definition>+ } + DATASPACE { "<dataspace_name>" } | -<abs_name> ::= object absolute name +<current_dims> ::= (i1, i2, ... ), where ik is an integer, k = 1,2,... -<dataspace> ::= DATASPACE { "<dataspace_name>" } | - DATASPACE { ARRAY <current_dims> <max_dims> } | - DATASPACE { OTHER <ds_definition>+ } +<max_dims> ::= (i1, i2, ... ) where ik is an integer or H5S_UNLIMITED + +<ds_definition> ::= TBD <dataspace_name> ::= <identifier> -<current_dims> ::= a list of integers in the form of (i1, i2, ... ), - where ik is an integer, k = 1,2,... +<data> ::= DATA { <scalar_space_data> | <simple_space_data> | <complex_space_data> } + +<scalar_space_data> ::= <atomic_scalar_data> | <compound_scalar_data> -<max_dims> ::= (i1, i2, ... ) where ik is an integer or H5S_UNLIMITED +<atomic_scalar_data> :: = the value of data +// A string is enclosed in double quotes. -<ds_definition> ::= TBD +<compound_scalar_data> ::= { [ <member_data> ], [ <member_data> ], ... } + +<member_data> ::= <atomic_scalar_data> | <atomic_simple_data> -<data> ::= data {TBD} +<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> -- cgit v0.12