mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-03 02:32:04 +08:00
14dcb6db33
Add "use the latest format" support for dataspace object header encode/ decode routines and clean up format a bit for the latest format (new to 1.8.x releases) Remove storing 'perm' parameter for array datatypes in memory and the file, and add test to make certain that if any user applications are attempting to store them, we get some reports back. (Should be unlikely, since the RefMan says that the parameter is not implemented and is unsupported). Carry those changes into the tests, etc. Clean up a bunch more compiler warnings. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-1.6-compat
369 lines
15 KiB
XML
369 lines
15 KiB
XML
#############################
|
|
Expected output for 'h5dump --xml tmany.h5'
|
|
#############################
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<hdf5:HDF5-File xmlns:hdf5="http://hdf.ncsa.uiuc.edu/DTDs/HDF5-File" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://hdf.ncsa.uiuc.edu/DTDs/HDF5File http://hdf.ncsa.uiuc.edu/DTDs/HDF5-File.xsd">
|
|
<hdf5:RootGroup OBJ-XID="xid_96" H5Path="/">
|
|
<hdf5:Group Name="g1" OBJ-XID="xid_808" H5Path="/g1" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:Group Name="g1.1" OBJ-XID="xid_1848" H5Path="/g1/g1.1" Parents="xid_808" H5ParentPaths="/g1" >
|
|
<hdf5:Dataset Name="dset1" OBJ-XID="xid_2888" H5Path= "/g1/g1.1/dset1" Parents="xid_1848" H5ParentPaths="/g1/g1.1">
|
|
<hdf5:StorageLayout>
|
|
<hdf5:ChunkedLayout Ndims="1">
|
|
<hdf5:ChunkDimension DimSize="2" />
|
|
<hdf5:RequiredFilter>
|
|
</hdf5:RequiredFilter>
|
|
</hdf5:ChunkedLayout>
|
|
</hdf5:StorageLayout>
|
|
<hdf5:FillValueInfo FillTime="FillIfSet" AllocationTime="Incremental">
|
|
<hdf5:FillValue>
|
|
<hdf5:NoFill/>
|
|
</hdf5:FillValue>
|
|
</hdf5:FillValueInfo>
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="1">
|
|
<hdf5:Dimension DimSize="6" MaxDimSize="UNLIMITED"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:CompoundType>
|
|
<hdf5:Field FieldName="a_array">
|
|
<hdf5:DataType>
|
|
<hdf5:ArrayType Ndims="4">
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:IntegerType ByteOrder="BE" Sign="true" Size="4" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
</hdf5:ArrayType>
|
|
</hdf5:DataType>
|
|
</hdf5:Field>
|
|
<hdf5:Field FieldName="b_array">
|
|
<hdf5:DataType>
|
|
<hdf5:ArrayType Ndims="4">
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:FloatType ByteOrder="BE" Size="8" SignBitLocation="63" ExponentBits="11" ExponentLocation="52" MantissaBits="52" MantissaLocation="0" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
</hdf5:ArrayType>
|
|
</hdf5:DataType>
|
|
</hdf5:Field>
|
|
<hdf5:Field FieldName="c_array">
|
|
<hdf5:DataType>
|
|
<hdf5:ArrayType Ndims="4">
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:ArrayDimension DimSize="2"/>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:FloatType ByteOrder="BE" Size="8" SignBitLocation="63" ExponentBits="11" ExponentLocation="52" MantissaBits="52" MantissaLocation="0" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
</hdf5:ArrayType>
|
|
</hdf5:DataType>
|
|
</hdf5:Field>
|
|
</hdf5:CompoundType>
|
|
</hdf5:DataType>
|
|
<hdf5:Attribute Name="attr1">
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="1">
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:IntegerType ByteOrder="BE" Sign="true" Size="1" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
97 98 99 100 101 102 103 104 105 0
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Attribute>
|
|
<hdf5:Attribute Name="attr2">
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="2">
|
|
<hdf5:Dimension DimSize="2" MaxDimSize="2"/>
|
|
<hdf5:Dimension DimSize="2" MaxDimSize="2"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:IntegerType ByteOrder="BE" Sign="true" Size="4" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
0 1
|
|
2 3
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Attribute>
|
|
<hdf5:Attribute Name="attr3">
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="1">
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:FloatType ByteOrder="BE" Size="8" SignBitLocation="63" ExponentBits="11" ExponentLocation="52" MantissaBits="52" MantissaLocation="0" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Attribute>
|
|
<!-- Note: format of compound data not specified -->
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1 0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1
|
|
0 1 6 7
|
|
6 7
|
|
6 7
|
|
6 7
|
|
6 7
|
|
6 7
|
|
6 7
|
|
6 7
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2 1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2
|
|
1 2 7 8
|
|
7 8
|
|
7 8
|
|
7 8
|
|
7 8
|
|
7 8
|
|
7 8
|
|
7 8
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3 2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3
|
|
2 3 8 9
|
|
8 9
|
|
8 9
|
|
8 9
|
|
8 9
|
|
8 9
|
|
8 9
|
|
8 9
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4 3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4
|
|
3 4 9 10
|
|
9 10
|
|
9 10
|
|
9 10
|
|
9 10
|
|
9 10
|
|
9 10
|
|
9 10
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5 4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5
|
|
4 5 10 11
|
|
10 11
|
|
10 11
|
|
10 11
|
|
10 11
|
|
10 11
|
|
10 11
|
|
10 11
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6 5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6
|
|
5 6 11 12
|
|
11 12
|
|
11 12
|
|
11 12
|
|
11 12
|
|
11 12
|
|
11 12
|
|
11 12
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Dataset>
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g1.2" OBJ-XID="xid_6088" H5Path="/g1/g1.2" Parents="xid_808" H5ParentPaths="/g1" >
|
|
<hdf5:Dataset Name="link1" OBJ-XID="xid_2888-1" H5Path="/g1/g1.2/link1" Parents="xid_6088" H5ParentPaths="/g1/g1.2">
|
|
<hdf5:DatasetPtr OBJ-XID="xid_2888" H5Path="/g1/g1.2/link1"/>
|
|
</hdf5:Dataset>
|
|
</hdf5:Group>
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g2" OBJ-XID="xid_9184" H5Path="/g2" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:SoftLink LinkName="slink2" OBJ-XID="xid_808" H5SourcePath="/g2/slink2" TargetPath="/g1" TargetObj="xid_808" Parents="xid_9184" H5ParentPaths="/g2" />
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g3" OBJ-XID="xid_10224" H5Path="/g3" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:Dataset Name="link3" OBJ-XID="xid_11648" H5Path= "/g3/link3" Parents="xid_10224" H5ParentPaths="/g3">
|
|
<hdf5:StorageLayout>
|
|
<hdf5:ContiguousLayout/>
|
|
</hdf5:StorageLayout>
|
|
<hdf5:FillValueInfo FillTime="FillIfSet" AllocationTime="Late">
|
|
<hdf5:FillValue>
|
|
<hdf5:NoFill/>
|
|
</hdf5:FillValue>
|
|
</hdf5:FillValueInfo>
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="2">
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:IntegerType ByteOrder="BE" Sign="true" Size="4" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
0 1 2 3 4 5 6 7 8 9
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Dataset>
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g4" OBJ-XID="xid_10936" H5Path="/g4" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:Dataset Name="dset2" OBJ-XID="xid_11648-2" H5Path="/g4/dset2" Parents="xid_10936" H5ParentPaths="/g4">
|
|
<hdf5:DatasetPtr OBJ-XID="xid_11648" H5Path="/g4/dset2"/>
|
|
</hdf5:Dataset>
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g5" OBJ-XID="xid_8512" H5Path="/g5" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:SoftLink LinkName="slink4" OBJ-XID="xid_15992" H5SourcePath="/g5/slink4" TargetPath="/g6/dset3" TargetObj="xid_15992" Parents="xid_8512" H5ParentPaths="/g5" />
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g6" OBJ-XID="xid_8560" H5Path="/g6" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:Dataset Name="dset3" OBJ-XID="xid_15992" H5Path= "/g6/dset3" Parents="xid_8560" H5ParentPaths="/g6">
|
|
<hdf5:StorageLayout>
|
|
<hdf5:ContiguousLayout/>
|
|
</hdf5:StorageLayout>
|
|
<hdf5:FillValueInfo FillTime="FillIfSet" AllocationTime="Late">
|
|
<hdf5:FillValue>
|
|
<hdf5:NoFill/>
|
|
</hdf5:FillValue>
|
|
</hdf5:FillValueInfo>
|
|
<hdf5:Dataspace>
|
|
<hdf5:SimpleDataspace Ndims="2">
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
<hdf5:Dimension DimSize="10" MaxDimSize="10"/>
|
|
</hdf5:SimpleDataspace>
|
|
</hdf5:Dataspace>
|
|
<hdf5:DataType>
|
|
<hdf5:AtomicType>
|
|
<hdf5:IntegerType ByteOrder="BE" Sign="true" Size="4" />
|
|
</hdf5:AtomicType>
|
|
</hdf5:DataType>
|
|
<hdf5:Data>
|
|
<hdf5:DataFromFile>
|
|
0 0 0 0 0 0 0 0 0 0
|
|
1 1 1 1 1 1 1 1 1 1
|
|
2 2 2 2 2 2 2 2 2 2
|
|
3 3 3 3 3 3 3 3 3 3
|
|
4 4 4 4 4 4 4 4 4 4
|
|
5 5 5 5 5 5 5 5 5 5
|
|
6 6 6 6 6 6 6 6 6 6
|
|
7 7 7 7 7 7 7 7 7 7
|
|
8 8 8 8 8 8 8 8 8 8
|
|
9 9 9 9 9 9 9 9 9 9
|
|
</hdf5:DataFromFile>
|
|
</hdf5:Data>
|
|
</hdf5:Dataset>
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g7" OBJ-XID="xid_16920" H5Path="/g7" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:SoftLink LinkName="slink5" OBJ-XID="xid_18446744073709551614" H5SourcePath="/g7/slink5" TargetPath="/g8/elink" Parents="xid_16920" H5ParentPaths="/g7" />
|
|
<hdf5:SoftLink LinkName="slink6" OBJ-XID="xid_18446744073709551613" H5SourcePath="/g7/slink6" TargetPath="/g8/udlink" Parents="xid_16920" H5ParentPaths="/g7" />
|
|
</hdf5:Group>
|
|
<hdf5:Group Name="g8" OBJ-XID="xid_17632" H5Path="/g8" Parents="xid_96" H5ParentPaths="/" >
|
|
<hdf5:ExternalLink LinkName="elink" OBJ-XID="xid_18446744073709551612" H5SourcePath="/g8/elink" TargetFilename="somefile" TargetPath="somepath" Parents="xid_17632" H5ParentPaths="/g8" />
|
|
<hdf5:UserDefined LinkName="udlink" OBJ-XID="xid_18446744073709551611" H5SourcePath="/g8/udlink" LinkClass="187" Parents="xid_17632" H5ParentPaths="/g8" />
|
|
</hdf5:Group>
|
|
</hdf5:RootGroup>
|
|
</hdf5:HDF5-File>
|