mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-12-09 07:32:32 +08:00
a6f6462541
File format is not stable, don't keep files produced! Description: First stage of checkins modifying the format of groups to support creation order. Implement "dense" storage for links in groups. Try to clarify some of the symbols for the H5L API. Add the H5Pset_latest_format() flag for FAPLs, to choose to use the newest file format options (including "dense" link storage in groups) Add the H5Pset_track_creation_order() flag for GCPLs, to enable creation order tracking in groups (although no index on creation order yet). Remove --enable-group-revision configure flag, as file format issues are now handled in a backwardly/forwardly compatible way. Clean up lots of compiler warnings and other minor formatting issues. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-v1.6 compa Mac OSX/32 10.4.8 (amazon) AIX 5.3 (copper) w/parallel & FORTRAN
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" DimPerm="0"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="1"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="2"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="3"/>
|
|
<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" DimPerm="0"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="1"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="2"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="3"/>
|
|
<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" DimPerm="0"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="1"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="2"/>
|
|
<hdf5:ArrayDimension DimSize="2" DimPerm="3"/>
|
|
<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>
|