mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-09-25 04:09:44 +03:00
Merge examples and workflows from develop (#3918)
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
groups:
|
||||
github-actions:
|
||||
patterns:
|
||||
- "*"
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
if: "!contains(github.event.head_commit.message, 'skip-ci')"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- name: Run clang-format style check for C and Java code
|
||||
uses: DoozyX/clang-format-lint-action@v0.13
|
||||
with:
|
||||
|
||||
@@ -21,9 +21,9 @@ jobs:
|
||||
permissions:
|
||||
contents: write # In order to allow EndBug/add-and-commit to commit changes
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
- name: Fix C and Java formatting issues detected by clang-format
|
||||
uses: DoozyX/clang-format-lint-action@v0.13
|
||||
uses: DoozyX/clang-format-lint-action@9ea72631b74e61ce337d0839a90e76180e997283 # v0.13
|
||||
with:
|
||||
source: '.'
|
||||
extensions: 'c,h,cpp,hpp,java'
|
||||
@@ -31,7 +31,7 @@ jobs:
|
||||
inplace: True
|
||||
style: file
|
||||
exclude: './config ./hl/src/H5LTanalyze.c ./hl/src/H5LTparse.c ./hl/src/H5LTparse.h ./src/H5Epubgen.h ./src/H5Einit.h ./src/H5Eterm.h ./src/H5Edefin.h ./src/H5version.h ./src/H5overflow.h'
|
||||
- uses: EndBug/add-and-commit@v9
|
||||
- uses: EndBug/add-and-commit@1bad3abcf0d6ec49a5857d124b0bfb52dc7bb081 # v9.1.3
|
||||
with:
|
||||
author_name: github-actions
|
||||
author_email: 41898282+github-actions[bot]@users.noreply.github.com
|
||||
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
run: choco install ninja
|
||||
|
||||
- name: Enable Developer Command Prompt
|
||||
uses: ilammy/msvc-dev-cmd@v1.12.1
|
||||
uses: ilammy/msvc-dev-cmd@v1.13.0
|
||||
|
||||
- name: Set file base name (Windows)
|
||||
id: set-file-base
|
||||
@@ -36,7 +36,7 @@ jobs:
|
||||
|
||||
# Get files created by release script
|
||||
- name: Get zip-tarball (Windows)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: zip-tarball
|
||||
path: ${{ github.workspace }}
|
||||
@@ -72,7 +72,7 @@ jobs:
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/hdfsrc/README.md -Destination ${{ runner.workspace }}/build114/hdf5/
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/build114/ci-StdShar-MSVC/* -Destination ${{ runner.workspace }}/build114/hdf5/ -Include *.zip
|
||||
cd "${{ runner.workspace }}/build114"
|
||||
7z a -tzip ${{ steps.set-file-base.outputs.FILE_BASE }}-win_vs2022.zip hdf5
|
||||
7z a -tzip ${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip hdf5
|
||||
shell: pwsh
|
||||
|
||||
- name: List files in the space (Windows)
|
||||
@@ -85,8 +85,8 @@ jobs:
|
||||
- name: Save published binary (Windows)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: zip-vs2022-binary
|
||||
path: ${{ runner.workspace }}/build114/${{ steps.set-file-base.outputs.FILE_BASE }}-win_vs2022.zip
|
||||
name: zip-vs2022_cl-binary
|
||||
path: ${{ runner.workspace }}/build114/${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
build_and_test_linux:
|
||||
@@ -106,7 +106,7 @@ jobs:
|
||||
|
||||
# Get files created by release script
|
||||
- name: Get tgz-tarball (Linux)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: tgz-tarball
|
||||
path: ${{ github.workspace }}
|
||||
@@ -135,7 +135,7 @@ jobs:
|
||||
cp ${{ runner.workspace }}/hdf5/hdfsrc/README.md ${{ runner.workspace }}/build114/hdf5
|
||||
cp ${{ runner.workspace }}/hdf5/build114/ci-StdShar-GNUC/*.tar.gz ${{ runner.workspace }}/build114/hdf5
|
||||
cd "${{ runner.workspace }}/build114"
|
||||
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz hdf5
|
||||
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz hdf5
|
||||
shell: bash
|
||||
|
||||
- name: List files in the space (Linux)
|
||||
@@ -147,8 +147,8 @@ jobs:
|
||||
- name: Save published binary (Linux)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: tgz-ubuntu-2204-binary
|
||||
path: ${{ runner.workspace }}/build114/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz
|
||||
name: tgz-ubuntu-2204_gcc-binary
|
||||
path: ${{ runner.workspace }}/build114/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
# Save doxygen files created by ctest script
|
||||
@@ -176,7 +176,7 @@ jobs:
|
||||
|
||||
# Get files created by release script
|
||||
- name: Get tgz-tarball (MacOS)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: tgz-tarball
|
||||
path: ${{ github.workspace }}
|
||||
@@ -227,6 +227,164 @@ jobs:
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: tgz-osx12-binary
|
||||
path: ${{ runner.workspace }}/build114/${{ steps.set-file-base.outputs.FILE_BASE }}-osx12.tar.gz
|
||||
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-osx12.tar.gz
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
####### intel builds
|
||||
build_and_test_win_intel:
|
||||
# Windows w/ OneAPI + CMake
|
||||
#
|
||||
name: "Windows Intel CTest"
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Install Dependencies (Windows_intel)
|
||||
run: choco install ninja
|
||||
|
||||
- name: add oneAPI to env
|
||||
uses: fortran-lang/setup-fortran@v1
|
||||
id: setup-fortran
|
||||
with:
|
||||
compiler: intel
|
||||
version: '2023.2'
|
||||
|
||||
- name: Enable Developer Command Prompt
|
||||
uses: ilammy/msvc-dev-cmd@v1.13.0
|
||||
|
||||
- name: Set file base name (Windows_intel)
|
||||
id: set-file-base
|
||||
run: |
|
||||
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}")
|
||||
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT
|
||||
shell: bash
|
||||
|
||||
# Get files created by release script
|
||||
- name: Get zip-tarball (Windows_intel)
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: zip-tarball
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: using powershell
|
||||
shell: pwsh
|
||||
run: Get-Location
|
||||
|
||||
- name: List files for the space (Windows_intel)
|
||||
run: |
|
||||
Get-ChildItem -Path ${{ github.workspace }}
|
||||
Get-ChildItem -Path ${{ runner.workspace }}
|
||||
shell: pwsh
|
||||
|
||||
- name: Uncompress source (Windows_intel)
|
||||
working-directory: ${{ github.workspace }}
|
||||
run: 7z x ${{ steps.set-file-base.outputs.FILE_BASE }}.zip
|
||||
shell: bash
|
||||
|
||||
- name: Run ctest (Windows_intel) with oneapi
|
||||
env:
|
||||
FC: ${{ steps.setup-fortran.outputs.fc }}
|
||||
CC: ${{ steps.setup-fortran.outputs.cc }}
|
||||
CXX: ${{ steps.setup-fortran.outputs.cxx }}
|
||||
run: |
|
||||
cd "${{ runner.workspace }}/hdf5/hdfsrc"
|
||||
cmake --workflow --preset=ci-StdShar-Intel --fresh
|
||||
shell: pwsh
|
||||
|
||||
- name: Publish binary (Windows_intel)
|
||||
id: publish-ctest-binary
|
||||
run: |
|
||||
mkdir "${{ runner.workspace }}/build"
|
||||
mkdir "${{ runner.workspace }}/build/hdf5"
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/hdfsrc/COPYING -Destination ${{ runner.workspace }}/build/hdf5/
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/hdfsrc/COPYING_LBNL_HDF5 -Destination ${{ runner.workspace }}/build/hdf5/
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/hdfsrc/README.md -Destination ${{ runner.workspace }}/build/hdf5/
|
||||
Copy-Item -Path ${{ runner.workspace }}/hdf5/build/ci-StdShar-Intel/* -Destination ${{ runner.workspace }}/build/hdf5/ -Include *.zip
|
||||
cd "${{ runner.workspace }}/build"
|
||||
7z a -tzip ${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_intel.zip hdf5
|
||||
shell: pwsh
|
||||
|
||||
- name: List files in the space (Windows_intel)
|
||||
run: |
|
||||
Get-ChildItem -Path ${{ github.workspace }}
|
||||
Get-ChildItem -Path ${{ runner.workspace }}
|
||||
shell: pwsh
|
||||
|
||||
# Save files created by ctest script
|
||||
- name: Save published binary (Windows_intel)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: zip-vs2022_intel-binary
|
||||
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-win-vs2022_intel.zip
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
build_and_test_linux_intel:
|
||||
# Linux (Ubuntu) w/ OneAPI + CMake
|
||||
#
|
||||
name: "Ubuntu Intel CMake"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install CMake Dependencies (Linux_intel)
|
||||
run: sudo apt-get install ninja-build doxygen graphviz
|
||||
|
||||
- name: add oneAPI to env
|
||||
uses: fortran-lang/setup-fortran@v1
|
||||
id: setup-fortran
|
||||
with:
|
||||
compiler: intel
|
||||
version: '2023.2'
|
||||
|
||||
- name: Set file base name (Linux_intel)
|
||||
id: set-file-base
|
||||
run: |
|
||||
FILE_NAME_BASE=$(echo "${{ inputs.file_base }}")
|
||||
echo "FILE_BASE=$FILE_NAME_BASE" >> $GITHUB_OUTPUT
|
||||
|
||||
# Get files created by release script
|
||||
- name: Get tgz-tarball (Linux_intel)
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: tgz-tarball
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: List files for the space (Linux_intel)
|
||||
run: |
|
||||
ls -l ${{ github.workspace }}
|
||||
ls ${{ runner.workspace }}
|
||||
|
||||
- name: Uncompress source (Linux_intel)
|
||||
run: tar -zxvf ${{ github.workspace }}/${{ steps.set-file-base.outputs.FILE_BASE }}.tar.gz
|
||||
|
||||
- name: Run ctest (Linux_intel)
|
||||
env:
|
||||
FC: ${{ steps.setup-fortran.outputs.fc }}
|
||||
CC: ${{ steps.setup-fortran.outputs.cc }}
|
||||
CXX: ${{ steps.setup-fortran.outputs.cxx }}
|
||||
run: |
|
||||
cd "${{ runner.workspace }}/hdf5/hdfsrc"
|
||||
cmake --workflow --preset=ci-StdShar-Intel --fresh
|
||||
shell: bash
|
||||
|
||||
- name: Publish binary (Linux_intel)
|
||||
id: publish-ctest-binary
|
||||
run: |
|
||||
mkdir "${{ runner.workspace }}/build"
|
||||
mkdir "${{ runner.workspace }}/build/hdf5"
|
||||
cp ${{ runner.workspace }}/hdf5/hdfsrc/COPYING ${{ runner.workspace }}/build/hdf5
|
||||
cp ${{ runner.workspace }}/hdf5/hdfsrc/COPYING_LBNL_HDF5 ${{ runner.workspace }}/build/hdf5
|
||||
cp ${{ runner.workspace }}/hdf5/hdfsrc/README.md ${{ runner.workspace }}/build/hdf5
|
||||
cp ${{ runner.workspace }}/hdf5/build/ci-StdShar-Intel/*.tar.gz ${{ runner.workspace }}/build/hdf5
|
||||
cd "${{ runner.workspace }}/build"
|
||||
tar -zcvf ${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz hdf5
|
||||
shell: bash
|
||||
|
||||
- name: List files in the space (Linux_intel)
|
||||
run: |
|
||||
ls ${{ github.workspace }}
|
||||
ls -l ${{ runner.workspace }}
|
||||
|
||||
# Save files created by ctest script
|
||||
- name: Save published binary (Linux_intel)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: tgz-ubuntu-2204_intel-binary
|
||||
path: ${{ runner.workspace }}/build/${{ steps.set-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
@@ -11,6 +11,10 @@ permissions:
|
||||
# in parallel. We just have one job, but the matrix items defined below will
|
||||
# run in parallel.
|
||||
jobs:
|
||||
call-workflow-special-cmake:
|
||||
name: "CMake Special Workflows"
|
||||
uses: ./.github/workflows/main-cmake-spc.yml
|
||||
|
||||
call-debug-thread-cmake:
|
||||
name: "CMake Debug Thread-Safety Workflows"
|
||||
uses: ./.github/workflows/main-cmake.yml
|
||||
|
||||
@@ -10,8 +10,8 @@ jobs:
|
||||
name: Check for spelling errors
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
- uses: codespell-project/actions-codespell@master
|
||||
with:
|
||||
skip: ./.github/workflows/codespell.yml,./bin/trace,./hl/tools/h5watch/h5watch.c,./tools/test/h5jam/tellub.c,./config/sanitizer/LICENSE,./config/sanitizer/sanitizers.cmake,./tools/test/h5repack/testfiles/*.dat,./test/API/driver,./configure,./bin/ltmain.sh,./bin/depcomp,./bin/config.guess,./bin/config.sub,./autom4te.cache,./m4/libtool.m4,./c++/src/*.html
|
||||
skip: ./.github/workflows/codespell.yml,./bin/trace,./hl/tools/h5watch/h5watch.c,./tools/test/h5jam/tellub.c,./config/sanitizer/LICENSE,./config/sanitizer/sanitizers.cmake,./tools/test/h5repack/testfiles/*.dat,./test/API/driver,./configure,./bin/ltmain.sh,./bin/depcomp,./bin/config.guess,./bin/config.sub,./autom4te.cache,./m4/libtool.m4,./c++/src/*.html,./HDF5Examples/depcomp
|
||||
ignore_words_list: ot,isnt,inout,nd,parms,parm,ba,offsetP,ser,ois,had,fiter,fo,clude,refere,minnum,offsetp,creat,ans:,eiter,lastr,ans,isn't,ifset,sur,trun,dne,tthe,hda,filname,te,htmp,ake,gord,numer,ro,oce,msdos
|
||||
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
name: CVE regression
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Autotools Dependencies (Linux)
|
||||
run: |
|
||||
@@ -40,7 +40,7 @@ jobs:
|
||||
make
|
||||
sudo make install
|
||||
- name: Checkout CVE test repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
repository: HDFGroup/cve_hdf5
|
||||
path: cve_hdf5
|
||||
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
name: Build hdfeos5
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Autotools Dependencies (Linux)
|
||||
run: |
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
name: "Intel ${{ inputs.build_mode }}"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
|
||||
@@ -19,7 +19,7 @@ jobs:
|
||||
name: "ubuntu-oneapi ${{ inputs.build_mode }}"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
# Only CMake need ninja-build, but we just install it unilaterally
|
||||
# libssl, etc. are needed for the ros3 VFD
|
||||
@@ -77,7 +77,7 @@ jobs:
|
||||
name: "windows-oneapi ${{ inputs.build_mode }}"
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Dependencies (Windows)
|
||||
run: choco install ninja
|
||||
|
||||
@@ -26,7 +26,7 @@ jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install System dependencies
|
||||
run: |
|
||||
|
||||
@@ -40,7 +40,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -98,7 +98,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
|
||||
@@ -43,7 +43,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -104,7 +104,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -165,7 +165,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -226,7 +226,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -287,7 +287,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -348,7 +348,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -409,7 +409,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -470,7 +470,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
|
||||
@@ -49,7 +49,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
@@ -153,7 +153,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# AUTOTOOLS CONFIGURE
|
||||
- name: Autotools Configure
|
||||
|
||||
@@ -0,0 +1,203 @@
|
||||
name: hdf5 1.14 CMake special CI
|
||||
|
||||
# Controls when the action will run. Triggers the workflow on a call
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or
|
||||
# in parallel. We just have one job, but the matrix items defined below will
|
||||
# run in parallel.
|
||||
jobs:
|
||||
#
|
||||
# SPECIAL CMake BUILDS
|
||||
#
|
||||
# These are not built into the matrix and instead
|
||||
# become NEW configs as their name would clobber one of the matrix
|
||||
# names (so make sure the names are UNIQUE).
|
||||
#
|
||||
|
||||
build_v1_6:
|
||||
name: "gcc DBG v1.6 default API"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# SETUP
|
||||
- name: Install Linux Dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt-get install ninja-build doxygen graphviz
|
||||
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
|
||||
sudo apt install gcc-12 g++-12 gfortran-12
|
||||
echo "CC=gcc-12" >> $GITHUB_ENV
|
||||
echo "CXX=g++-12" >> $GITHUB_ENV
|
||||
echo "FC=gfortran-12" >> $GITHUB_ENV
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
#
|
||||
# CMAKE CONFIGURE
|
||||
#
|
||||
- name: CMake Configure
|
||||
run: |
|
||||
mkdir "${{ runner.workspace }}/build"
|
||||
cd "${{ runner.workspace }}/build"
|
||||
cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \
|
||||
-G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Debug \
|
||||
-DCMAKE_TOOLCHAIN_FILE=config/toolchain/gcc.cmake \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DHDF5_ENABLE_ALL_WARNINGS=ON \
|
||||
-DHDF5_ENABLE_PARALLEL:BOOL=OFF \
|
||||
-DHDF5_BUILD_CPP_LIB:BOOL=ON \
|
||||
-DHDF5_BUILD_FORTRAN=ON \
|
||||
-DHDF5_BUILD_JAVA=ON \
|
||||
-DHDF5_BUILD_DOC=OFF \
|
||||
-DLIBAEC_USE_LOCALCONTENT=OFF \
|
||||
-DZLIB_USE_LOCALCONTENT=OFF \
|
||||
-DHDF5_ENABLE_MIRROR_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_DIRECT_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_ROS3_VFD:BOOL=ON \
|
||||
-DH5_NO_DEPRECATED_SYMBOLS:BOOL=OFF \
|
||||
-DDEFAULT_API_VERSION:STRING=v16 \
|
||||
$GITHUB_WORKSPACE
|
||||
shell: bash
|
||||
|
||||
#
|
||||
# BUILD
|
||||
#
|
||||
- name: CMake Build
|
||||
run: cmake --build . --parallel 3 --config Debug
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
#
|
||||
# RUN TESTS - disable until some tests are fixed
|
||||
#
|
||||
# - name: CMake Run Tests
|
||||
# run: ctest . --parallel 2 -C Debug -V
|
||||
# working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
build_v1_10:
|
||||
name: "gcc DBG v1.10 default API (build only)"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# SETUP
|
||||
- name: Install Linux Dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt-get install ninja-build doxygen graphviz
|
||||
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
|
||||
sudo apt install gcc-12 g++-12 gfortran-12
|
||||
echo "CC=gcc-12" >> $GITHUB_ENV
|
||||
echo "CXX=g++-12" >> $GITHUB_ENV
|
||||
echo "FC=gfortran-12" >> $GITHUB_ENV
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
#
|
||||
# CMAKE CONFIGURE
|
||||
#
|
||||
- name: CMake Configure
|
||||
run: |
|
||||
mkdir "${{ runner.workspace }}/build"
|
||||
cd "${{ runner.workspace }}/build"
|
||||
cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \
|
||||
-G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Debug \
|
||||
-DCMAKE_TOOLCHAIN_FILE=config/toolchain/gcc.cmake \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DHDF5_ENABLE_ALL_WARNINGS=ON \
|
||||
-DHDF5_ENABLE_PARALLEL:BOOL=OFF \
|
||||
-DHDF5_BUILD_CPP_LIB:BOOL=ON \
|
||||
-DHDF5_BUILD_FORTRAN=ON \
|
||||
-DHDF5_BUILD_JAVA=ON \
|
||||
-DHDF5_BUILD_DOC=OFF \
|
||||
-DLIBAEC_USE_LOCALCONTENT=OFF \
|
||||
-DZLIB_USE_LOCALCONTENT=OFF \
|
||||
-DHDF5_ENABLE_MIRROR_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_DIRECT_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_ROS3_VFD:BOOL=ON \
|
||||
-DH5_NO_DEPRECATED_SYMBOLS:BOOL=OFF \
|
||||
-DDEFAULT_API_VERSION:STRING=v110 \
|
||||
$GITHUB_WORKSPACE
|
||||
shell: bash
|
||||
|
||||
#
|
||||
# BUILD
|
||||
#
|
||||
- name: CMake Build
|
||||
run: cmake --build . --parallel 3 --config Debug
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
#
|
||||
# RUN TESTS
|
||||
#
|
||||
- name: CMake Run Tests
|
||||
run: ctest . --parallel 2 -C Debug -V
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
build_v1_12:
|
||||
name: "gcc DBG v1.12 default API (build only)"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# SETUP
|
||||
- name: Install Linux Dependencies
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt-get install ninja-build doxygen graphviz
|
||||
sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev
|
||||
sudo apt install gcc-12 g++-12 gfortran-12
|
||||
echo "CC=gcc-12" >> $GITHUB_ENV
|
||||
echo "CXX=g++-12" >> $GITHUB_ENV
|
||||
echo "FC=gfortran-12" >> $GITHUB_ENV
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
#
|
||||
# CMAKE CONFIGURE
|
||||
#
|
||||
- name: CMake Configure
|
||||
run: |
|
||||
mkdir "${{ runner.workspace }}/build"
|
||||
cd "${{ runner.workspace }}/build"
|
||||
cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \
|
||||
-G Ninja \
|
||||
-DCMAKE_BUILD_TYPE=Debug \
|
||||
-DCMAKE_TOOLCHAIN_FILE=config/toolchain/gcc.cmake \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DHDF5_ENABLE_ALL_WARNINGS=ON \
|
||||
-DHDF5_ENABLE_PARALLEL:BOOL=OFF \
|
||||
-DHDF5_BUILD_CPP_LIB:BOOL=ON \
|
||||
-DHDF5_BUILD_FORTRAN=ON \
|
||||
-DHDF5_BUILD_JAVA=ON \
|
||||
-DHDF5_BUILD_DOC=OFF \
|
||||
-DLIBAEC_USE_LOCALCONTENT=OFF \
|
||||
-DZLIB_USE_LOCALCONTENT=OFF \
|
||||
-DHDF5_ENABLE_MIRROR_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_DIRECT_VFD:BOOL=ON \
|
||||
-DHDF5_ENABLE_ROS3_VFD:BOOL=ON \
|
||||
-DH5_NO_DEPRECATED_SYMBOLS:BOOL=OFF \
|
||||
-DDEFAULT_API_VERSION:STRING=v112 \
|
||||
$GITHUB_WORKSPACE
|
||||
shell: bash
|
||||
|
||||
#
|
||||
# BUILD
|
||||
#
|
||||
- name: CMake Build
|
||||
run: cmake --build . --parallel 3 --config Debug
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
#
|
||||
# RUN TESTS
|
||||
#
|
||||
- name: CMake Run Tests
|
||||
run: ctest . --parallel 2 -C Debug -V
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
@@ -163,7 +163,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
#
|
||||
# CMAKE CONFIGURE
|
||||
@@ -281,7 +281,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
|
||||
# CMAKE CONFIGURE
|
||||
- name: CMake Configure
|
||||
|
||||
@@ -31,7 +31,7 @@ jobs:
|
||||
sudo apt update
|
||||
sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev doxygen openssl libtool libtool-bin
|
||||
- name: Checkout HDF5
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
- name: Install HDF5
|
||||
run: |
|
||||
./autogen.sh
|
||||
@@ -39,7 +39,7 @@ jobs:
|
||||
make -j
|
||||
sudo make install -j
|
||||
- name: Checkout netCDF
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
repository: unidata/netcdf-c
|
||||
path: netcdf-c
|
||||
@@ -47,7 +47,7 @@ jobs:
|
||||
run: |
|
||||
cd netcdf-c
|
||||
autoreconf -if
|
||||
CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests --enable-doxygen --enable-external-server-tests
|
||||
CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf5 --enable-dap --disable-dap-remote-tests --enable-external-server-tests
|
||||
cat config.log
|
||||
cat libnetcdf.settings
|
||||
CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make -j
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
name: "nvhpc ${{ inputs.build_mode }}"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
name: "nvhpc ${{ inputs.build_mode }}"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: Install Linux dependencies
|
||||
shell: bash
|
||||
@@ -72,5 +72,5 @@ jobs:
|
||||
- name: CMake Run Tests
|
||||
shell: bash
|
||||
run: |
|
||||
ctest . --parallel 2 -C ${{ inputs.build_mode }} -V
|
||||
ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "ph5_f90_hyperslab_by_chunk|ph5_f90_hyperslab_by_pattern"
|
||||
working-directory: ${{ runner.workspace }}/build
|
||||
|
||||
@@ -40,14 +40,14 @@ jobs:
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- run: |
|
||||
git checkout ${{ inputs.file_sha }}
|
||||
|
||||
- uses: rickstaa/action-create-tag@v1
|
||||
- uses: rickstaa/action-create-tag@a1c7777fcb2fee4f19b0f283ba888afa11678b72 # v1.7.2
|
||||
id: "tag_create"
|
||||
with:
|
||||
commit_sha: ${{ inputs.file_sha }}
|
||||
@@ -75,7 +75,7 @@ jobs:
|
||||
|
||||
# Get files created by tarball script
|
||||
- name: Get doxygen (Linux)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: docs-doxygen
|
||||
path: ${{ github.workspace }}/${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen
|
||||
@@ -84,34 +84,46 @@ jobs:
|
||||
run: zip -r ${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen.zip ./${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen
|
||||
|
||||
- name: Get tgz-tarball (Linux)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: tgz-tarball
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Get zip-tarball (Windows)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: zip-tarball
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
# Get files created by cmake-ctest script
|
||||
- name: Get published binary (Windows)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: zip-vs2022-binary
|
||||
name: zip-vs2022_cl-binary
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Get published binary (MacOS)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: tgz-osx12-binary
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Get published binary (Linux)
|
||||
uses: actions/download-artifact@v3
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: tgz-ubuntu-2204-binary
|
||||
name: tgz-ubuntu-2204_gcc-binary
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Get published binary (Windows_intel)
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: zip-vs2022_intel-binary
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Get published binary (Linux_intel)
|
||||
uses: actions/download-artifact@f44cd7b40bfd40b6aa1cc1b9b5b7bf03d3c67110 # v4.1.0
|
||||
with:
|
||||
name: tgz-ubuntu-2204_intel-binary
|
||||
path: ${{ github.workspace }}
|
||||
|
||||
- name: Store snapshot name
|
||||
@@ -121,7 +133,7 @@ jobs:
|
||||
- name: PreRelease tag
|
||||
id: create_prerelease
|
||||
if: ${{ (inputs.use_environ == 'snapshots') }}
|
||||
uses: softprops/action-gh-release@v1
|
||||
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1
|
||||
with:
|
||||
tag_name: "${{ inputs.use_tag }}"
|
||||
prerelease: true
|
||||
@@ -131,14 +143,16 @@ jobs:
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-osx12.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win_vs2022.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_intel.zip
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
- name: Release tag
|
||||
id: create_release
|
||||
if: ${{ (inputs.use_environ == 'release') }}
|
||||
uses: softprops/action-gh-release@v1
|
||||
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1
|
||||
with:
|
||||
tag_name: "${{ inputs.use_tag }}"
|
||||
prerelease: false
|
||||
@@ -148,8 +162,10 @@ jobs:
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-osx12.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win_vs2022.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_gcc.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_cl.zip
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-ubuntu-2204_intel.tar.gz
|
||||
${{ steps.get-file-base.outputs.FILE_BASE }}-win-vs2022_intel.zip
|
||||
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
|
||||
|
||||
- name: List files for the space (Linux)
|
||||
@@ -158,7 +174,7 @@ jobs:
|
||||
ls ${{ runner.workspace }}
|
||||
|
||||
- name: branch-only-docs
|
||||
uses: peaceiris/actions-gh-pages@v3
|
||||
uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # v3
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
publish_dir: ${{ github.workspace }}/${{ steps.get-file-base.outputs.FILE_BASE }}.doxygen
|
||||
|
||||
@@ -50,7 +50,7 @@ jobs:
|
||||
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
path: hdfsrc
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ jobs:
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- name: Get Sources
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
path: hdfsrc
|
||||
|
||||
|
||||
+2
-2
@@ -41,8 +41,8 @@ if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MAT
|
||||
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT")
|
||||
set (ZLIB_URL ${ZLIB_GIT_URL} CACHE STRING "Path to zlib git repository")
|
||||
set (ZLIB_BRANCH ${ZLIB_GIT_BRANCH})
|
||||
set (SZIP_URL ${SZIP_GIT_URL} CACHE STRING "Path to szip git repository")
|
||||
set (SZIP_BRANCH ${SZIP_GIT_BRANCH})
|
||||
set (SZIP_URL ${LIBAEC_GIT_URL} CACHE STRING "Path to szip git repository")
|
||||
set (SZIP_BRANCH ${LIBAEC_GIT_BRANCH})
|
||||
elseif (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
|
||||
if (NOT TGZPATH)
|
||||
set (TGZPATH ${HDF5_SOURCE_DIR})
|
||||
|
||||
+1
-53
@@ -56,13 +56,6 @@ set (HDF5_INCLUDES_BUILD_TIME
|
||||
${HDF5_TOOLS_SRC_DIR} ${HDF5_SRC_BINARY_DIR}
|
||||
)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Set variables needed for installation
|
||||
#-----------------------------------------------------------------------------
|
||||
set (HDF5_VERSION_STRING ${HDF5_PACKAGE_VERSION})
|
||||
set (HDF5_VERSION_MAJOR ${HDF5_PACKAGE_VERSION_MAJOR})
|
||||
set (HDF5_VERSION_MINOR ${HDF5_PACKAGE_VERSION_MINOR})
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Configure the hdf5-config.cmake file for the build directory
|
||||
#-----------------------------------------------------------------------------
|
||||
@@ -155,53 +148,8 @@ if (HDF5_PACK_EXAMPLES)
|
||||
COMPONENT hdfdocuments
|
||||
)
|
||||
|
||||
option (EXAMPLES_DOWNLOAD "Download to use released examples files" OFF)
|
||||
if (EXAMPLES_DOWNLOAD)
|
||||
option (EXAMPLES_USE_RELEASE_NAME "Use the released examples artifact name" OFF)
|
||||
if (EXAMPLES_USE_RELEASE_NAME)
|
||||
set (EXAMPLES_NAME ${EXAMPLES_TGZ_ORIGNAME})
|
||||
else ()
|
||||
set (EXAMPLES_NAME ${HDF5_EXAMPLES_COMPRESSED})
|
||||
endif ()
|
||||
if (NOT EXAMPLES_USE_LOCALCONTENT)
|
||||
set (EXAMPLES_URL ${EXAMPLES_TGZ_ORIGPATH}/${EXAMPLES_NAME})
|
||||
file (DOWNLOAD ${EXAMPLES_URL} ${HDF5_BINARY_DIR}/${HDF5_EXAMPLES_COMPRESSED} STATUS EX_DL)
|
||||
message (STATUS "Examples file is ${EXAMPLES_URL} STATUS=${EX_DL}")
|
||||
else ()
|
||||
set (EXAMPLES_URL ${TGZPATH}/${EXAMPLES_NAME})
|
||||
file (COPY_FILE ${EXAMPLES_URL} ${HDF5_BINARY_DIR}/${HDF5_EXAMPLES_COMPRESSED} RESULT EX_DL)
|
||||
message (STATUS "Examples file is ${EXAMPLES_URL} RESULT=${EX_DL}")
|
||||
endif ()
|
||||
if (EXISTS "${HDF5_BINARY_DIR}/${HDF5_EXAMPLES_COMPRESSED}")
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${HDF5_EXAMPLES_COMPRESSED}
|
||||
WORKING_DIRECTORY ${HDF5_BINARY_DIR}
|
||||
COMMAND_ECHO STDOUT
|
||||
)
|
||||
endif ()
|
||||
else ()
|
||||
if (EXISTS "${HDF5_EXAMPLES_COMPRESSED_DIR}/${HDF5_EXAMPLES_COMPRESSED}")
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${HDF5_EXAMPLES_COMPRESSED_DIR}/${HDF5_EXAMPLES_COMPRESSED}
|
||||
WORKING_DIRECTORY ${HDF5_BINARY_DIR}
|
||||
COMMAND_ECHO STDOUT
|
||||
)
|
||||
endif ()
|
||||
endif ()
|
||||
get_filename_component (EX_LAST_EXT ${HDF5_EXAMPLES_COMPRESSED} LAST_EXT)
|
||||
if (${EX_LAST_EXT} STREQUAL ".zip")
|
||||
get_filename_component (EX_DIR_NAME ${HDF5_EXAMPLES_COMPRESSED} NAME_WLE)
|
||||
else ()
|
||||
get_filename_component (EX_DIR_NAME ${HDF5_EXAMPLES_COMPRESSED} NAME_WLE)
|
||||
get_filename_component (EX_DIR_NAME ${EX_DIR_NAME} NAME_WLE)
|
||||
endif ()
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E rename ${EX_DIR_NAME} HDF5Examples
|
||||
WORKING_DIRECTORY ${HDF5_BINARY_DIR}
|
||||
COMMAND_ECHO STDOUT
|
||||
)
|
||||
install (
|
||||
DIRECTORY ${HDF5_BINARY_DIR}/HDF5Examples
|
||||
DIRECTORY ${HDF5_SOURCE_DIR}/HDF5Examples
|
||||
DESTINATION ${HDF5_INSTALL_DATA_DIR}
|
||||
USE_SOURCE_PERMISSIONS
|
||||
COMPONENT hdfdocuments
|
||||
|
||||
+27
-19
@@ -220,7 +220,7 @@ set (HDF5_CPP_TST_DIR ${HDF5_SOURCE_DIR}/c++/test)
|
||||
set (HDF5_HL_SRC_DIR ${HDF5_SOURCE_DIR}/hl)
|
||||
set (HDF5_HL_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/hl/c++)
|
||||
set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools)
|
||||
set (HDF5_TOOLS_DIR ${HDF5_SOURCE_DIR}/tools)
|
||||
set (HDF5_TOOLS_ROOT_DIR ${HDF5_SOURCE_DIR}/tools)
|
||||
set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src)
|
||||
set (HDF5_TOOLS_TST_DIR ${HDF5_SOURCE_DIR}/tools/test)
|
||||
set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src/perform)
|
||||
@@ -418,6 +418,7 @@ set (HDF5_PACKAGE_BUGREPORT "help@hdfgroup.org")
|
||||
set (HDF5_VERSION_STRING ${HDF5_PACKAGE_VERSION})
|
||||
set (HDF5_VERSION_MAJOR ${HDF5_PACKAGE_VERSION_MAJOR})
|
||||
set (HDF5_VERSION_MINOR ${HDF5_PACKAGE_VERSION_MINOR})
|
||||
set (H5_LIBVER_DIR ${H5_VERS_MAJOR}${H5_VERS_MINOR})
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Include some macros for reusable code
|
||||
@@ -1018,25 +1019,20 @@ endif ()
|
||||
#-----------------------------------------------------------------------------
|
||||
# Include filter plugins
|
||||
#-----------------------------------------------------------------------------
|
||||
include (CMakePlugins.cmake)
|
||||
if (${H5_LIBVER_DIR} EQUAL 16 OR DEFAULT_API_VERSION MATCHES "v16")
|
||||
set (HDF5_ENABLE_PLUGIN_SUPPORT OFF CACHE BOOL "" FORCE)
|
||||
message (VERBOSE "Filter PLUGINs cannot be used with 1.6 API")
|
||||
else ()
|
||||
include (CMakePlugins.cmake)
|
||||
|
||||
if (HDF5_PACKAGE_EXTLIBS AND NOT HDF5_NO_PACKAGES)
|
||||
if (HDF5_ENABLE_PLUGIN_SUPPORT AND PLUGIN_FOUND)
|
||||
PACKAGE_PLUGIN_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT})
|
||||
# option (HDF5_TEST_PLUGIN "Execute plugin tests" ON)
|
||||
# mark_as_advanced (HDF5_TEST_PLUGIN)
|
||||
if (HDF5_PACKAGE_EXTLIBS AND NOT HDF5_NO_PACKAGES)
|
||||
if (HDF5_ENABLE_PLUGIN_SUPPORT AND PLUGIN_FOUND)
|
||||
PACKAGE_PLUGIN_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT})
|
||||
# option (HDF5_TEST_PLUGIN "Execute plugin tests" ON)
|
||||
# mark_as_advanced (HDF5_TEST_PLUGIN)
|
||||
|
||||
# TEST_PLUGIN_LIBRARY ()
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Option to build examples
|
||||
#-----------------------------------------------------------------------------
|
||||
if (EXISTS "${HDF5_SOURCE_DIR}/examples" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/examples")
|
||||
option (HDF5_BUILD_EXAMPLES "Build HDF5 Library Examples" ON)
|
||||
if (HDF5_BUILD_EXAMPLES)
|
||||
add_subdirectory (examples)
|
||||
# TEST_PLUGIN_LIBRARY ()
|
||||
endif ()
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
@@ -1052,7 +1048,7 @@ if (EXISTS "${HDF5_SOURCE_DIR}/hl" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/hl")
|
||||
endif ()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Option to build Fortran bindings/tests/examples
|
||||
# Option to build Fortran bindings/tests
|
||||
# Make sure this appears before the CONFIGURE_FILE step
|
||||
# so that fortran name mangling is detected before writing H5pubconf.h
|
||||
#-----------------------------------------------------------------------------
|
||||
@@ -1150,6 +1146,18 @@ if (EXISTS "${HDF5_SOURCE_DIR}/java" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/java")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Option to build examples
|
||||
#-----------------------------------------------------------------------------
|
||||
if (EXISTS "${HDF5_SOURCE_DIR}/HDF5Examples" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/HDF5Examples")
|
||||
option (HDF5_BUILD_EXAMPLES "Build HDF5 Library Examples" ON)
|
||||
if (HDF5_BUILD_EXAMPLES)
|
||||
include (${HDF_RESOURCES_DIR}/HDF5ExampleCache.cmake)
|
||||
set (HDF5_VERSION ${HDF5_PACKAGE_VERSION})
|
||||
add_subdirectory (HDF5Examples)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Generate the H5pubconf.h file containing user settings needed by compilation
|
||||
#-----------------------------------------------------------------------------
|
||||
|
||||
+48
-13
@@ -84,23 +84,11 @@
|
||||
"PLUGIN_USE_LOCALCONTENT": "OFF"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ci-ExamplesVars",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"HDF5_EXAMPLES_COMPRESSED": {"type": "STRING", "value": "hdf5-examples-master.tar.gz"},
|
||||
"HDF5_EXAMPLES_COMPRESSED_DIR": {"type": "PATH", "value": "${sourceParentDir}/temp"},
|
||||
"EXAMPLES_TGZ_ORIGPATH": {"type": "STRING", "value": "https://github.com/HDFGroup/hdf5-examples/releases/download/snapshot"},
|
||||
"EXAMPLES_TGZ_ORIGNAME": {"type": "STRING", "value": "hdf5-examples-2.0.4.tar.gz"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ci-StdExamples",
|
||||
"hidden": true,
|
||||
"inherits": ["ci-base", "ci-ExamplesVars", "ci-base-tgz"],
|
||||
"inherits": ["ci-base", "ci-base-tgz"],
|
||||
"cacheVariables": {
|
||||
"EXAMPLES_USE_RELEASE_NAME": "ON",
|
||||
"EXAMPLES_USE_LOCALCONTENT": "OFF",
|
||||
"HDF5_PACK_EXAMPLES": "ON",
|
||||
"EXAMPLES_DOWNLOAD": "ON"
|
||||
}
|
||||
@@ -160,6 +148,17 @@
|
||||
"ci-Java",
|
||||
"ci-StdShar"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ci-StdShar-Intel",
|
||||
"description": "Intel Standard Config for x64 (Release)",
|
||||
"inherits": [
|
||||
"ci-x64-Release-Intel",
|
||||
"ci-CPP",
|
||||
"ci-Fortran",
|
||||
"ci-Java",
|
||||
"ci-StdShar"
|
||||
]
|
||||
}
|
||||
],
|
||||
"buildPresets": [
|
||||
@@ -187,6 +186,15 @@
|
||||
"inherits": [
|
||||
"ci-x64-Release-GNUC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ci-StdShar-Intel",
|
||||
"description": "Intel Standard Build for x64 (Release)",
|
||||
"configurePreset": "ci-StdShar-Intel",
|
||||
"verbose": true,
|
||||
"inherits": [
|
||||
"ci-x64-Release-Intel"
|
||||
]
|
||||
}
|
||||
],
|
||||
"testPresets": [
|
||||
@@ -215,6 +223,18 @@
|
||||
"inherits": [
|
||||
"ci-x64-Release-GNUC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ci-StdShar-Intel",
|
||||
"configurePreset": "ci-StdShar-Intel",
|
||||
"inherits": [
|
||||
"ci-x64-Release-Intel"
|
||||
],
|
||||
"filter": {
|
||||
"exclude": {
|
||||
"name": "H5DUMP-tfloatsattrs"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"packagePresets": [
|
||||
@@ -232,6 +252,11 @@
|
||||
"name": "ci-StdShar-GNUC",
|
||||
"configurePreset": "ci-StdShar-GNUC",
|
||||
"inherits": "ci-x64-Release-GNUC"
|
||||
},
|
||||
{
|
||||
"name": "ci-StdShar-Intel",
|
||||
"configurePreset": "ci-StdShar-Intel",
|
||||
"inherits": "ci-x64-Release-Intel"
|
||||
}
|
||||
],
|
||||
"workflowPresets": [
|
||||
@@ -261,6 +286,16 @@
|
||||
{"type": "test", "name": "ci-StdShar-GNUC"},
|
||||
{"type": "package", "name": "ci-StdShar-GNUC"}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ci-StdShar-Intel",
|
||||
"steps": [
|
||||
{"type": "configure", "name": "ci-StdShar-Intel"},
|
||||
{"type": "build", "name": "ci-StdShar-Intel"},
|
||||
{"type": "test", "name": "ci-StdShar-Intel"},
|
||||
{"type": "package", "name": "ci-StdShar-Intel"}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
cmake_minimum_required (VERSION 3.12)
|
||||
PROJECT (HDF5Examples_C)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Build the C Examples
|
||||
#-----------------------------------------------------------------------------
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5D)
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5G)
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5T)
|
||||
|
||||
if (${H5_LIBVER_DIR} GREATER 16)
|
||||
# add_subdirectory (${PROJECT_SOURCE_DIR}/Perf)
|
||||
if (USE_SHARED_LIBS AND HDF_BUILD_FILTERS AND HDF5_ENABLE_PLUGIN_SUPPORT)
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5FLT)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (${H5_LIBVER_DIR} GREATER 110)
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5VDS)
|
||||
endif ()
|
||||
|
||||
if (H5_HAVE_PARALLEL AND HDF5_ENABLE_PARALLEL)
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR}/H5PAR)
|
||||
endif ()
|
||||
@@ -0,0 +1,137 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to set the space allocation time
|
||||
for a dataset. The program first creates two datasets,
|
||||
one with the default allocation time (late) and one with
|
||||
early allocation time, and displays whether each has been
|
||||
allocated and their allocation size. Next, it writes data
|
||||
to the datasets, and again displays whether each has been
|
||||
allocated and their allocation size.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_alloc.h5"
|
||||
#define DATASET1 "DS1"
|
||||
#define DATASET2 "DS2"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define FILLVAL 99
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset1 = H5I_INVALID_HID;
|
||||
hid_t dset2 = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
H5D_space_status_t space_status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t storage_size;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
|
||||
/*
|
||||
* Set the allocation time to "early". This way we can be sure
|
||||
* that reading from the dataset immediately after creation will
|
||||
* return the fill value.
|
||||
*/
|
||||
status = H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_EARLY);
|
||||
|
||||
printf("Creating datasets...\n");
|
||||
printf("%s has allocation time H5D_ALLOC_TIME_LATE\n", DATASET1);
|
||||
printf("%s has allocation time H5D_ALLOC_TIME_EARLY\n\n", DATASET2);
|
||||
|
||||
/*
|
||||
* Create the dataset using the dataset creation property list.
|
||||
*/
|
||||
dset1 = H5Dcreate(file, DATASET1, H5T_STD_I32LE, space, H5P_DEFAULT);
|
||||
dset2 = H5Dcreate(file, DATASET2, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset1.
|
||||
*/
|
||||
status = H5Dget_space_status(dset1, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset1);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET1,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET1, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset2.
|
||||
*/
|
||||
status = H5Dget_space_status(dset2, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset2);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET2,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET2, (long)storage_size);
|
||||
|
||||
printf("\nWriting data...\n\n");
|
||||
|
||||
/*
|
||||
* Write the data to the datasets.
|
||||
*/
|
||||
status = H5Dwrite(dset1, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
status = H5Dwrite(dset2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset1.
|
||||
*/
|
||||
status = H5Dget_space_status(dset1, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset1);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET1,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET1, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset2.
|
||||
*/
|
||||
status = H5Dget_space_status(dset2, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset2);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET2,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET2, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset1);
|
||||
status = H5Dclose(dset2);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,187 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the Fletcher32 checksum filter. The program first
|
||||
checks if the Fletcher32 filter is available, then if it
|
||||
is it writes integers to a dataset using Fletcher32, then
|
||||
closes the file. Next, it reopens the file, reads back
|
||||
the data, checks if the filter detected an error and
|
||||
outputs the type of filter and the maximum value in the
|
||||
dataset to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_checksum.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1}, chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags, filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if the Fletcher32 filter is available and can be used for
|
||||
* both encoding and decoding. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_FLETCHER32);
|
||||
if (!avail) {
|
||||
printf("Fletcher32 filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_FLETCHER32, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Fletcher32 filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the Fletcher32 filter
|
||||
* and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_fletcher32(dcpl);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Check if the read was successful. Normally we do not perform
|
||||
* error checking in these examples for the sake of clarity, but in
|
||||
* this case we will make an exception because this is how the
|
||||
* fletcher32 checksum filter reports data errors.
|
||||
*/
|
||||
if (status < 0) {
|
||||
fprintf(stderr, "Dataset read failed!\n");
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
return 2;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,212 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create a chunked dataset. The
|
||||
program first writes integers in a hyperslab selection to
|
||||
a chunked dataset with dataspace dimensions of DIM0xDIM1
|
||||
and chunk size of CHUNK0xCHUNK1, then closes the file.
|
||||
Next, it reopens the file, reads back the data, and
|
||||
outputs it to the screen. Finally it reads the data again
|
||||
using a different hyperslab selection, and outputs
|
||||
the result to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_chunk.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 6
|
||||
#define DIM1 8
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
H5D_layout_t layout;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t stride[2];
|
||||
hsize_t count[2];
|
||||
hsize_t block[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data to "1", to make it easier to see the selections.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = 1;
|
||||
|
||||
/*
|
||||
* Print the data to the screen.
|
||||
*/
|
||||
printf("Original Data:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", wdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the chunked dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Define and select the first part of the hyperslab selection.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
stride[0] = 3;
|
||||
stride[1] = 3;
|
||||
count[0] = 2;
|
||||
count[1] = 3;
|
||||
block[0] = 2;
|
||||
block[1] = 2;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Define and select the second part of the hyperslab selection,
|
||||
* which is subtracted from the first selection by the use of
|
||||
* H5S_SELECT_NOTB
|
||||
*/
|
||||
block[0] = 1;
|
||||
block[1] = 1;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve the dataset creation property list, and print the
|
||||
* storage layout.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
layout = H5Pget_layout(dcpl);
|
||||
printf("\nStorage layout for %s is: ", DATASET);
|
||||
switch (layout) {
|
||||
case H5D_COMPACT:
|
||||
printf("H5D_COMPACT\n");
|
||||
break;
|
||||
case H5D_CONTIGUOUS:
|
||||
printf("H5D_CONTIGUOUS\n");
|
||||
break;
|
||||
case H5D_CHUNKED:
|
||||
printf("H5D_CHUNKED\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written to disk by hyberslabs:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the read array.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
rdata[i][j] = 0;
|
||||
|
||||
/*
|
||||
* Define and select the hyperslab to use for reading.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
start[0] = 0;
|
||||
start[1] = 1;
|
||||
stride[0] = 4;
|
||||
stride[1] = 4;
|
||||
count[0] = 2;
|
||||
count[1] = 2;
|
||||
block[0] = 2;
|
||||
block[1] = 3;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Read the data using the previously defined hyperslab.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as read from disk by hyperslab:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a compact
|
||||
dataset. The program first writes integers to a compact
|
||||
dataset with dataspace dimensions of DIM0xDIM1, then
|
||||
closes the file. Next, it reopens the file, reads back
|
||||
the data, and outputs it to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_compact.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
H5D_layout_t layout;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, set the layout to
|
||||
* compact.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_layout(dcpl, H5D_COMPACT);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve the dataset creation property list, and print the
|
||||
* storage layout.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
layout = H5Pget_layout(dcpl);
|
||||
printf("Storage layout for %s is: ", DATASET);
|
||||
switch (layout) {
|
||||
case H5D_COMPACT:
|
||||
printf("H5D_COMPACT\n");
|
||||
break;
|
||||
case H5D_CONTIGUOUS:
|
||||
printf("H5D_CONTIGUOUS\n");
|
||||
break;
|
||||
case H5D_CHUNKED:
|
||||
printf("H5D_CHUNKED\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to an
|
||||
external dataset. The program first writes integers to an
|
||||
external dataset with dataspace dimensions of DIM0xDIM1,
|
||||
then closes the file. Next, it reopens the file, reads
|
||||
back the data, and outputs the name of the external data
|
||||
file and the data to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_extern.h5"
|
||||
#define EXTERNAL "h5ex_d_extern.data"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define NAME_BUF_SIZE 32
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
char name[NAME_BUF_SIZE];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, set the external
|
||||
* file.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_external(dcpl, EXTERNAL, 0, H5F_UNLIMITED);
|
||||
|
||||
/*
|
||||
* Create the external dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the name of the external file. Here we
|
||||
* manually set the last field in name to null, in case the name of
|
||||
* the file is longer than the buffer.
|
||||
*/
|
||||
status = H5Pget_external(dcpl, 0, NAME_BUF_SIZE, name, NULL, NULL);
|
||||
name[NAME_BUF_SIZE - 1] = '\0';
|
||||
printf("%s is stored in file: %s\n", DATASET, name);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,157 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to set the fill value for a
|
||||
dataset. The program first sets the fill value to
|
||||
FILLVAL, creates a dataset with dimensions of DIM0xDIM1,
|
||||
reads from the uninitialized dataset, and outputs the
|
||||
contents to the screen. Next, it writes integers to the
|
||||
dataset, reads the data back, and outputs it to the
|
||||
screen. Finally it extends the dataset, reads from it,
|
||||
and outputs the result to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_fillval.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
#define FILLVAL 99
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int rdata2[EDIM0][EDIM1]; /* Read buffer for extension */
|
||||
int fillval;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Set the fill value for the dataset.
|
||||
*/
|
||||
fillval = FILLVAL;
|
||||
status = H5Pset_fill_value(dcpl, H5T_NATIVE_INT, &fillval);
|
||||
|
||||
/*
|
||||
* Set the allocation time to "early". This way we can be sure
|
||||
* that reading from the dataset immediately after creation will
|
||||
* return the fill value.
|
||||
*/
|
||||
status = H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_EARLY);
|
||||
|
||||
/*
|
||||
* Create the dataset using the dataset creation property list.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Read values from the dataset, which has not been written to yet.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before being written to:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Read the data back.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after being written to:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Read from the extended dataset.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata2[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < extdims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < extdims[1]; j++)
|
||||
printf(" %3d", rdata2[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,173 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using gzip compression (also called zlib or deflate). The
|
||||
program first checks if gzip compression is available,
|
||||
then if it is it writes integers to a dataset using gzip,
|
||||
then closes the file. Next, it reopens the file, reads
|
||||
back the data, and outputs the type of compression and the
|
||||
maximum value in the dataset to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_gzip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the gzip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,181 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a
|
||||
dataset by hyberslabs. The program first writes integers
|
||||
in a hyperslab selection to a dataset with dataspace
|
||||
dimensions of DIM0xDIM1, then closes the file. Next, it
|
||||
reopens the file, reads back the data, and outputs it to
|
||||
the screen. Finally it reads the data again using a
|
||||
different hyperslab selection, and outputs the result to
|
||||
the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_hyper.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 6
|
||||
#define DIM1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t start[2];
|
||||
hsize_t stride[2];
|
||||
hsize_t count[2];
|
||||
hsize_t block[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data to "1", to make it easier to see the selections.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = 1;
|
||||
|
||||
/*
|
||||
* Print the data to the screen.
|
||||
*/
|
||||
printf("Original Data:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", wdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Define and select the first part of the hyperslab selection.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
stride[0] = 3;
|
||||
stride[1] = 3;
|
||||
count[0] = 2;
|
||||
count[1] = 3;
|
||||
block[0] = 2;
|
||||
block[1] = 2;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Define and select the second part of the hyperslab selection,
|
||||
* which is subtracted from the first selection by the use of
|
||||
* H5S_SELECT_NOTB
|
||||
*/
|
||||
block[0] = 1;
|
||||
block[1] = 1;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written to disk by hyberslabs:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the read array.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
rdata[i][j] = 0;
|
||||
|
||||
/*
|
||||
* Define and select the hyperslab to use for reading.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
start[0] = 0;
|
||||
start[1] = 1;
|
||||
stride[0] = 4;
|
||||
stride[1] = 4;
|
||||
count[0] = 2;
|
||||
count[1] = 2;
|
||||
block[0] = 2;
|
||||
block[1] = 3;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Read the data using the previously defined hyperslab.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as read from disk by hyperslab:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data, and
|
||||
outputs it to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_rdwr.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the shuffle filter with gzip compression. The
|
||||
program first checks if the shuffle and gzip filters are
|
||||
available, then if they are it writes integers to a
|
||||
dataset using shuffle+gzip, then closes the file. Next,
|
||||
it reopens the file, reads back the data, and outputs the
|
||||
types of filters and the maximum value in the dataset to
|
||||
the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_shuffle.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max, nfilters;
|
||||
int i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Similarly, check for availability of the shuffle filter.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SHUFFLE);
|
||||
if (!avail) {
|
||||
printf("Shuffle filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SHUFFLE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Shuffle filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the shuffle
|
||||
* filter and the gzip compression filter and set the chunk size.
|
||||
* The order in which the filters are added here is significant -
|
||||
* we will see much greater results when the shuffle is applied
|
||||
* first. The order in which the filters are added to the property
|
||||
* list is the order in which they will be invoked when writing
|
||||
* data.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_shuffle(dcpl);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve the number of filters, and retrieve and print the
|
||||
* type of each.
|
||||
*/
|
||||
nfilters = H5Pget_nfilters(dcpl);
|
||||
for (i = 0; i < nfilters; i++) {
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, i, &flags, &nelmts, NULL, 0, NULL);
|
||||
printf("Filter %d: Type is: ", i);
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,174 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using szip compression. The program first checks if
|
||||
szip compression is available, then if it is it writes
|
||||
integers to a dataset using szip, then closes the file.
|
||||
Next, it reopens the file, reads back the data, and
|
||||
outputs the type of compression and the maximum value in
|
||||
the dataset to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_szip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if szip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SZIP);
|
||||
if (!avail) {
|
||||
printf("szip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SZIP, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("szip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the szip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_szip(dcpl, H5_SZIP_NN_OPTION_MASK, 8);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,239 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data,
|
||||
outputs it to the screen, extends the dataset, and writes
|
||||
new data to the extended portions of the dataset. Finally
|
||||
it reopens the file again, reads back the data, and
|
||||
outputs it to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimadd.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t count[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the extended portions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
status = H5Sclose(space);
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dextend(dset, extdims);
|
||||
|
||||
/*
|
||||
* Retrieve the dataspace for the newly extended dataset.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Select the entire dataspace.
|
||||
*/
|
||||
status = H5Sselect_all(space);
|
||||
|
||||
/*
|
||||
* Subtract a hyperslab reflecting the original dimensions from the
|
||||
* selection. The selection now contains only the newly extended
|
||||
* portions of the dataset.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
count[0] = dims[0];
|
||||
count[1] = dims[1];
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, NULL, count, NULL);
|
||||
|
||||
/*
|
||||
* Write the data to the selected portion of the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,291 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset with gzip compression. The program first writes
|
||||
integers to a gzip compressed dataset with dataspace
|
||||
dimensions of DIM0xDIM1, then closes the file. Next, it
|
||||
reopens the file, reads back the data, outputs it to the
|
||||
screen, extends the dataset, and writes new data to the
|
||||
extended portions of the dataset. Finally it reopens the
|
||||
file again, reads back the data, and outputs it to the
|
||||
screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimgzip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t count[2];
|
||||
size_t nelmts;
|
||||
unsigned int flags, filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the gzip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the compressed unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the extended portions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
status = H5Sclose(space);
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dextend(dset, extdims);
|
||||
|
||||
/*
|
||||
* Retrieve the dataspace for the newly extended dataset.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Select the entire dataspace.
|
||||
*/
|
||||
status = H5Sselect_all(space);
|
||||
|
||||
/*
|
||||
* Subtract a hyperslab reflecting the original dimensions from the
|
||||
* selection. The selection now contains only the newly extended
|
||||
* portions of the dataset.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
count[0] = dims[0];
|
||||
count[1] = dims[1];
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, NULL, count, NULL);
|
||||
|
||||
/*
|
||||
* Write the data to the selected portion of the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL);
|
||||
printf("\nFilter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,214 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data,
|
||||
outputs it to the screen, extends the dataset, and writes
|
||||
new data to the entire extended dataset. Finally it
|
||||
reopens the file again, reads back the data, and outputs it
|
||||
to the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.6
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimmod.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, dcpl);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the entire dataset.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Write the data to the extended dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,261 @@
|
||||
cmake_minimum_required (VERSION 3.12)
|
||||
project (HDF5Examples_C_H5D C)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Define Sources
|
||||
#-----------------------------------------------------------------------------
|
||||
include (C_sourcefiles.cmake)
|
||||
|
||||
foreach (example_name ${common_examples})
|
||||
if (${H5_LIBVER_DIR} EQUAL 16 OR ${EXAMPLE_VARNAME}_USE_16_API)
|
||||
add_executable (${EXAMPLE_VARNAME}_${example_name} ${PROJECT_SOURCE_DIR}/16/${example_name}.c)
|
||||
else ()
|
||||
add_executable (${EXAMPLE_VARNAME}_${example_name} ${PROJECT_SOURCE_DIR}/${example_name}.c)
|
||||
endif ()
|
||||
target_compile_options(${EXAMPLE_VARNAME}_${example_name}
|
||||
PRIVATE
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_16_API}>:-DH5_USE_16_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_18_API}>:-DH5_USE_18_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_110_API}>:-DH5_USE_110_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_112_API}>:-DH5_USE_112_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_114_API}>:-DH5_USE_114_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_116_API}>:-DH5_USE_116_API>"
|
||||
)
|
||||
if (H5_HAVE_PARALLEL)
|
||||
target_include_directories (${EXAMPLE_VARNAME}_${example_name} PUBLIC ${MPI_C_INCLUDE_DIRS})
|
||||
endif ()
|
||||
target_link_libraries (${EXAMPLE_VARNAME}_${example_name} ${H5EX_HDF5_LINK_LIBS})
|
||||
if (H5EX_BUILD_TESTING)
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/16/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
)
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.8")
|
||||
foreach (example_name ${1_8_examples})
|
||||
add_executable (${EXAMPLE_VARNAME}_${example_name} ${PROJECT_SOURCE_DIR}/${example_name}.c)
|
||||
target_compile_options(${EXAMPLE_VARNAME}_${example_name}
|
||||
PRIVATE
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_16_API}>:-DH5_USE_16_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_18_API}>:-DH5_USE_18_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_110_API}>:-DH5_USE_110_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_112_API}>:-DH5_USE_112_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_114_API}>:-DH5_USE_114_API>"
|
||||
"$<$<BOOL:${${EXAMPLE_VARNAME}_USE_116_API}>:-DH5_USE_116_API>"
|
||||
)
|
||||
if (H5_HAVE_PARALLEL)
|
||||
target_include_directories (${EXAMPLE_VARNAME}_${example_name} PUBLIC ${MPI_C_INCLUDE_DIRS})
|
||||
endif ()
|
||||
target_link_libraries (${EXAMPLE_VARNAME}_${example_name} ${H5EX_HDF5_LINK_LIBS})
|
||||
if (H5EX_BUILD_TESTING)
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/18/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
)
|
||||
endif ()
|
||||
endforeach ()
|
||||
endif ()
|
||||
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.10")
|
||||
# foreach (example_name ${1_10_examples})
|
||||
# add_executable (${EXAMPLE_VARNAME}_${example_name} ${PROJECT_SOURCE_DIR}/${example_name}.c)
|
||||
# target_compile_options(${EXAMPLE_VARNAME}_${example_name}
|
||||
# PRIVATE
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_16_API}>:-DH5_USE_16_API>"
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_18_API}>:-DH5_USE_18_API>"
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_110_API}>:-DH5_USE_110_API>"
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_112_API}>:-DH5_USE_112_API>"
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_114_API}>:-DH5_USE_114_API>"
|
||||
# "$<$<BOOL:${${EXAMPLE_VARNAME}_USE_116_API}>:-DH5_USE_116_API>"
|
||||
# )
|
||||
# if (H5_HAVE_PARALLEL)
|
||||
# target_include_directories (${EXAMPLE_VARNAME}_${example_name} PUBLIC ${MPI_C_INCLUDE_DIRS})
|
||||
# endif ()
|
||||
# target_link_libraries (${EXAMPLE_VARNAME}_${example_name} ${H5EX_HDF5_LINK_LIBS})
|
||||
# if (H5EX_BUILD_TESTING)
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/110/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
# )
|
||||
# endif ()
|
||||
# endforeach ()
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.12")
|
||||
# foreach (example_name ${1_12_examples})
|
||||
# if (H5EX_BUILD_TESTING)
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/112/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
# )
|
||||
# endif ()
|
||||
# endforeach ()
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.14")
|
||||
# foreach (example_name ${1_14_examples})
|
||||
# if (H5EX_BUILD_TESTING)
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/114/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
# )
|
||||
# endif ()
|
||||
# endforeach ()
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.16")
|
||||
# foreach (example_name ${1_16_examples})
|
||||
# if (H5EX_BUILD_TESTING)
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/116/${example_name}.tst ${PROJECT_BINARY_DIR}/${example_name}.tst
|
||||
# )
|
||||
# endif ()
|
||||
# endforeach ()
|
||||
#endif ()
|
||||
|
||||
if (HDF5_BUILD_TOOLS)
|
||||
foreach (example_name ${common_examples})
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/16/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
)
|
||||
endforeach ()
|
||||
|
||||
foreach (example_name ${1_8_examples})
|
||||
if (${example_name} STREQUAL "h5ex_d_nbit")
|
||||
if (HDF5_VERSION_MAJOR VERSION_EQUAL "1.8" AND HDF5_VERSION_STRING VERSION_LESS_EQUAL "1.8.22")
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/18/${example_name}22.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
)
|
||||
elseif (HDF5_VERSION_MAJOR VERSION_EQUAL "1.10" AND HDF5_VERSION_STRING VERSION_LESS_EQUAL "1.10.7")
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/110/${example_name}07.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
)
|
||||
else ()
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/18/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
)
|
||||
endif ()
|
||||
else ()
|
||||
if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.8")
|
||||
add_custom_command (
|
||||
TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/18/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
)
|
||||
endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.10")
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/110/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
# )
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.12")
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/112/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
# )
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.14")
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/114/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
# )
|
||||
#endif ()
|
||||
#if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.16")
|
||||
# add_custom_command (
|
||||
# TARGET ${EXAMPLE_VARNAME}_${example_name}
|
||||
# POST_BUILD
|
||||
# COMMAND ${CMAKE_COMMAND}
|
||||
# ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/tfiles/116/${example_name}.ddl ${PROJECT_BINARY_DIR}/${example_name}.ddl
|
||||
# )
|
||||
#endif ()
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
# foreach (example_name ${1_10_examples})
|
||||
# endforeach ()
|
||||
# foreach (example_name ${1_12_examples})
|
||||
# endforeach ()
|
||||
# foreach (example_name ${1_14_examples})
|
||||
# endforeach ()
|
||||
# foreach (example_name ${1_16_examples})
|
||||
# endforeach ()
|
||||
endif ()
|
||||
|
||||
if (H5EX_BUILD_TESTING)
|
||||
macro (ADD_H5_TEST testname)
|
||||
add_test (
|
||||
NAME ${EXAMPLE_VARNAME}_${testname}-clearall
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-E remove
|
||||
${testname}.h5
|
||||
)
|
||||
add_test (
|
||||
NAME ${EXAMPLE_VARNAME}_${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=$<TARGET_FILE:${EXAMPLE_VARNAME}_${testname}>"
|
||||
-D "TEST_ARGS:STRING="
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_OUTPUT=${testname}.out"
|
||||
-D "TEST_REFERENCE=${testname}.tst"
|
||||
-D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}"
|
||||
-P "${H5EX_RESOURCES_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall)
|
||||
if (HDF5_BUILD_TOOLS)
|
||||
add_test (
|
||||
NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname}
|
||||
COMMAND "${CMAKE_COMMAND}"
|
||||
-D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}"
|
||||
-D "TEST_ARGS:STRING=${ARGN};${testname}.h5"
|
||||
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
|
||||
-D "TEST_OUTPUT=${testname}.ddl.out"
|
||||
-D "TEST_EXPECT=0"
|
||||
-D "TEST_REFERENCE=${testname}.ddl"
|
||||
-D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}"
|
||||
-P "${H5EX_RESOURCES_DIR}/runTest.cmake"
|
||||
)
|
||||
set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname})
|
||||
endif ()
|
||||
endmacro ()
|
||||
|
||||
foreach (example_name ${common_examples} ${1_8_examples})
|
||||
if (${example_name} STREQUAL "h5ex_d_transform")
|
||||
ADD_H5_TEST (${example_name} -n)
|
||||
else ()
|
||||
ADD_H5_TEST (${example_name})
|
||||
endif ()
|
||||
endforeach ()
|
||||
endif ()
|
||||
@@ -0,0 +1,43 @@
|
||||
#-----------------------------------------------------------------------------
|
||||
# Define Sources, one file per application
|
||||
#-----------------------------------------------------------------------------
|
||||
set (examples)
|
||||
|
||||
set (common_examples
|
||||
h5ex_d_alloc
|
||||
h5ex_d_checksum
|
||||
h5ex_d_chunk
|
||||
h5ex_d_compact
|
||||
h5ex_d_extern
|
||||
h5ex_d_fillval
|
||||
h5ex_d_hyper
|
||||
h5ex_d_rdwr
|
||||
h5ex_d_unlimadd
|
||||
h5ex_d_unlimmod
|
||||
)
|
||||
|
||||
if (HDF5_ENABLE_Z_LIB_SUPPORT)
|
||||
set (common_examples ${common_examples}
|
||||
h5ex_d_gzip
|
||||
h5ex_d_shuffle
|
||||
h5ex_d_unlimgzip
|
||||
)
|
||||
endif ()
|
||||
|
||||
if (HDF5_ENABLE_SZIP_SUPPORT)
|
||||
set (common_examples ${common_examples}
|
||||
h5ex_d_szip
|
||||
)
|
||||
endif ()
|
||||
|
||||
if (HDF5_VERSION_MAJOR VERSION_GREATER_EQUAL "1.8" AND NOT ${EXAMPLE_VARNAME}_USE_16_API)
|
||||
set (1_8_examples
|
||||
h5ex_d_nbit
|
||||
h5ex_d_sofloat
|
||||
h5ex_d_soint
|
||||
h5ex_d_transform
|
||||
)
|
||||
else ()
|
||||
set (1_8_examples)
|
||||
endif ()
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# Copyright by The HDF Group.
|
||||
# Copyright by the Board of Trustees of the University of Illinois.
|
||||
# All rights reserved.
|
||||
#
|
||||
# This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
# terms governing use, modification, and redistribution, is contained in
|
||||
# the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
# of the source code distribution tree; Copyright.html can be found at the
|
||||
# root level of an installed copy of the electronic HDF5 document set and
|
||||
# is linked from the top-level documents page. It can also be found at
|
||||
# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
# access to either file, you may request a copy from help@hdfgroup.org.
|
||||
##
|
||||
## Makefile.am
|
||||
## Run automake to generate a Makefile.in from this file.
|
||||
##
|
||||
|
||||
noinst_PROGRAMS = h5ex_d_rdwr h5ex_d_hyper h5ex_d_chunk h5ex_d_gzip \
|
||||
h5ex_d_szip h5ex_d_nbit h5ex_d_soint h5ex_d_sofloat h5ex_d_extern \
|
||||
h5ex_d_compact h5ex_d_unlimadd h5ex_d_unlimmod h5ex_d_unlimgzip \
|
||||
h5ex_d_checksum h5ex_d_shuffle h5ex_d_transform h5ex_d_fillval h5ex_d_alloc
|
||||
|
||||
EXTRA_DIST = tfiles/h5ex_d_rdwr.tst tfiles/h5ex_d_hyper.tst tfiles/h5ex_d_chunk.tst \
|
||||
tfiles/h5ex_d_gzip.tst tfiles/h5ex_d_szip.tst tfiles/h5ex_d_nbit.tst tfiles/h5ex_d_soint.tst \
|
||||
tfiles/h5ex_d_sofloat.tst tfiles/h5ex_d_extern.tst tfiles/h5ex_d_compact.tst \
|
||||
tfiles/h5ex_d_unlimadd.tst tfiles/h5ex_d_unlimmod.tst tfiles/h5ex_d_unlimgzip.tst \
|
||||
tfiles/h5ex_d_checksum.tst tfiles/h5ex_d_shuffle.tst tfiles/h5ex_d_transform.tst \
|
||||
tfiles/h5ex_d_fillval.tst tfiles/h5ex_d_alloc.tst \
|
||||
tfiles/h5ex_d_rdwr.ddl tfiles/h5ex_d_hyper.ddl tfiles/h5ex_d_chunk.ddl \
|
||||
tfiles/h5ex_d_gzip.ddl tfiles/h5ex_d_szip.ddl tfiles/h5ex_d_nbit.ddl tfiles/h5ex_d_soint.ddl \
|
||||
tfiles/h5ex_d_sofloat.ddl tfiles/h5ex_d_extern.ddl tfiles/h5ex_d_compact.ddl \
|
||||
tfiles/h5ex_d_unlimadd.ddl tfiles/h5ex_d_unlimmod.ddl tfiles/h5ex_d_unlimgzip.ddl \
|
||||
tfiles/h5ex_d_checksum.ddl tfiles/h5ex_d_shuffle.ddl tfiles/h5ex_d_transform.ddl \
|
||||
tfiles/h5ex_d_fillval.ddl tfiles/h5ex_d_alloc.ddl test.sh
|
||||
|
||||
TESTS = test.sh
|
||||
|
||||
CLEANFILES = Makefile test.sh
|
||||
@@ -0,0 +1,135 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to set the space allocation time
|
||||
for a dataset. The program first creates two datasets,
|
||||
one with the default allocation time (late) and one with
|
||||
early allocation time, and displays whether each has been
|
||||
allocated and their allocation size. Next, it writes data
|
||||
to the datasets, and again displays whether each has been
|
||||
allocated and their allocation size.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_alloc.h5"
|
||||
#define DATASET1 "DS1"
|
||||
#define DATASET2 "DS2"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define FILLVAL 99
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset1 = H5I_INVALID_HID;
|
||||
hid_t dset2 = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
H5D_space_status_t space_status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t storage_size;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
|
||||
/*
|
||||
* Set the allocation time to "early". This way we can be sure
|
||||
* that reading from the dataset immediately after creation will
|
||||
* return the fill value.
|
||||
*/
|
||||
status = H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_EARLY);
|
||||
|
||||
printf("Creating datasets...\n");
|
||||
printf("%s has allocation time H5D_ALLOC_TIME_LATE\n", DATASET1);
|
||||
printf("%s has allocation time H5D_ALLOC_TIME_EARLY\n\n", DATASET2);
|
||||
|
||||
/*
|
||||
* Create the dataset using the dataset creation property list.
|
||||
*/
|
||||
dset1 = H5Dcreate(file, DATASET1, H5T_STD_I32LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
|
||||
dset2 = H5Dcreate(file, DATASET2, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset1.
|
||||
*/
|
||||
status = H5Dget_space_status(dset1, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset1);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET1,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET1, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset2.
|
||||
*/
|
||||
status = H5Dget_space_status(dset2, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset2);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET2,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET2, (long)storage_size);
|
||||
|
||||
printf("\nWriting data...\n\n");
|
||||
|
||||
/*
|
||||
* Write the data to the datasets.
|
||||
*/
|
||||
status = H5Dwrite(dset1, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
status = H5Dwrite(dset2, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset1.
|
||||
*/
|
||||
status = H5Dget_space_status(dset1, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset1);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET1,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET1, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Retrieve and print space status and storage size for dset2.
|
||||
*/
|
||||
status = H5Dget_space_status(dset2, &space_status);
|
||||
storage_size = H5Dget_storage_size(dset2);
|
||||
printf("Space for %s has%sbeen allocated.\n", DATASET2,
|
||||
space_status == H5D_SPACE_STATUS_ALLOCATED ? " " : " not ");
|
||||
printf("Storage size for %s is: %ld bytes.\n", DATASET2, (long)storage_size);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset1);
|
||||
status = H5Dclose(dset2);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,191 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the Fletcher32 checksum filter. The program first
|
||||
checks if the Fletcher32 filter is available, then if it
|
||||
is it writes integers to a dataset using Fletcher32, then
|
||||
closes the file. Next, it reopens the file, reads back
|
||||
the data, checks if the filter detected an error and
|
||||
outputs the type of filter and the maximum value in the
|
||||
dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_checksum.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1}, chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags, filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if the Fletcher32 filter is available and can be used for
|
||||
* both encoding and decoding. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_FLETCHER32);
|
||||
if (!avail) {
|
||||
printf("Fletcher32 filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_FLETCHER32, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Fletcher32 filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the Fletcher32 filter
|
||||
* and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_fletcher32(dcpl);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Check if the read was successful. Normally we do not perform
|
||||
* error checking in these examples for the sake of clarity, but in
|
||||
* this case we will make an exception because this is how the
|
||||
* fletcher32 checksum filter reports data errors.
|
||||
*/
|
||||
if (status < 0) {
|
||||
fprintf(stderr, "Dataset read failed!\n");
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
return 2;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,219 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create a chunked dataset. The
|
||||
program first writes integers in a hyperslab selection to
|
||||
a chunked dataset with dataspace dimensions of DIM0xDIM1
|
||||
and chunk size of CHUNK0xCHUNK1, then closes the file.
|
||||
Next, it reopens the file, reads back the data, and
|
||||
outputs it to the screen. Finally it reads the data again
|
||||
using a different hyperslab selection, and outputs
|
||||
the result to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_chunk.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 6
|
||||
#define DIM1 8
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
H5D_layout_t layout;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t stride[2];
|
||||
hsize_t count[2];
|
||||
hsize_t block[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data to "1", to make it easier to see the selections.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = 1;
|
||||
|
||||
/*
|
||||
* Print the data to the screen.
|
||||
*/
|
||||
printf("Original Data:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", wdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the chunked dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Define and select the first part of the hyperslab selection.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
stride[0] = 3;
|
||||
stride[1] = 3;
|
||||
count[0] = 2;
|
||||
count[1] = 3;
|
||||
block[0] = 2;
|
||||
block[1] = 2;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Define and select the second part of the hyperslab selection,
|
||||
* which is subtracted from the first selection by the use of
|
||||
* H5S_SELECT_NOTB
|
||||
*/
|
||||
block[0] = 1;
|
||||
block[1] = 1;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve the dataset creation property list, and print the
|
||||
* storage layout.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
layout = H5Pget_layout(dcpl);
|
||||
printf("\nStorage layout for %s is: ", DATASET);
|
||||
switch (layout) {
|
||||
case H5D_COMPACT:
|
||||
printf("H5D_COMPACT\n");
|
||||
break;
|
||||
case H5D_CONTIGUOUS:
|
||||
printf("H5D_CONTIGUOUS\n");
|
||||
break;
|
||||
case H5D_CHUNKED:
|
||||
printf("H5D_CHUNKED\n");
|
||||
break;
|
||||
#if H5_VERSION_GE(1, 10, 0) && !defined(H5_USE_18_API) && !defined(H5_USE_16_API)
|
||||
case H5D_VIRTUAL:
|
||||
printf("H5D_VIRTUAL\n");
|
||||
break;
|
||||
#endif
|
||||
case H5D_LAYOUT_ERROR:
|
||||
case H5D_NLAYOUTS:
|
||||
printf("H5D_LAYOUT_ERROR\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written to disk by hyberslabs:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the read array.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
rdata[i][j] = 0;
|
||||
|
||||
/*
|
||||
* Define and select the hyperslab to use for reading.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
start[0] = 0;
|
||||
start[1] = 1;
|
||||
stride[0] = 4;
|
||||
stride[1] = 4;
|
||||
count[0] = 2;
|
||||
count[1] = 2;
|
||||
block[0] = 2;
|
||||
block[1] = 3;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Read the data using the previously defined hyperslab.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as read from disk by hyperslab:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,139 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a compact
|
||||
dataset. The program first writes integers to a compact
|
||||
dataset with dataspace dimensions of DIM0xDIM1, then
|
||||
closes the file. Next, it reopens the file, reads back
|
||||
the data, and outputs it to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_compact.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
H5D_layout_t layout;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, set the layout to
|
||||
* compact.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_layout(dcpl, H5D_COMPACT);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve the dataset creation property list, and print the
|
||||
* storage layout.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
layout = H5Pget_layout(dcpl);
|
||||
printf("Storage layout for %s is: ", DATASET);
|
||||
switch (layout) {
|
||||
case H5D_COMPACT:
|
||||
printf("H5D_COMPACT\n");
|
||||
break;
|
||||
case H5D_CONTIGUOUS:
|
||||
printf("H5D_CONTIGUOUS\n");
|
||||
break;
|
||||
case H5D_CHUNKED:
|
||||
printf("H5D_CHUNKED\n");
|
||||
break;
|
||||
#if H5_VERSION_GE(1, 10, 0) && !defined(H5_USE_18_API) && !defined(H5_USE_16_API)
|
||||
case H5D_VIRTUAL:
|
||||
printf("H5D_VIRTUAL\n");
|
||||
break;
|
||||
#endif
|
||||
case H5D_LAYOUT_ERROR:
|
||||
case H5D_NLAYOUTS:
|
||||
printf("H5D_LAYOUT_ERROR\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,128 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to an
|
||||
external dataset. The program first writes integers to an
|
||||
external dataset with dataspace dimensions of DIM0xDIM1,
|
||||
then closes the file. Next, it reopens the file, reads
|
||||
back the data, and outputs the name of the external data
|
||||
file and the data to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_extern.h5"
|
||||
#define EXTERNAL "h5ex_d_extern.data"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define NAME_BUF_SIZE 32
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
char name[NAME_BUF_SIZE];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, set the external
|
||||
* file.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_external(dcpl, EXTERNAL, 0, H5F_UNLIMITED);
|
||||
|
||||
/*
|
||||
* Create the external dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the name of the external file. Here we
|
||||
* manually set the last field in name to null, in case the name of
|
||||
* the file is longer than the buffer.
|
||||
*/
|
||||
status = H5Pget_external(dcpl, 0, NAME_BUF_SIZE, name, NULL, NULL);
|
||||
name[NAME_BUF_SIZE - 1] = '\0';
|
||||
printf("%s is stored in file: %s\n", DATASET, name);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to set the fill value for a
|
||||
dataset. The program first sets the fill value to
|
||||
FILLVAL, creates a dataset with dimensions of DIM0xDIM1,
|
||||
reads from the uninitialized dataset, and outputs the
|
||||
contents to the screen. Next, it writes integers to the
|
||||
dataset, reads the data back, and outputs it to the
|
||||
screen. Finally it extends the dataset, reads from it,
|
||||
and outputs the result to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_fillval.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
#define FILLVAL 99
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int rdata2[EDIM0][EDIM1]; /* Read buffer for extension */
|
||||
int fillval;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Set the fill value for the dataset.
|
||||
*/
|
||||
fillval = FILLVAL;
|
||||
status = H5Pset_fill_value(dcpl, H5T_NATIVE_INT, &fillval);
|
||||
|
||||
/*
|
||||
* Set the allocation time to "early". This way we can be sure
|
||||
* that reading from the dataset immediately after creation will
|
||||
* return the fill value.
|
||||
*/
|
||||
status = H5Pset_alloc_time(dcpl, H5D_ALLOC_TIME_EARLY);
|
||||
|
||||
/*
|
||||
* Create the dataset using the dataset creation property list.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Read values from the dataset, which has not been written to yet.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before being written to:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Read the data back.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after being written to:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Read from the extended dataset.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata2[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < extdims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < extdims[1]; j++)
|
||||
printf(" %3d", rdata2[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,177 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using gzip compression (also called zlib or deflate). The
|
||||
program first checks if gzip compression is available,
|
||||
then if it is it writes integers to a dataset using gzip,
|
||||
then closes the file. Next, it reopens the file, reads
|
||||
back the data, and outputs the type of compression and the
|
||||
maximum value in the dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_gzip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the gzip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,179 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a
|
||||
dataset by hyberslabs. The program first writes integers
|
||||
in a hyperslab selection to a dataset with dataspace
|
||||
dimensions of DIM0xDIM1, then closes the file. Next, it
|
||||
reopens the file, reads back the data, and outputs it to
|
||||
the screen. Finally it reads the data again using a
|
||||
different hyperslab selection, and outputs the result to
|
||||
the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_hyper.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 6
|
||||
#define DIM1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t start[2];
|
||||
hsize_t stride[2];
|
||||
hsize_t count[2];
|
||||
hsize_t block[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data to "1", to make it easier to see the selections.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = 1;
|
||||
|
||||
/*
|
||||
* Print the data to the screen.
|
||||
*/
|
||||
printf("Original Data:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", wdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Define and select the first part of the hyperslab selection.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
stride[0] = 3;
|
||||
stride[1] = 3;
|
||||
count[0] = 2;
|
||||
count[1] = 3;
|
||||
block[0] = 2;
|
||||
block[1] = 2;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Define and select the second part of the hyperslab selection,
|
||||
* which is subtracted from the first selection by the use of
|
||||
* H5S_SELECT_NOTB
|
||||
*/
|
||||
block[0] = 1;
|
||||
block[1] = 1;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written to disk by hyberslabs:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize the read array.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
rdata[i][j] = 0;
|
||||
|
||||
/*
|
||||
* Define and select the hyperslab to use for reading.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
start[0] = 0;
|
||||
start[1] = 1;
|
||||
stride[0] = 4;
|
||||
stride[1] = 4;
|
||||
count[0] = 2;
|
||||
count[1] = 2;
|
||||
block[0] = 2;
|
||||
block[1] = 3;
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_SET, start, stride, count, block);
|
||||
|
||||
/*
|
||||
* Read the data using the previously defined hyperslab.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as read from disk by hyperslab:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,189 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the N-Bit filter. The program first checks if the
|
||||
N-Bit filter is available, then if it is it writes
|
||||
integers to a dataset using N-Bit, then closes the file.
|
||||
Next, it reopens the file, reads back the data, and
|
||||
outputs the type of filter and the maximum value in the
|
||||
dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_nbit.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dtype = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if N-Bit compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_NBIT);
|
||||
if (!avail) {
|
||||
printf("N-Bit filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_NBIT, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("N-Bit filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the datatype to use with the N-Bit filter. It has an
|
||||
* uncompressed size of 32 bits, but will have a size of 16 bits
|
||||
* after being packed by the N-Bit filter.
|
||||
*/
|
||||
dtype = H5Tcopy(H5T_STD_I32LE);
|
||||
status = H5Tset_precision(dtype, 16);
|
||||
status = H5Tset_offset(dtype, 5);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the N-Bit filter
|
||||
* and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_nbit(dcpl);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, dtype, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Tclose(dtype);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,101 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data, and
|
||||
outputs it to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_rdwr.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset. We will use all default properties for this
|
||||
* example.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("%s:\n", DATASET);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,204 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the shuffle filter with gzip compression. The
|
||||
program first checks if the shuffle and gzip filters are
|
||||
available, then if they are it writes integers to a
|
||||
dataset using shuffle+gzip, then closes the file. Next,
|
||||
it reopens the file, reads back the data, and outputs the
|
||||
types of filters and the maximum value in the dataset to
|
||||
the screen.
|
||||
|
||||
This file is intended for use with HDF5 Library version 1.8
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_shuffle.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max, nfilters;
|
||||
int i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Similarly, check for availability of the shuffle filter.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SHUFFLE);
|
||||
if (!avail) {
|
||||
printf("Shuffle filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SHUFFLE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Shuffle filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the shuffle
|
||||
* filter and the gzip compression filter and set the chunk size.
|
||||
* The order in which the filters are added here is significant -
|
||||
* we will see much greater results when the shuffle is applied
|
||||
* first. The order in which the filters are added to the property
|
||||
* list is the order in which they will be invoked when writing
|
||||
* data.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_shuffle(dcpl);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve the number of filters, and retrieve and print the
|
||||
* type of each.
|
||||
*/
|
||||
nfilters = H5Pget_nfilters(dcpl);
|
||||
for (i = 0; i < nfilters; i++) {
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, i, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter %d: Type is: ", i);
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,203 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the Scale-Offset filter. The program first checks
|
||||
if the Scale-Offset filter is available, then if it is it
|
||||
writes floating point numbers to a dataset using
|
||||
Scale-Offset, then closes the file Next, it reopens the
|
||||
file, reads back the data, and outputs the type of filter
|
||||
and the maximum value in the dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_sofloat.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
double wdata[DIM0][DIM1]; /* Write buffer */
|
||||
double rdata[DIM0][DIM1]; /* Read buffer */
|
||||
double max, min;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if Scale-Offset compression is available and can be used
|
||||
* for both compression and decompression. Normally we do not
|
||||
* perform error checking in these examples for the sake of
|
||||
* clarity, but in this case we will make an exception because this
|
||||
* filter is an optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SCALEOFFSET);
|
||||
if (!avail) {
|
||||
printf("Scale-Offset filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SCALEOFFSET, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Scale-Offset filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = (double)(i + 1) / (j + 0.3) + j;
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = wdata[0][0];
|
||||
min = wdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++) {
|
||||
if (max < wdata[i][j])
|
||||
max = wdata[i][j];
|
||||
if (min > wdata[i][j])
|
||||
min = wdata[i][j];
|
||||
}
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in write buffer is: %f\n", max);
|
||||
printf("Minimum value in write buffer is: %f\n", min);
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the Scale-Offset
|
||||
* filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_scaleoffset(dcpl, H5Z_SO_FLOAT_DSCALE, 2);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_IEEE_F64LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
min = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++) {
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
if (min > rdata[i][j])
|
||||
min = rdata[i][j];
|
||||
}
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %f\n", DATASET, max);
|
||||
printf("Minimum value in %s is: %f\n", DATASET, min);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using the Scale-Offset filter. The program first checks
|
||||
if the Scale-Offset filter is available, then if it is it
|
||||
writes integers to a dataset using Scale-Offset, then
|
||||
closes the file Next, it reopens the file, reads back the
|
||||
data, and outputs the type of filter and the maximum value
|
||||
in the dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_soint.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if Scale-Offset compression is available and can be used
|
||||
* for both compression and decompression. Normally we do not
|
||||
* perform error checking in these examples for the sake of
|
||||
* clarity, but in this case we will make an exception because this
|
||||
* filter is an optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SCALEOFFSET);
|
||||
if (!avail) {
|
||||
printf("Scale-Offset filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SCALEOFFSET, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("Scale-Offset filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the Scale-Offset
|
||||
* filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_scaleoffset(dcpl, H5Z_SO_INT, H5Z_SO_INT_MINBITS_DEFAULT);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using szip compression. The program first checks if
|
||||
szip compression is available, then if it is it writes
|
||||
integers to a dataset using szip, then closes the file.
|
||||
Next, it reopens the file, reads back the data, and
|
||||
outputs the type of compression and the maximum value in
|
||||
the dataset to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_szip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 32
|
||||
#define DIM1 64
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 8
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
size_t nelmts;
|
||||
unsigned int flags;
|
||||
unsigned int filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
int max;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if szip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_SZIP);
|
||||
if (!avail) {
|
||||
printf("szip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_SZIP, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("szip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the szip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_szip(dcpl, H5_SZIP_NN_OPTION_MASK, 8);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("Filter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Find the maximum value in the dataset, to verify that it was
|
||||
* read correctly.
|
||||
*/
|
||||
max = rdata[0][0];
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
if (max < rdata[i][j])
|
||||
max = rdata[i][j];
|
||||
|
||||
/*
|
||||
* Print the maximum value.
|
||||
*/
|
||||
printf("Maximum value in %s is: %d\n", DATASET, max);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to read and write data to a dataset
|
||||
using a data transform expression. The program first
|
||||
writes integers to a dataset using the transform
|
||||
expression TRANSFORM, then closes the file. Next, it
|
||||
reopens the file, reads back the data without a transform,
|
||||
and outputs the data to the screen. Finally it reads the
|
||||
data using the transform expression RTRANSFORM and outputs
|
||||
the results to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_transform.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define TRANSFORM "x+1"
|
||||
#define RTRANSFORM "x-1"
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dxpl = H5I_INVALID_HID;
|
||||
/* Handles */
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int rdata[DIM0][DIM1]; /* Read buffer */
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Original Data:\n");
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", wdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace. Setting maximum size to NULL sets the maximum
|
||||
* size to be the current size.
|
||||
*/
|
||||
space = H5Screate_simple(2, dims, NULL);
|
||||
|
||||
/*
|
||||
* Create the dataset transfer property list and define the
|
||||
* transform expression.
|
||||
*/
|
||||
dxpl = H5Pcreate(H5P_DATASET_XFER);
|
||||
status = H5Pset_data_transform(dxpl, TRANSFORM);
|
||||
|
||||
/*
|
||||
* Create the dataset using the default properties. Unfortunately
|
||||
* we must save as a native type or the transform operation will
|
||||
* fail.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_NATIVE_INT, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset using the dataset transfer
|
||||
* property list.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, dxpl, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dxpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we begin the read section of this example.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written with transform \"%s\":\n", TRANSFORM);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Create the dataset transfer property list and define the
|
||||
* transform expression.
|
||||
*/
|
||||
dxpl = H5Pcreate(H5P_DATASET_XFER);
|
||||
status = H5Pset_data_transform(dxpl, RTRANSFORM);
|
||||
|
||||
/*
|
||||
* Read the data using the dataset transfer property list.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, dxpl, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nData as written with transform \"%s\" and read with transform \"%s\":\n", TRANSFORM,
|
||||
RTRANSFORM);
|
||||
for (i = 0; i < DIM0; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < DIM1; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dxpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,237 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data,
|
||||
outputs it to the screen, extends the dataset, and writes
|
||||
new data to the extended portions of the dataset. Finally
|
||||
it reopens the file again, reads back the data, and
|
||||
outputs it to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimadd.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t count[2];
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the extended portions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
status = H5Sclose(space);
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Retrieve the dataspace for the newly extended dataset.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Select the entire dataspace.
|
||||
*/
|
||||
status = H5Sselect_all(space);
|
||||
|
||||
/*
|
||||
* Subtract a hyperslab reflecting the original dimensions from the
|
||||
* selection. The selection now contains only the newly extended
|
||||
* portions of the dataset.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
count[0] = dims[0];
|
||||
count[1] = dims[1];
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, NULL, count, NULL);
|
||||
|
||||
/*
|
||||
* Write the data to the selected portion of the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,295 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset with gzip compression. The program first writes
|
||||
integers to a gzip compressed dataset with dataspace
|
||||
dimensions of DIM0xDIM1, then closes the file. Next, it
|
||||
reopens the file, reads back the data, outputs it to the
|
||||
screen, extends the dataset, and writes new data to the
|
||||
extended portions of the dataset. Finally it reopens the
|
||||
file again, reads back the data, and outputs it to the
|
||||
screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimgzip.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
htri_t avail;
|
||||
H5Z_filter_t filter_type;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
hsize_t start[2];
|
||||
hsize_t count[2];
|
||||
size_t nelmts;
|
||||
unsigned int flags, filter_info;
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Check if gzip compression is available and can be used for both
|
||||
* compression and decompression. Normally we do not perform error
|
||||
* checking in these examples for the sake of clarity, but in this
|
||||
* case we will make an exception because this filter is an
|
||||
* optional part of the hdf5 library.
|
||||
*/
|
||||
avail = H5Zfilter_avail(H5Z_FILTER_DEFLATE);
|
||||
if (!avail) {
|
||||
printf("gzip filter not available.\n");
|
||||
return 1;
|
||||
}
|
||||
status = H5Zget_filter_info(H5Z_FILTER_DEFLATE, &filter_info);
|
||||
if (!(filter_info & H5Z_FILTER_CONFIG_ENCODE_ENABLED) ||
|
||||
!(filter_info & H5Z_FILTER_CONFIG_DECODE_ENABLED)) {
|
||||
printf("gzip filter not available for encoding and decoding.\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, add the gzip
|
||||
* compression filter and set the chunk size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_deflate(dcpl, 9);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the compressed unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the extended portions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
status = H5Sclose(space);
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Retrieve the dataspace for the newly extended dataset.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Select the entire dataspace.
|
||||
*/
|
||||
status = H5Sselect_all(space);
|
||||
|
||||
/*
|
||||
* Subtract a hyperslab reflecting the original dimensions from the
|
||||
* selection. The selection now contains only the newly extended
|
||||
* portions of the dataset.
|
||||
*/
|
||||
start[0] = 0;
|
||||
start[1] = 0;
|
||||
count[0] = dims[0];
|
||||
count[1] = dims[1];
|
||||
status = H5Sselect_hyperslab(space, H5S_SELECT_NOTB, start, NULL, count, NULL);
|
||||
|
||||
/*
|
||||
* Write the data to the selected portion of the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, space, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Retrieve dataset creation property list.
|
||||
*/
|
||||
dcpl = H5Dget_create_plist(dset);
|
||||
|
||||
/*
|
||||
* Retrieve and print the filter type. Here we only retrieve the
|
||||
* first filter because we know that we only added one filter.
|
||||
*/
|
||||
nelmts = 0;
|
||||
filter_type = H5Pget_filter(dcpl, 0, &flags, &nelmts, NULL, 0, NULL, &filter_info);
|
||||
printf("\nFilter type is: ");
|
||||
switch (filter_type) {
|
||||
case H5Z_FILTER_DEFLATE:
|
||||
printf("H5Z_FILTER_DEFLATE\n");
|
||||
break;
|
||||
case H5Z_FILTER_SHUFFLE:
|
||||
printf("H5Z_FILTER_SHUFFLE\n");
|
||||
break;
|
||||
case H5Z_FILTER_FLETCHER32:
|
||||
printf("H5Z_FILTER_FLETCHER32\n");
|
||||
break;
|
||||
case H5Z_FILTER_SZIP:
|
||||
printf("H5Z_FILTER_SZIP\n");
|
||||
break;
|
||||
case H5Z_FILTER_NBIT:
|
||||
printf("H5Z_FILTER_NBIT\n");
|
||||
break;
|
||||
case H5Z_FILTER_SCALEOFFSET:
|
||||
printf("H5Z_FILTER_SCALEOFFSET\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,212 @@
|
||||
/************************************************************
|
||||
|
||||
This example shows how to create and extend an unlimited
|
||||
dataset. The program first writes integers to a dataset
|
||||
with dataspace dimensions of DIM0xDIM1, then closes the
|
||||
file. Next, it reopens the file, reads back the data,
|
||||
outputs it to the screen, extends the dataset, and writes
|
||||
new data to the entire extended dataset. Finally it
|
||||
reopens the file again, reads back the data, and outputs it
|
||||
to the screen.
|
||||
|
||||
************************************************************/
|
||||
|
||||
#include "hdf5.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define FILE "h5ex_d_unlimmod.h5"
|
||||
#define DATASET "DS1"
|
||||
#define DIM0 4
|
||||
#define DIM1 7
|
||||
#define EDIM0 6
|
||||
#define EDIM1 10
|
||||
#define CHUNK0 4
|
||||
#define CHUNK1 4
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
hid_t file = H5I_INVALID_HID;
|
||||
hid_t space = H5I_INVALID_HID;
|
||||
hid_t dset = H5I_INVALID_HID;
|
||||
hid_t dcpl = H5I_INVALID_HID;
|
||||
herr_t status;
|
||||
hsize_t dims[2] = {DIM0, DIM1};
|
||||
hsize_t extdims[2] = {EDIM0, EDIM1};
|
||||
hsize_t maxdims[2];
|
||||
hsize_t chunk[2] = {CHUNK0, CHUNK1};
|
||||
int wdata[DIM0][DIM1]; /* Write buffer */
|
||||
int wdata2[EDIM0][EDIM1]; /* Write buffer for extension */
|
||||
int **rdata = NULL; /* Read buffer */
|
||||
int ndims;
|
||||
hsize_t i, j;
|
||||
|
||||
/*
|
||||
* Initialize data.
|
||||
*/
|
||||
for (i = 0; i < DIM0; i++)
|
||||
for (j = 0; j < DIM1; j++)
|
||||
wdata[i][j] = i * j - j;
|
||||
|
||||
/*
|
||||
* Create a new file using the default properties.
|
||||
*/
|
||||
file = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Create dataspace with unlimited dimensions.
|
||||
*/
|
||||
maxdims[0] = H5S_UNLIMITED;
|
||||
maxdims[1] = H5S_UNLIMITED;
|
||||
space = H5Screate_simple(2, dims, maxdims);
|
||||
|
||||
/*
|
||||
* Create the dataset creation property list, and set the chunk
|
||||
* size.
|
||||
*/
|
||||
dcpl = H5Pcreate(H5P_DATASET_CREATE);
|
||||
status = H5Pset_chunk(dcpl, 2, chunk);
|
||||
|
||||
/*
|
||||
* Create the unlimited dataset.
|
||||
*/
|
||||
dset = H5Dcreate(file, DATASET, H5T_STD_I32LE, space, H5P_DEFAULT, dcpl, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Write the data to the dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
status = H5Pclose(dcpl);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* In this next section we read back the data, extend the dataset,
|
||||
* and write new data to the entire dataset.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for read buffer. This is a
|
||||
* two dimensional dataset so the dynamic allocation must be done
|
||||
* in steps.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
|
||||
/*
|
||||
* Allocate array of pointers to rows.
|
||||
*/
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
|
||||
/*
|
||||
* Allocate space for integer data.
|
||||
*/
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
|
||||
/*
|
||||
* Set the rest of the pointers to rows to the correct addresses.
|
||||
*/
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("Dataset before extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Extend the dataset.
|
||||
*/
|
||||
status = H5Dset_extent(dset, extdims);
|
||||
|
||||
/*
|
||||
* Initialize data for writing to the extended dataset.
|
||||
*/
|
||||
for (i = 0; i < EDIM0; i++)
|
||||
for (j = 0; j < EDIM1; j++)
|
||||
wdata2[i][j] = j;
|
||||
|
||||
/*
|
||||
* Write the data to the extended dataset.
|
||||
*/
|
||||
status = H5Dwrite(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, wdata2[0]);
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
/*
|
||||
* Now we simply read back the data and output it to the screen.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Open file and dataset using the default properties.
|
||||
*/
|
||||
file = H5Fopen(FILE, H5F_ACC_RDONLY, H5P_DEFAULT);
|
||||
dset = H5Dopen(file, DATASET, H5P_DEFAULT);
|
||||
|
||||
/*
|
||||
* Get dataspace and allocate memory for the read buffer as before.
|
||||
*/
|
||||
space = H5Dget_space(dset);
|
||||
ndims = H5Sget_simple_extent_dims(space, dims, NULL);
|
||||
rdata = (int **)malloc(dims[0] * sizeof(int *));
|
||||
rdata[0] = (int *)malloc(dims[0] * dims[1] * sizeof(int));
|
||||
for (i = 1; i < dims[0]; i++)
|
||||
rdata[i] = rdata[0] + i * dims[1];
|
||||
|
||||
/*
|
||||
* Read the data using the default properties.
|
||||
*/
|
||||
status = H5Dread(dset, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, rdata[0]);
|
||||
|
||||
/*
|
||||
* Output the data to the screen.
|
||||
*/
|
||||
printf("\nDataset after extension:\n");
|
||||
for (i = 0; i < dims[0]; i++) {
|
||||
printf(" [");
|
||||
for (j = 0; j < dims[1]; j++)
|
||||
printf(" %3d", rdata[i][j]);
|
||||
printf("]\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Close and release resources.
|
||||
*/
|
||||
free(rdata[0]);
|
||||
free(rdata);
|
||||
status = H5Dclose(dset);
|
||||
status = H5Sclose(space);
|
||||
status = H5Fclose(file);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Executable
+181
@@ -0,0 +1,181 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# Copyright by The HDF Group.
|
||||
# Copyright by the Board of Trustees of the University of Illinois.
|
||||
# All rights reserved.
|
||||
#
|
||||
# This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
# terms governing use, modification, and redistribution, is contained in
|
||||
# the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
# of the source code distribution tree; Copyright.html can be found at the
|
||||
# root level of an installed copy of the electronic HDF5 document set and
|
||||
# is linked from the top-level documents page. It can also be found at
|
||||
# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
# access to either file, you may request a copy from help@hdfgroup.org.
|
||||
|
||||
srcdir=@srcdir@
|
||||
|
||||
|
||||
case $CC in
|
||||
*/*) H5DUMP=`echo $CC | sed -e 's/\/[^/]*$/\/h5dump/'`;
|
||||
test -x $H5DUMP || H5DUMP=h5dump;;
|
||||
*) H5DUMP=h5dump;;
|
||||
esac
|
||||
|
||||
|
||||
case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
|
||||
*c*,-n*) ECHO_N= ECHO_C='
|
||||
' ;;
|
||||
*c*,* ) ECHO_N=-n ECHO_C= ;;
|
||||
*) ECHO_N= ECHO_C='\c' ;;
|
||||
esac
|
||||
ECHO_N="echo $ECHO_N"
|
||||
|
||||
|
||||
exout() {
|
||||
$*
|
||||
}
|
||||
|
||||
dumpout() {
|
||||
$H5DUMP $*
|
||||
}
|
||||
|
||||
# compare current version, required version.
|
||||
# returns if cur_ver < req_ver is true.
|
||||
version_compare() {
|
||||
version_lt=0
|
||||
if [ ! "$(printf '%s\n' "$1" "$2" | sort -V | head -n1)" = "$2" ]; then
|
||||
version_lt=1
|
||||
fi
|
||||
}
|
||||
|
||||
H5_LIBVER=@H5_LIBVER@
|
||||
H5_LIBVER_DIR=@H5_LIBVER_DIR@
|
||||
|
||||
topics="alloc checksum chunk compact extern fillval gzip hyper \
|
||||
rdwr shuffle szip unlimadd unlimgzip unlimmod"
|
||||
topics18=""
|
||||
|
||||
version_compare "$H5_LIBVER" "1.8.0"
|
||||
# check if HDF5 version is < 1.8.0
|
||||
if [ "$version_lt" = 1 ]; then
|
||||
dir16="\/16"
|
||||
else
|
||||
dir16=""
|
||||
topics18="nbit sofloat soint transform"
|
||||
fi
|
||||
|
||||
return_val=0
|
||||
|
||||
#Remove external data file from h5ex_d_extern
|
||||
rm -f h5ex_d_extern.data
|
||||
|
||||
for topic in $topics
|
||||
do
|
||||
fname=h5ex_d_$topic
|
||||
$ECHO_N "Testing C/H5D/$fname...$ECHO_C"
|
||||
exout .$dir16/$fname >tmp.test
|
||||
status=$?
|
||||
if test $status -eq 1
|
||||
then
|
||||
echo " Unsupported feature"
|
||||
status=0
|
||||
else
|
||||
cmp -s tmp.test $srcdir/tfiles/16/$fname.tst
|
||||
status=$?
|
||||
if test $status -ne 0
|
||||
then
|
||||
echo " FAILED!"
|
||||
else
|
||||
dumpout $fname.h5 >tmp.test
|
||||
rm -f $fname.h5
|
||||
cmp -s tmp.test $srcdir/tfiles/16/$fname.ddl
|
||||
status=$?
|
||||
if test $status -ne 0
|
||||
then
|
||||
echo " FAILED!"
|
||||
else
|
||||
echo " Passed"
|
||||
fi
|
||||
fi
|
||||
return_val=`expr $status + $return_val`
|
||||
fi
|
||||
done
|
||||
|
||||
#######Non-standard tests#######
|
||||
USE_ALT=""
|
||||
### Set default tfiles directory for tests
|
||||
nbitdir="18"
|
||||
version_compare "$H5_LIBVER" "1.8.23"
|
||||
# check if HDF5 version is < 1.8.23
|
||||
if [ "$version_lt" = 1 ]; then
|
||||
USE_ALT="22"
|
||||
else
|
||||
# check if HDF5 version is >= 1.10.0 and < 1.10.8
|
||||
version_compare "$H5_LIBVER" "1.10.0"
|
||||
if [ "$version_lt" = 0 ]; then
|
||||
version_compare "$H5_LIBVER" "1.10.8"
|
||||
if [ "$version_lt" = 1 ]; then
|
||||
USE_ALT="07"
|
||||
nbitdir="110"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
for topic in $topics18
|
||||
do
|
||||
fname=h5ex_d_$topic
|
||||
$ECHO_N "Testing C/H5D/$fname...$ECHO_C"
|
||||
exout ./$fname >tmp.test
|
||||
status=$?
|
||||
if test $status -eq 1
|
||||
then
|
||||
echo " Unsupported feature"
|
||||
status=0
|
||||
else
|
||||
if [[ $fname == "h5ex_d_nbit" ]]
|
||||
then
|
||||
tdir=$nbitdir
|
||||
if [[ $USE_ALT == "" ]]
|
||||
then
|
||||
### set USE_ALT=07 if not set above
|
||||
USE_ALT="07"
|
||||
fi
|
||||
else
|
||||
tdir=18
|
||||
### unset USE_ALT for the other topics
|
||||
USE_ALT=""
|
||||
fi
|
||||
cmp -s tmp.test $srcdir/tfiles/18/$fname.tst
|
||||
status=$?
|
||||
if test $status -ne 0
|
||||
then
|
||||
echo " FAILED!"
|
||||
else
|
||||
if [[ $fname == "h5ex_d_transform" ]]
|
||||
then
|
||||
targ="-n"
|
||||
else
|
||||
targ=""
|
||||
fi
|
||||
dumpout $targ $fname.h5 >tmp.test
|
||||
rm -f $fname.h5
|
||||
cmp -s tmp.test $srcdir/tfiles/$tdir/$fname$USE_ALT.ddl
|
||||
status=$?
|
||||
if test $status -ne 0
|
||||
then
|
||||
echo " FAILED!"
|
||||
else
|
||||
echo " Passed"
|
||||
fi
|
||||
fi
|
||||
return_val=`expr $status + $return_val`
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
#Remove external data file from h5ex_d_extern
|
||||
rm -f h5ex_d_extern.data
|
||||
rm -f tmp.test
|
||||
echo "$return_val tests failed in C/H5D/"
|
||||
exit $return_val
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_nbit.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE 32-bit little-endian integer
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
HDF5 "h5ex_d_alloc.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 4, 7 ) / ( 4, 7 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12
|
||||
}
|
||||
}
|
||||
DATASET "DS2" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 4, 7 ) / ( 4, 7 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
Creating datasets...
|
||||
DS1 has allocation time H5D_ALLOC_TIME_LATE
|
||||
DS2 has allocation time H5D_ALLOC_TIME_EARLY
|
||||
|
||||
Space for DS1 has not been allocated.
|
||||
Storage size for DS1 is: 0 bytes.
|
||||
Space for DS2 has been allocated.
|
||||
Storage size for DS2 is: 112 bytes.
|
||||
|
||||
Writing data...
|
||||
|
||||
Space for DS1 has been allocated.
|
||||
Storage size for DS1 is: 112 bytes.
|
||||
Space for DS2 has been allocated.
|
||||
Storage size for DS2 is: 112 bytes.
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_checksum.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
Filter type is: H5Z_FILTER_FLETCHER32
|
||||
Maximum value in DS1 is: 1890
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_chunk.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 8 ) / ( 6, 8 ) }
|
||||
DATA {
|
||||
(0,0): 0, 1, 0, 0, 1, 0, 0, 1,
|
||||
(1,0): 1, 1, 0, 1, 1, 0, 1, 1,
|
||||
(2,0): 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(3,0): 0, 1, 0, 0, 1, 0, 0, 1,
|
||||
(4,0): 1, 1, 0, 1, 1, 0, 1, 1,
|
||||
(5,0): 0, 0, 0, 0, 0, 0, 0, 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
Original Data:
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
|
||||
Storage layout for DS1 is: H5D_CHUNKED
|
||||
|
||||
Data as written to disk by hyberslabs:
|
||||
[ 0 1 0 0 1 0 0 1]
|
||||
[ 1 1 0 1 1 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 1 0 0 1 0 0 1]
|
||||
[ 1 1 0 1 1 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
|
||||
Data as read from disk by hyperslab:
|
||||
[ 0 1 0 0 0 0 0 1]
|
||||
[ 0 1 0 1 0 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 1 0 1 0 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
@@ -0,0 +1,14 @@
|
||||
HDF5 "h5ex_d_compact.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 4, 7 ) / ( 4, 7 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
Storage layout for DS1 is: H5D_COMPACT
|
||||
DS1:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
@@ -0,0 +1,14 @@
|
||||
HDF5 "h5ex_d_extern.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 4, 7 ) / ( 4, 7 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
DS1 is stored in file: h5ex_d_extern.data
|
||||
DS1:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_fillval.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 10 ) / ( H5S_UNLIMITED, H5S_UNLIMITED ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, 99, 99, 99,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 99, 99, 99,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 99, 99, 99,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 99, 99, 99,
|
||||
(4,0): 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
|
||||
(5,0): 99, 99, 99, 99, 99, 99, 99, 99, 99, 99
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
Dataset before being written to:
|
||||
[ 99 99 99 99 99 99 99]
|
||||
[ 99 99 99 99 99 99 99]
|
||||
[ 99 99 99 99 99 99 99]
|
||||
[ 99 99 99 99 99 99 99]
|
||||
|
||||
Dataset after being written to:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
|
||||
Dataset after extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6 99 99 99]
|
||||
[ 0 0 0 0 0 0 0 99 99 99]
|
||||
[ 0 1 2 3 4 5 6 99 99 99]
|
||||
[ 0 2 4 6 8 10 12 99 99 99]
|
||||
[ 99 99 99 99 99 99 99 99 99 99]
|
||||
[ 99 99 99 99 99 99 99 99 99 99]
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_gzip.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
Filter type is: H5Z_FILTER_DEFLATE
|
||||
Maximum value in DS1 is: 1890
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_hyper.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 8 ) / ( 6, 8 ) }
|
||||
DATA {
|
||||
(0,0): 0, 1, 0, 0, 1, 0, 0, 1,
|
||||
(1,0): 1, 1, 0, 1, 1, 0, 1, 1,
|
||||
(2,0): 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(3,0): 0, 1, 0, 0, 1, 0, 0, 1,
|
||||
(4,0): 1, 1, 0, 1, 1, 0, 1, 1,
|
||||
(5,0): 0, 0, 0, 0, 0, 0, 0, 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
Original Data:
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
[ 1 1 1 1 1 1 1 1]
|
||||
|
||||
Data as written to disk by hyberslabs:
|
||||
[ 0 1 0 0 1 0 0 1]
|
||||
[ 1 1 0 1 1 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 1 0 0 1 0 0 1]
|
||||
[ 1 1 0 1 1 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
|
||||
Data as read from disk by hyperslab:
|
||||
[ 0 1 0 0 0 0 0 1]
|
||||
[ 0 1 0 1 0 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
[ 0 1 0 1 0 0 1 1]
|
||||
[ 0 0 0 0 0 0 0 0]
|
||||
@@ -0,0 +1,14 @@
|
||||
HDF5 "h5ex_d_rdwr.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 4, 7 ) / ( 4, 7 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
DS1:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_shuffle.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
Filter 0: Type is: H5Z_FILTER_SHUFFLE
|
||||
Filter 1: Type is: H5Z_FILTER_DEFLATE
|
||||
Maximum value in DS1 is: 1890
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_szip.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
Filter type is: H5Z_FILTER_SZIP
|
||||
Maximum value in DS1 is: 1890
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_unlimadd.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 10 ) / ( H5S_UNLIMITED, H5S_UNLIMITED ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, 7, 8, 9,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 7, 8, 9,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 7, 8, 9,
|
||||
(4,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(5,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
Dataset before extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
|
||||
Dataset after extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6 7 8 9]
|
||||
[ 0 0 0 0 0 0 0 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
[ 0 2 4 6 8 10 12 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_unlimgzip.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 10 ) / ( H5S_UNLIMITED, H5S_UNLIMITED ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, 7, 8, 9,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 7, 8, 9,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 7, 8, 9,
|
||||
(4,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(5,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
Dataset before extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
|
||||
Filter type is: H5Z_FILTER_DEFLATE
|
||||
Dataset after extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6 7 8 9]
|
||||
[ 0 0 0 0 0 0 0 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
[ 0 2 4 6 8 10 12 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
[ 0 1 2 3 4 5 6 7 8 9]
|
||||
@@ -0,0 +1,16 @@
|
||||
HDF5 "h5ex_d_unlimmod.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 6, 10 ) / ( H5S_UNLIMITED, H5S_UNLIMITED ) }
|
||||
DATA {
|
||||
(0,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(1,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(3,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(4,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
|
||||
(5,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
Dataset before extension:
|
||||
[ 0 -1 -2 -3 -4 -5 -6]
|
||||
[ 0 0 0 0 0 0 0]
|
||||
[ 0 1 2 3 4 5 6]
|
||||
[ 0 2 4 6 8 10 12]
|
||||
|
||||
Dataset after extension:
|
||||
[ 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,0 +1,191 @@
|
||||
HDF5 "h5ex_d_nbit.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE 32-bit little-endian integer 16-bit precision
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
Filter type is: H5Z_FILTER_NBIT
|
||||
Maximum value in DS1 is: 1890
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_nbit.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE 32-bit little-endian integer 16-bit precision
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_nbit.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE 32-bit little-endian integer
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,326 @@
|
||||
HDF5 "h5ex_d_sofloat.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_IEEE_F64LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 3.32923, 1.76923, 2.43923, 3.29923, 4.22923, 5.18923, 6.15923,
|
||||
(0,7): 7.13923, 8.12048, 9.11048, 10.1005, 11.0905, 12.0805, 13.0705,
|
||||
(0,14): 14.0705, 15.0605, 16.0613, 17.0613, 18.0513, 19.0513, 20.0513,
|
||||
(0,21): 21.0513, 22.0413, 23.0413, 24.0412, 25.0412, 26.0412, 27.0412,
|
||||
(0,28): 28.0312, 29.0312, 30.0312, 31.0312, 32.031, 33.031, 34.031,
|
||||
(0,35): 35.031, 36.031, 37.031, 38.031, 39.021, 40.0248, 41.0248,
|
||||
(0,42): 42.0248, 43.0248, 44.0248, 45.0248, 46.0248, 47.0248, 48.0207,
|
||||
(0,49): 49.0207, 50.0207, 51.0207, 52.0207, 53.0207, 54.0207, 55.0207,
|
||||
(0,56): 56.0178, 57.0178, 58.0178, 59.0178, 60.0178, 61.0178, 62.0178,
|
||||
(0,63): 63.0178,
|
||||
(1,0): 6.66923, 2.53923, 2.86923, 3.60923, 4.46923, 5.37923, 6.31923,
|
||||
(1,7): 7.26923, 8.24048, 9.21048, 10.1905, 11.1805, 12.1605, 13.1505,
|
||||
(1,14): 14.1405, 15.1305, 16.1213, 17.1113, 18.1113, 19.1013, 20.1013,
|
||||
(1,21): 21.0913, 22.0913, 23.0813, 24.0812, 25.0812, 26.0712, 27.0712,
|
||||
(1,28): 28.0712, 29.0712, 30.0612, 31.0612, 32.061, 33.061, 34.061,
|
||||
(1,35): 35.061, 36.051, 37.051, 38.051, 39.051, 40.0448, 41.0448,
|
||||
(1,42): 42.0448, 43.0448, 44.0448, 45.0448, 46.0448, 47.0448, 48.0407,
|
||||
(1,49): 49.0407, 50.0407, 51.0407, 52.0407, 53.0407, 54.0407, 55.0407,
|
||||
(1,56): 56.0378, 57.0378, 58.0378, 59.0378, 60.0378, 61.0278, 62.0278,
|
||||
(1,63): 63.0278,
|
||||
(2,0): 9.99923, 3.30923, 3.30923, 3.90923, 4.69923, 5.56923, 6.47923,
|
||||
(2,7): 7.40923, 8.36048, 9.32048, 10.2905, 11.2705, 12.2405, 13.2305,
|
||||
(2,14): 14.2105, 15.2005, 16.1813, 17.1713, 18.1613, 19.1513, 20.1513,
|
||||
(2,21): 21.1413, 22.1313, 23.1313, 24.1212, 25.1212, 26.1112, 27.1112,
|
||||
(2,28): 28.1012, 29.1012, 30.1012, 31.0912, 32.091, 33.091, 34.091,
|
||||
(2,35): 35.081, 36.081, 37.081, 38.081, 39.081, 40.0748, 41.0748,
|
||||
(2,42): 42.0748, 43.0648, 44.0648, 45.0648, 46.0648, 47.0648, 48.0607,
|
||||
(2,49): 49.0607, 50.0607, 51.0607, 52.0607, 53.0607, 54.0507, 55.0507,
|
||||
(2,56): 56.0578, 57.0478, 58.0478, 59.0478, 60.0478, 61.0478, 62.0478,
|
||||
(2,63): 63.0478,
|
||||
(3,0): 13.3292, 4.07923, 3.73923, 4.20923, 4.92923, 5.75923, 6.63923,
|
||||
(3,7): 7.54923, 8.48048, 9.43048, 10.3905, 11.3505, 12.3205, 13.3005,
|
||||
(3,14): 14.2805, 15.2605, 16.2413, 17.2313, 18.2213, 19.2113, 20.2013,
|
||||
(3,21): 21.1913, 22.1813, 23.1713, 24.1612, 25.1612, 26.1512, 27.1512,
|
||||
(3,28): 28.1412, 29.1412, 30.1312, 31.1312, 32.121, 33.121, 34.121,
|
||||
(3,35): 35.111, 36.111, 37.111, 38.101, 39.101, 40.0948, 41.0948,
|
||||
(3,42): 42.0948, 43.0948, 44.0948, 45.0848, 46.0848, 47.0848, 48.0807,
|
||||
(3,49): 49.0807, 50.0807, 51.0807, 52.0807, 53.0707, 54.0707, 55.0707,
|
||||
(3,56): 56.0678, 57.0678, 58.0678, 59.0678, 60.0678, 61.0678, 62.0678,
|
||||
(3,63): 63.0678,
|
||||
(4,0): 16.6639, 4.84391, 4.17391, 4.51391, 5.16391, 5.94391, 6.79391,
|
||||
(4,7): 7.68391, 8.60241, 9.54241, 10.4824, 11.4424, 12.4024, 13.3724,
|
||||
(4,14): 14.3524, 15.3224, 16.3067, 17.2867, 18.2767, 19.2567, 20.2467,
|
||||
(4,21): 21.2367, 22.2267, 23.2167, 24.2058, 25.1958, 26.1858, 27.1858,
|
||||
(4,28): 28.1758, 29.1658, 30.1658, 31.1558, 32.1548, 33.1548, 34.1448,
|
||||
(4,35): 35.1448, 36.1348, 37.1348, 38.1348, 39.1248, 40.1241, 41.1241,
|
||||
(4,42): 42.1141, 43.1141, 44.1141, 45.1141, 46.1041, 47.1041, 48.1035,
|
||||
(4,49): 49.1035, 50.1035, 51.0935, 52.0935, 53.0935, 54.0935, 55.0935,
|
||||
(4,56): 56.0888, 57.0888, 58.0888, 59.0888, 60.0788, 61.0788, 62.0788,
|
||||
(4,63): 63.0788,
|
||||
(5,0): 20.0039, 5.61391, 4.60391, 4.81391, 5.39391, 6.13391, 6.95391,
|
||||
(5,7): 7.82391, 8.72241, 9.64241, 10.5824, 11.5324, 12.4924, 13.4524,
|
||||
(5,14): 14.4224, 15.3924, 16.3667, 17.3467, 18.3267, 19.3067, 20.2967,
|
||||
(5,21): 21.2767, 22.2667, 23.2567, 24.2458, 25.2358, 26.2258, 27.2158,
|
||||
(5,28): 28.2158, 29.2058, 30.1958, 31.1958, 32.1848, 33.1848, 34.1748,
|
||||
(5,35): 35.1748, 36.1648, 37.1648, 38.1548, 39.1548, 40.1441, 41.1441,
|
||||
(5,42): 42.1441, 43.1341, 44.1341, 45.1341, 46.1341, 47.1241, 48.1235,
|
||||
(5,49): 49.1235, 50.1235, 51.1135, 52.1135, 53.1135, 54.1135, 55.1035,
|
||||
(5,56): 56.1088, 57.1088, 58.0988, 59.0988, 60.0988, 61.0988, 62.0988,
|
||||
(5,63): 63.0988,
|
||||
(6,0): 23.3339, 6.38391, 5.04391, 5.12391, 5.62391, 6.32391, 7.11391,
|
||||
(6,7): 7.95391, 8.84241, 9.75241, 10.6824, 11.6224, 12.5724, 13.5224,
|
||||
(6,14): 14.4924, 15.4624, 16.4267, 17.4067, 18.3867, 19.3667, 20.3467,
|
||||
(6,21): 21.3267, 22.3167, 23.2967, 24.2858, 25.2758, 26.2658, 27.2558,
|
||||
(6,28): 28.2458, 29.2358, 30.2358, 31.2258, 32.2148, 33.2148, 34.2048,
|
||||
(6,35): 35.1948, 36.1948, 37.1848, 38.1848, 39.1748, 40.1741, 41.1741,
|
||||
(6,42): 42.1641, 43.1641, 44.1541, 45.1541, 46.1541, 47.1441, 48.1435,
|
||||
(6,49): 49.1435, 50.1435, 51.1335, 52.1335, 53.1335, 54.1335, 55.1235,
|
||||
(6,56): 56.1288, 57.1188, 58.1188, 59.1188, 60.1188, 61.1188, 62.1088,
|
||||
(6,63): 63.1088,
|
||||
(7,0): 26.6639, 7.15391, 5.47391, 5.42391, 5.86391, 6.51391, 7.27391,
|
||||
(7,7): 8.09391, 8.96241, 9.86241, 10.7724, 11.7124, 12.6524, 13.6024,
|
||||
(7,14): 14.5624, 15.5224, 16.4867, 17.4667, 18.4367, 19.4167, 20.3967,
|
||||
(7,21): 21.3767, 22.3567, 23.3467, 24.3258, 25.3158, 26.3058, 27.2958,
|
||||
(7,28): 28.2858, 29.2758, 30.2658, 31.2558, 32.2448, 33.2448, 34.2348,
|
||||
(7,35): 35.2248, 36.2248, 37.2148, 38.2048, 39.2048, 40.1941, 41.1941,
|
||||
(7,42): 42.1941, 43.1841, 44.1841, 45.1741, 46.1741, 47.1741, 48.1635,
|
||||
(7,49): 49.1635, 50.1635, 51.1535, 52.1535, 53.1535, 54.1435, 55.1435,
|
||||
(7,56): 56.1388, 57.1388, 58.1388, 59.1388, 60.1288, 61.1288, 62.1288,
|
||||
(7,63): 63.1288,
|
||||
(8,0): 29.9973, 7.92727, 5.91727, 5.72727, 6.09727, 6.69727, 7.42727,
|
||||
(8,7): 8.23727, 9.08434, 9.96434, 10.8743, 11.7943, 12.7343, 13.6743,
|
||||
(8,14): 14.6343, 15.5843, 16.5521, 17.5221, 18.4921, 19.4621, 20.4421,
|
||||
(8,21): 21.4221, 22.4021, 23.3821, 24.3704, 25.3604, 26.3404, 27.3304,
|
||||
(8,28): 28.3204, 29.3104, 30.3004, 31.2904, 32.2786, 33.2686, 34.2586,
|
||||
(8,35): 35.2586, 36.2486, 37.2386, 38.2386, 39.2286, 40.2233, 41.2133,
|
||||
(8,42): 42.2133, 43.2033, 44.2033, 45.2033, 46.1933, 47.1933, 48.1863,
|
||||
(8,49): 49.1863, 50.1763, 51.1763, 52.1763, 53.1663, 54.1663, 55.1663,
|
||||
(8,56): 56.1599, 57.1599, 58.1499, 59.1499, 60.1499, 61.1499, 62.1399,
|
||||
(8,63): 63.1399,
|
||||
(9,0): 33.3373, 8.69727, 6.34727, 6.02727, 6.32727, 6.88727, 7.58727,
|
||||
(9,7): 8.36727, 9.20434, 10.0743, 10.9743, 11.8843, 12.8143, 13.7543,
|
||||
(9,14): 14.6943, 15.6543, 16.6121, 17.5821, 18.5421, 19.5221, 20.4921,
|
||||
(9,21): 21.4721, 22.4521, 23.4321, 24.4104, 25.3904, 26.3804, 27.3704,
|
||||
(9,28): 28.3504, 29.3404, 30.3304, 31.3204, 32.3086, 33.2986, 34.2886,
|
||||
(9,35): 35.2786, 36.2786, 37.2686, 38.2586, 39.2586, 40.2433, 41.2433,
|
||||
(9,42): 42.2333, 43.2333, 44.2233, 45.2233, 46.2133, 47.2133, 48.2063,
|
||||
(9,49): 49.2063, 50.1963, 51.1963, 52.1863, 53.1863, 54.1863, 55.1763,
|
||||
(9,56): 56.1799, 57.1699, 58.1699, 59.1699, 60.1699, 61.1599, 62.1599,
|
||||
(9,63): 63.1599,
|
||||
(10,0): 36.6673, 9.45727, 6.78727, 6.33727, 6.55727, 7.07727, 7.74727,
|
||||
(10,7): 8.50727, 9.32434, 10.1843, 11.0643, 11.9743, 12.8943, 13.8243,
|
||||
(10,14): 14.7643, 15.7143, 16.6721, 17.6321, 18.6021, 19.5721, 20.5421,
|
||||
(10,21): 21.5121, 22.4921, 23.4721, 24.4504, 25.4304, 26.4204, 27.4004,
|
||||
(10,28): 28.3904, 29.3804, 30.3604, 31.3504, 32.3386, 33.3286, 34.3186,
|
||||
(10,35): 35.3086, 36.2986, 37.2986, 38.2886, 39.2786, 40.2733, 41.2633,
|
||||
(10,42): 42.2633, 43.2533, 44.2433, 45.2433, 46.2333, 47.2333, 48.2263,
|
||||
(10,49): 49.2263, 50.2163, 51.2163, 52.2063, 53.2063, 54.2063, 55.1963,
|
||||
(10,56): 56.1999, 57.1899, 58.1899, 59.1899, 60.1799, 61.1799, 62.1799,
|
||||
(10,63): 63.1699,
|
||||
(11,0): 39.9973, 10.2273, 7.21727, 6.63727, 6.78727, 7.26727, 7.90727,
|
||||
(11,7): 8.64727, 9.44434, 10.2943, 11.1643, 12.0643, 12.9743, 13.9043,
|
||||
(11,14): 14.8343, 15.7843, 16.7321, 17.6921, 18.6521, 19.6221, 20.5921,
|
||||
(11,21): 21.5621, 22.5421, 23.5121, 24.4904, 25.4704, 26.4604, 27.4404,
|
||||
(11,28): 28.4204, 29.4104, 30.4004, 31.3804, 32.3686, 33.3586, 34.3486,
|
||||
(11,35): 35.3386, 36.3286, 37.3186, 38.3086, 39.3086, 40.2933, 41.2933,
|
||||
(11,42): 42.2833, 43.2733, 44.2733, 45.2633, 46.2633, 47.2533, 48.2463,
|
||||
(11,49): 49.2463, 50.2363, 51.2363, 52.2263, 53.2263, 54.2163, 55.2163,
|
||||
(11,56): 56.2099, 57.2099, 58.2099, 59.1999, 60.1999, 61.1999, 62.1899,
|
||||
(11,63): 63.1899,
|
||||
(12,0): 43.3294, 10.9994, 7.64939, 6.93939, 7.01939, 7.44939, 8.05939,
|
||||
(12,7): 8.77939, 9.56627, 10.3963, 11.2663, 12.1463, 13.0563, 13.9763,
|
||||
(12,14): 14.9063, 15.8463, 16.7975, 17.7475, 18.7075, 19.6775, 20.6375,
|
||||
(12,21): 21.6075, 22.5875, 23.5575, 24.535, 25.515, 26.495, 27.475,
|
||||
(12,28): 28.455, 29.445, 30.425, 31.415, 32.4025, 33.3925, 34.3825,
|
||||
(12,35): 35.3725, 36.3625, 37.3525, 38.3425, 39.3325, 40.3226, 41.3126,
|
||||
(12,42): 42.3026, 43.3026, 44.2926, 45.2826, 46.2826, 47.2726, 48.2692,
|
||||
(12,49): 49.2592, 50.2592, 51.2492, 52.2492, 53.2392, 54.2392, 55.2392,
|
||||
(12,56): 56.2309, 57.2309, 58.2209, 59.2209, 60.2109, 61.2109, 62.2109,
|
||||
(12,63): 63.2009,
|
||||
(13,0): 46.6694, 11.7694, 8.08939, 7.23939, 7.25939, 7.63939, 8.21939,
|
||||
(13,7): 8.91939, 9.68627, 10.5063, 11.3563, 12.2363, 13.1363, 14.0563,
|
||||
(13,14): 14.9763, 15.9163, 16.8575, 17.8075, 18.7675, 19.7275, 20.6875,
|
||||
(13,21): 21.6575, 22.6275, 23.5975, 24.575, 25.555, 26.535, 27.515,
|
||||
(13,28): 28.495, 29.475, 30.465, 31.445, 32.4325, 33.4225, 34.4125,
|
||||
(13,35): 35.3925, 36.3825, 37.3725, 38.3625, 39.3525, 40.3426, 41.3426,
|
||||
(13,42): 42.3326, 43.3226, 44.3126, 45.3126, 46.3026, 47.2926, 48.2892,
|
||||
(13,49): 49.2792, 50.2792, 51.2692, 52.2692, 53.2592, 54.2592, 55.2492,
|
||||
(13,56): 56.2509, 57.2409, 58.2409, 59.2409, 60.2309, 61.2309, 62.2209,
|
||||
(13,63): 63.2209,
|
||||
(14,0): 49.9994, 12.5394, 8.51939, 7.54939, 7.48939, 7.82939, 8.37939,
|
||||
(14,7): 9.05939, 9.80627, 10.6163, 11.4563, 12.3263, 13.2163, 14.1263,
|
||||
(14,14): 15.0463, 15.9763, 16.9175, 17.8675, 18.8175, 19.7775, 20.7375,
|
||||
(14,21): 21.7075, 22.6775, 23.6475, 24.615, 25.595, 26.575, 27.545,
|
||||
(14,28): 28.535, 29.515, 30.495, 31.475, 32.4625, 33.4525, 34.4325,
|
||||
(14,35): 35.4225, 36.4125, 37.4025, 38.3925, 39.3825, 40.3726, 41.3626,
|
||||
(14,42): 42.3526, 43.3426, 44.3426, 45.3326, 46.3226, 47.3126, 48.3092,
|
||||
(14,49): 49.3092, 50.2992, 51.2892, 52.2892, 53.2792, 54.2792, 55.2692,
|
||||
(14,56): 56.2709, 57.2609, 58.2609, 59.2509, 60.2509, 61.2409, 62.2409,
|
||||
(14,63): 63.2409,
|
||||
(15,0): 53.3294, 13.3094, 8.95939, 7.84939, 7.71939, 8.01939, 8.53939,
|
||||
(15,7): 9.18939, 9.92627, 10.7163, 11.5563, 12.4163, 13.2963, 14.2063,
|
||||
(15,14): 15.1163, 16.0463, 16.9775, 17.9275, 18.8775, 19.8275, 20.7875,
|
||||
(15,21): 21.7475, 22.7175, 23.6875, 24.655, 25.635, 26.605, 27.585,
|
||||
(15,28): 28.565, 29.545, 30.525, 31.515, 32.4925, 33.4825, 34.4625,
|
||||
(15,35): 35.4525, 36.4425, 37.4325, 38.4225, 39.4025, 40.3926, 41.3826,
|
||||
(15,42): 42.3826, 43.3726, 44.3626, 45.3526, 46.3426, 47.3426, 48.3292,
|
||||
(15,49): 49.3292, 50.3192, 51.3092, 52.3092, 53.2992, 54.2992, 55.2892,
|
||||
(15,56): 56.2809, 57.2809, 58.2709, 59.2709, 60.2609, 61.2609, 62.2609,
|
||||
(15,63): 63.2509,
|
||||
(16,0): 56.6635, 14.0735, 9.39349, 8.15349, 7.95349, 8.20349, 8.69349,
|
||||
(16,7): 9.33349, 10.0482, 10.8282, 11.6482, 12.5082, 13.3782, 14.2782,
|
||||
(16,14): 15.1882, 16.1082, 17.0429, 17.9829, 18.9329, 19.8829, 20.8329,
|
||||
(16,21): 21.8029, 22.7629, 23.7329, 24.6996, 25.6696, 26.6496, 27.6196,
|
||||
(16,28): 28.5996, 29.5796, 30.5596, 31.5396, 32.5263, 33.5063, 34.4963,
|
||||
(16,35): 35.4863, 36.4663, 37.4563, 38.4463, 39.4363, 40.4218, 41.4118,
|
||||
(16,42): 42.4018, 43.3918, 44.3818, 45.3718, 46.3718, 47.3618, 48.352,
|
||||
(16,49): 49.342, 50.342, 51.332, 52.322, 53.322, 54.312, 55.312,
|
||||
(16,56): 56.302, 57.292, 58.292, 59.282, 60.282, 61.282, 62.272,
|
||||
(16,63): 63.272,
|
||||
(17,0): 60.0035, 14.8435, 9.82349, 8.45349, 8.18349, 8.39349, 8.85349,
|
||||
(17,7): 9.46349, 10.1682, 10.9382, 11.7482, 12.5882, 13.4682, 14.3582,
|
||||
(17,14): 15.2582, 16.1782, 17.1029, 18.0429, 18.9829, 19.9329, 20.8829,
|
||||
(17,21): 21.8429, 22.8029, 23.7729, 24.7396, 25.7096, 26.6796, 27.6596,
|
||||
(17,28): 28.6396, 29.6096, 30.5896, 31.5796, 32.5563, 33.5363, 34.5263,
|
||||
(17,35): 35.5063, 36.4963, 37.4863, 38.4663, 39.4563, 40.4418, 41.4318,
|
||||
(17,42): 42.4218, 43.4118, 44.4018, 45.4018, 46.3918, 47.3818, 48.372,
|
||||
(17,49): 49.362, 50.362, 51.352, 52.342, 53.342, 54.332, 55.322,
|
||||
(17,56): 56.322, 57.312, 58.312, 59.302, 60.302, 61.292, 62.292,
|
||||
(17,63): 63.282,
|
||||
(18,0): 63.3335, 15.6135, 10.2635, 8.75349, 8.42349, 8.58349, 9.01349,
|
||||
(18,7): 9.60349, 10.2882, 11.0382, 11.8482, 12.6782, 13.5482, 14.4282,
|
||||
(18,14): 15.3282, 16.2382, 17.1629, 18.1029, 19.0429, 19.9829, 20.9329,
|
||||
(18,21): 21.8929, 22.8529, 23.8129, 24.7796, 25.7496, 26.7196, 27.6996,
|
||||
(18,28): 28.6696, 29.6496, 30.6296, 31.6096, 32.5863, 33.5663, 34.5563,
|
||||
(18,35): 35.5363, 36.5263, 37.5063, 38.4963, 39.4863, 40.4718, 41.4618,
|
||||
(18,42): 42.4518, 43.4418, 44.4318, 45.4218, 46.4118, 47.4018, 48.392,
|
||||
(18,49): 49.382, 50.382, 51.372, 52.362, 53.352, 54.352, 55.342,
|
||||
(18,56): 56.342, 57.332, 58.322, 59.322, 60.312, 61.312, 62.302,
|
||||
(18,63): 63.302,
|
||||
(19,0): 66.6635, 16.3835, 10.6935, 9.06349, 8.65349, 8.77349, 9.17349,
|
||||
(19,7): 9.74349, 10.4082, 11.1482, 11.9382, 12.7682, 13.6282, 14.5082,
|
||||
(19,14): 15.3982, 16.3082, 17.2229, 18.1529, 19.0929, 20.0329, 20.9829,
|
||||
(19,21): 21.9429, 22.8929, 23.8629, 24.8196, 25.7896, 26.7596, 27.7296,
|
||||
(19,28): 28.7096, 29.6796, 30.6596, 31.6396, 32.6163, 33.5963, 34.5863,
|
||||
(19,35): 35.5663, 36.5463, 37.5363, 38.5263, 39.5063, 40.4918, 41.4818,
|
||||
(19,42): 42.4718, 43.4618, 44.4518, 45.4418, 46.4318, 47.4218, 48.412,
|
||||
(19,49): 49.402, 50.402, 51.392, 52.382, 53.372, 54.372, 55.362,
|
||||
(19,56): 56.352, 57.352, 58.342, 59.342, 60.332, 61.322, 62.322,
|
||||
(19,63): 63.312,
|
||||
(20,0): 70.0037, 17.1537, 11.1337, 9.36372, 8.88372, 8.96372, 9.33372,
|
||||
(20,7): 9.87372, 10.5301, 11.2601, 12.0401, 12.8601, 13.7101, 14.5801,
|
||||
(20,14): 15.4701, 16.3701, 17.2883, 18.2183, 19.1483, 20.0883, 21.0383,
|
||||
(20,21): 21.9883, 22.9383, 23.8983, 24.8642, 25.8342, 26.7942, 27.7742,
|
||||
(20,28): 28.7442, 29.7142, 30.6942, 31.6742, 32.6502, 33.6302, 34.6102,
|
||||
(20,35): 35.5902, 36.5802, 37.5602, 38.5502, 39.5302, 40.5211, 41.5111,
|
||||
(20,42): 42.5011, 43.4811, 44.4711, 45.4611, 46.4511, 47.4411, 48.4348,
|
||||
(20,49): 49.4248, 50.4148, 51.4048, 52.4048, 53.3948, 54.3848, 55.3748,
|
||||
(20,56): 56.373, 57.363, 58.363, 59.353, 60.353, 61.343, 62.333,
|
||||
(20,63): 63.333,
|
||||
(21,0): 73.3337, 17.9237, 11.5637, 9.66372, 9.11372, 9.15372, 9.49372,
|
||||
(21,7): 10.0137, 10.6501, 11.3701, 12.1401, 12.9501, 13.7901, 14.6501,
|
||||
(21,14): 15.5401, 16.4401, 17.3483, 18.2683, 19.1983, 20.1383, 21.0883,
|
||||
(21,21): 22.0283, 22.9883, 23.9483, 24.9042, 25.8742, 26.8342, 27.8042,
|
||||
(21,28): 28.7742, 29.7542, 30.7242, 31.7042, 32.6802, 33.6602, 34.6402,
|
||||
(21,35): 35.6202, 36.6102, 37.5902, 38.5702, 39.5602, 40.5411, 41.5311,
|
||||
(21,42): 42.5211, 43.5111, 44.5011, 45.4811, 46.4711, 47.4611, 48.4548,
|
||||
(21,49): 49.4448, 50.4348, 51.4248, 52.4248, 53.4148, 54.4048, 55.3948,
|
||||
(21,56): 56.393, 57.383, 58.373, 59.373, 60.363, 61.363, 62.353,
|
||||
(21,63): 63.343,
|
||||
(22,0): 76.6637, 18.6937, 12.0037, 9.97372, 9.35372, 9.34372, 9.65372,
|
||||
(22,7): 10.1537, 10.7701, 11.4701, 12.2301, 13.0401, 13.8701, 14.7301,
|
||||
(22,14): 15.6101, 16.5001, 17.4083, 18.3283, 19.2583, 20.1883, 21.1283,
|
||||
(22,21): 22.0783, 23.0283, 23.9883, 24.9442, 25.9042, 26.8742, 27.8442,
|
||||
(22,28): 28.8142, 29.7842, 30.7542, 31.7342, 32.7102, 33.6902, 34.6702,
|
||||
(22,35): 35.6502, 36.6302, 37.6202, 38.6002, 39.5902, 40.5711, 41.5611,
|
||||
(22,42): 42.5411, 43.5311, 44.5211, 45.5111, 46.5011, 47.4911, 48.4748,
|
||||
(22,49): 49.4648, 50.4548, 51.4448, 52.4348, 53.4348, 54.4248, 55.4148,
|
||||
(22,56): 56.413, 57.403, 58.393, 59.383, 60.383, 61.373, 62.373,
|
||||
(22,63): 63.363,
|
||||
(23,0): 80.0037, 19.4637, 12.4337, 10.2737, 9.58372, 9.52372, 9.81372,
|
||||
(23,7): 10.2837, 10.8901, 11.5801, 12.3301, 13.1201, 13.9501, 14.8001,
|
||||
(23,14): 15.6801, 16.5701, 17.4683, 18.3883, 19.3083, 20.2483, 21.1783,
|
||||
(23,21): 22.1283, 23.0783, 24.0283, 24.9842, 25.9442, 26.9142, 27.8742,
|
||||
(23,28): 28.8442, 29.8142, 30.7942, 31.7642, 32.7402, 33.7202, 34.7002,
|
||||
(23,35): 35.6802, 36.6602, 37.6402, 38.6302, 39.6102, 40.5911, 41.5811,
|
||||
(23,42): 42.5711, 43.5511, 44.5411, 45.5311, 46.5211, 47.5111, 48.4948,
|
||||
(23,49): 49.4848, 50.4748, 51.4648, 52.4548, 53.4548, 54.4448, 55.4348,
|
||||
(23,56): 56.423, 57.423, 58.413, 59.403, 60.403, 61.393, 62.383,
|
||||
(23,63): 63.383,
|
||||
(24,0): 83.337, 20.227, 12.867, 10.577, 9.81698, 9.71698, 9.96698,
|
||||
(24,7): 10.427, 11.012, 11.692, 12.432, 13.212, 14.032, 14.882, 15.752,
|
||||
(24,15): 16.632, 17.5337, 18.4437, 19.3637, 20.2937, 21.2337, 22.1737,
|
||||
(24,22): 23.1237, 24.0737, 25.0288, 25.9888, 26.9488, 27.9188, 28.8788,
|
||||
(24,29): 29.8488, 30.8288, 31.7988, 32.774, 33.754, 34.724, 35.704,
|
||||
(24,36): 36.684, 37.674, 38.654, 39.634, 40.6203, 41.6003, 42.5903,
|
||||
(24,43): 43.5803, 44.5603, 45.5503, 46.5403, 47.5303, 48.5176, 49.5076,
|
||||
(24,50): 50.4976, 51.4876, 52.4776, 53.4676, 54.4576, 55.4476, 56.444,
|
||||
(24,57): 57.434, 58.424, 59.424, 60.414, 61.404, 62.404, 63.394,
|
||||
(25,0): 86.667, 20.997, 13.307, 10.877, 10.047, 9.90698, 10.127,
|
||||
(25,7): 10.557, 11.132, 11.792, 12.522, 13.302, 14.112, 14.952, 15.822,
|
||||
(25,15): 16.702, 17.5937, 18.5037, 19.4237, 20.3437, 21.2837, 22.2237,
|
||||
(25,22): 23.1637, 24.1137, 25.0688, 26.0288, 26.9888, 27.9488, 28.9188,
|
||||
(25,29): 29.8888, 30.8588, 31.8288, 32.804, 33.784, 34.754, 35.734,
|
||||
(25,36): 36.714, 37.694, 38.674, 39.664, 40.6403, 41.6303, 42.6103,
|
||||
(25,43): 43.6003, 44.5903, 45.5703, 46.5603, 47.5503, 48.5376, 49.5276,
|
||||
(25,50): 50.5176, 51.5076, 52.4976, 53.4876, 54.4776, 55.4676, 56.464,
|
||||
(25,57): 57.454, 58.444, 59.434, 60.434, 61.424, 62.414, 63.414,
|
||||
(26,0): 89.997, 21.767, 13.737, 11.177, 10.277, 10.097, 10.287, 10.697,
|
||||
(26,8): 11.252, 11.902, 12.622, 13.392, 14.192, 15.032, 15.892, 16.762,
|
||||
(26,16): 17.6537, 18.5637, 19.4737, 20.4037, 21.3337, 22.2637, 23.2137,
|
||||
(26,23): 24.1637, 25.1088, 26.0688, 27.0288, 27.9888, 28.9588, 29.9188,
|
||||
(26,30): 30.8888, 31.8588, 32.834, 33.814, 34.784, 35.764, 36.744,
|
||||
(26,37): 37.724, 38.704, 39.684, 40.6703, 41.6503, 42.6403, 43.6203,
|
||||
(26,44): 44.6103, 45.6003, 46.5803, 47.5703, 48.5576, 49.5476, 50.5376,
|
||||
(26,51): 51.5276, 52.5176, 53.5076, 54.4976, 55.4876, 56.484, 57.474,
|
||||
(26,58): 58.464, 59.454, 60.444, 61.444, 62.434, 63.424,
|
||||
(27,0): 93.337, 22.537, 14.177, 11.487, 10.507, 10.287, 10.447, 10.837,
|
||||
(27,8): 11.372, 12.012, 12.722, 13.482, 14.272, 15.102, 15.962, 16.832,
|
||||
(27,16): 17.7137, 18.6137, 19.5337, 20.4537, 21.3837, 22.3137, 23.2537,
|
||||
(27,23): 24.2037, 25.1488, 26.1088, 27.0688, 28.0288, 28.9888, 29.9588,
|
||||
(27,30): 30.9288, 31.8988, 32.864, 33.844, 34.814, 35.794, 36.774,
|
||||
(27,37): 37.754, 38.734, 39.714, 40.6903, 41.6803, 42.6603, 43.6503,
|
||||
(27,44): 44.6303, 45.6203, 46.6003, 47.5903, 48.5776, 49.5676, 50.5576,
|
||||
(27,51): 51.5476, 52.5376, 53.5276, 54.5176, 55.5076, 56.494, 57.484,
|
||||
(27,58): 58.484, 59.474, 60.464, 61.454, 62.454, 63.444,
|
||||
(28,0): 96.6617, 23.3117, 14.6117, 11.7917, 10.7417, 10.4717, 10.6017,
|
||||
(28,7): 10.9717, 11.494, 12.114, 12.814, 13.564, 14.354, 15.184,
|
||||
(28,14): 16.024, 16.894, 17.7791, 18.6791, 19.5891, 20.4991, 21.4291,
|
||||
(28,21): 22.3591, 23.2991, 24.2491, 25.1934, 26.1434, 27.1034, 28.0634,
|
||||
(28,28): 29.0234, 29.9934, 30.9534, 31.9234, 32.8978, 33.8678, 34.8478,
|
||||
(28,35): 35.8178, 36.7978, 37.7778, 38.7578, 39.7378, 40.7196, 41.6996,
|
||||
(28,42): 42.6896, 43.6696, 44.6596, 45.6396, 46.6296, 47.6096, 48.6004,
|
||||
(28,49): 49.5904, 50.5804, 51.5604, 52.5504, 53.5404, 54.5304, 55.5204,
|
||||
(28,56): 56.5151, 57.5051, 58.4951, 59.4851, 60.4851, 61.4751, 62.4651,
|
||||
(28,63): 63.4551,
|
||||
(29,0): 100.002, 24.0817, 15.0417, 12.0917, 10.9817, 10.6617, 10.7617,
|
||||
(29,7): 11.1117, 11.614, 12.224, 12.914, 13.654, 14.444, 15.254,
|
||||
(29,14): 16.094, 16.964, 17.8391, 18.7291, 19.6391, 20.5591, 21.4791,
|
||||
(29,21): 22.4091, 23.3491, 24.2891, 25.2334, 26.1834, 27.1434, 28.1034,
|
||||
(29,28): 29.0634, 30.0234, 30.9934, 31.9634, 32.9278, 33.8978, 34.8778,
|
||||
(29,35): 35.8478, 36.8278, 37.8078, 38.7878, 39.7678, 40.7396, 41.7296,
|
||||
(29,42): 42.7096, 43.6896, 44.6796, 45.6596, 46.6496, 47.6296, 48.6204,
|
||||
(29,49): 49.6104, 50.6004, 51.5804, 52.5704, 53.5604, 54.5504, 55.5404,
|
||||
(29,56): 56.5351, 57.5251, 58.5151, 59.5051, 60.4951, 61.4851, 62.4851,
|
||||
(29,63): 63.4751,
|
||||
(30,0): 103.332, 24.8417, 15.4817, 12.3917, 11.2117, 10.8517, 10.9217,
|
||||
(30,7): 11.2417, 11.734, 12.334, 13.014, 13.744, 14.524, 15.334,
|
||||
(30,14): 16.164, 17.024, 17.8991, 18.7891, 19.6891, 20.6091, 21.5291,
|
||||
(30,21): 22.4591, 23.3891, 24.3291, 25.2734, 26.2234, 27.1834, 28.1334,
|
||||
(30,28): 29.0934, 30.0534, 31.0234, 31.9934, 32.9578, 33.9278, 34.9078,
|
||||
(30,35): 35.8778, 36.8578, 37.8278, 38.8078, 39.7878, 40.7696, 41.7496,
|
||||
(30,42): 42.7296, 43.7196, 44.6996, 45.6796, 46.6696, 47.6596, 48.6404,
|
||||
(30,49): 49.6304, 50.6204, 51.6004, 52.5904, 53.5804, 54.5704, 55.5604,
|
||||
(30,56): 56.5551, 57.5451, 58.5351, 59.5251, 60.5151, 61.5051, 62.4951,
|
||||
(30,63): 63.4851,
|
||||
(31,0): 106.662, 25.6117, 15.9117, 12.7017, 11.4417, 11.0417, 11.0817,
|
||||
(31,7): 11.3817, 11.854, 12.444, 13.104, 13.834, 14.604, 15.404,
|
||||
(31,14): 16.234, 17.094, 17.9591, 18.8491, 19.7491, 20.6591, 21.5791,
|
||||
(31,21): 22.4991, 23.4391, 24.3691, 25.3134, 26.2634, 27.2134, 28.1734,
|
||||
(31,28): 29.1334, 30.0934, 31.0534, 32.0234, 32.9878, 33.9578, 34.9378,
|
||||
(31,35): 35.9078, 36.8778, 37.8578, 38.8378, 39.8178, 40.7896, 41.7796,
|
||||
(31,42): 42.7596, 43.7396, 44.7196, 45.7096, 46.6896, 47.6796, 48.6604,
|
||||
(31,49): 49.6504, 50.6404, 51.6204, 52.6104, 53.6004, 54.5904, 55.5804,
|
||||
(31,56): 56.5651, 57.5551, 58.5451, 59.5351, 60.5351, 61.5251, 62.5151,
|
||||
(31,63): 63.5051
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
Maximum value in write buffer is: 106.666667
|
||||
Minimum value in write buffer is: 1.769231
|
||||
Filter type is: H5Z_FILTER_SCALEOFFSET
|
||||
Maximum value in DS1 is: 106.661698
|
||||
Minimum value in DS1 is: 1.769231
|
||||
@@ -0,0 +1,191 @@
|
||||
HDF5 "h5ex_d_soint.h5" {
|
||||
GROUP "/" {
|
||||
DATASET "DS1" {
|
||||
DATATYPE H5T_STD_I32LE
|
||||
DATASPACE SIMPLE { ( 32, 64 ) / ( 32, 64 ) }
|
||||
DATA {
|
||||
(0,0): 0, -1, -2, -3, -4, -5, -6, -7, -8, -9, -10, -11, -12, -13, -14,
|
||||
(0,15): -15, -16, -17, -18, -19, -20, -21, -22, -23, -24, -25, -26,
|
||||
(0,27): -27, -28, -29, -30, -31, -32, -33, -34, -35, -36, -37, -38,
|
||||
(0,39): -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -49, -50,
|
||||
(0,51): -51, -52, -53, -54, -55, -56, -57, -58, -59, -60, -61, -62,
|
||||
(0,63): -63,
|
||||
(1,0): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,21): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,42): 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
(1,63): 0,
|
||||
(2,0): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||
(2,18): 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
(2,34): 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
|
||||
(2,50): 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
|
||||
(3,0): 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
|
||||
(3,17): 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64,
|
||||
(3,33): 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96,
|
||||
(3,49): 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122,
|
||||
(3,62): 124, 126,
|
||||
(4,0): 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48,
|
||||
(4,17): 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96,
|
||||
(4,33): 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135,
|
||||
(4,46): 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171,
|
||||
(4,58): 174, 177, 180, 183, 186, 189,
|
||||
(5,0): 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64,
|
||||
(5,17): 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120,
|
||||
(5,31): 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168,
|
||||
(5,43): 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216,
|
||||
(5,55): 220, 224, 228, 232, 236, 240, 244, 248, 252,
|
||||
(6,0): 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
|
||||
(6,16): 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140,
|
||||
(6,29): 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200,
|
||||
(6,41): 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260,
|
||||
(6,53): 265, 270, 275, 280, 285, 290, 295, 300, 305, 310, 315,
|
||||
(7,0): 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, 78, 84, 90,
|
||||
(7,16): 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168,
|
||||
(7,29): 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240,
|
||||
(7,41): 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312,
|
||||
(7,53): 318, 324, 330, 336, 342, 348, 354, 360, 366, 372, 378,
|
||||
(8,0): 0, 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105,
|
||||
(8,16): 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189,
|
||||
(8,28): 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273,
|
||||
(8,40): 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357,
|
||||
(8,52): 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441,
|
||||
(9,0): 0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120,
|
||||
(9,16): 128, 136, 144, 152, 160, 168, 176, 184, 192, 200, 208, 216,
|
||||
(9,28): 224, 232, 240, 248, 256, 264, 272, 280, 288, 296, 304, 312,
|
||||
(9,40): 320, 328, 336, 344, 352, 360, 368, 376, 384, 392, 400, 408,
|
||||
(9,52): 416, 424, 432, 440, 448, 456, 464, 472, 480, 488, 496, 504,
|
||||
(10,0): 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108, 117, 126,
|
||||
(10,15): 135, 144, 153, 162, 171, 180, 189, 198, 207, 216, 225, 234,
|
||||
(10,27): 243, 252, 261, 270, 279, 288, 297, 306, 315, 324, 333, 342,
|
||||
(10,39): 351, 360, 369, 378, 387, 396, 405, 414, 423, 432, 441, 450,
|
||||
(10,51): 459, 468, 477, 486, 495, 504, 513, 522, 531, 540, 549, 558,
|
||||
(10,63): 567,
|
||||
(11,0): 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140,
|
||||
(11,15): 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250, 260,
|
||||
(11,27): 270, 280, 290, 300, 310, 320, 330, 340, 350, 360, 370, 380,
|
||||
(11,39): 390, 400, 410, 420, 430, 440, 450, 460, 470, 480, 490, 500,
|
||||
(11,51): 510, 520, 530, 540, 550, 560, 570, 580, 590, 600, 610, 620,
|
||||
(11,63): 630,
|
||||
(12,0): 0, 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132, 143, 154,
|
||||
(12,15): 165, 176, 187, 198, 209, 220, 231, 242, 253, 264, 275, 286,
|
||||
(12,27): 297, 308, 319, 330, 341, 352, 363, 374, 385, 396, 407, 418,
|
||||
(12,39): 429, 440, 451, 462, 473, 484, 495, 506, 517, 528, 539, 550,
|
||||
(12,51): 561, 572, 583, 594, 605, 616, 627, 638, 649, 660, 671, 682,
|
||||
(12,63): 693,
|
||||
(13,0): 0, 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144, 156,
|
||||
(13,14): 168, 180, 192, 204, 216, 228, 240, 252, 264, 276, 288, 300,
|
||||
(13,26): 312, 324, 336, 348, 360, 372, 384, 396, 408, 420, 432, 444,
|
||||
(13,38): 456, 468, 480, 492, 504, 516, 528, 540, 552, 564, 576, 588,
|
||||
(13,50): 600, 612, 624, 636, 648, 660, 672, 684, 696, 708, 720, 732,
|
||||
(13,62): 744, 756,
|
||||
(14,0): 0, 13, 26, 39, 52, 65, 78, 91, 104, 117, 130, 143, 156, 169,
|
||||
(14,14): 182, 195, 208, 221, 234, 247, 260, 273, 286, 299, 312, 325,
|
||||
(14,26): 338, 351, 364, 377, 390, 403, 416, 429, 442, 455, 468, 481,
|
||||
(14,38): 494, 507, 520, 533, 546, 559, 572, 585, 598, 611, 624, 637,
|
||||
(14,50): 650, 663, 676, 689, 702, 715, 728, 741, 754, 767, 780, 793,
|
||||
(14,62): 806, 819,
|
||||
(15,0): 0, 14, 28, 42, 56, 70, 84, 98, 112, 126, 140, 154, 168, 182,
|
||||
(15,14): 196, 210, 224, 238, 252, 266, 280, 294, 308, 322, 336, 350,
|
||||
(15,26): 364, 378, 392, 406, 420, 434, 448, 462, 476, 490, 504, 518,
|
||||
(15,38): 532, 546, 560, 574, 588, 602, 616, 630, 644, 658, 672, 686,
|
||||
(15,50): 700, 714, 728, 742, 756, 770, 784, 798, 812, 826, 840, 854,
|
||||
(15,62): 868, 882,
|
||||
(16,0): 0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195,
|
||||
(16,14): 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375,
|
||||
(16,26): 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555,
|
||||
(16,38): 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735,
|
||||
(16,50): 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915,
|
||||
(16,62): 930, 945,
|
||||
(17,0): 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208,
|
||||
(17,14): 224, 240, 256, 272, 288, 304, 320, 336, 352, 368, 384, 400,
|
||||
(17,26): 416, 432, 448, 464, 480, 496, 512, 528, 544, 560, 576, 592,
|
||||
(17,38): 608, 624, 640, 656, 672, 688, 704, 720, 736, 752, 768, 784,
|
||||
(17,50): 800, 816, 832, 848, 864, 880, 896, 912, 928, 944, 960, 976,
|
||||
(17,62): 992, 1008,
|
||||
(18,0): 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221,
|
||||
(18,14): 238, 255, 272, 289, 306, 323, 340, 357, 374, 391, 408, 425,
|
||||
(18,26): 442, 459, 476, 493, 510, 527, 544, 561, 578, 595, 612, 629,
|
||||
(18,38): 646, 663, 680, 697, 714, 731, 748, 765, 782, 799, 816, 833,
|
||||
(18,50): 850, 867, 884, 901, 918, 935, 952, 969, 986, 1003, 1020, 1037,
|
||||
(18,62): 1054, 1071,
|
||||
(19,0): 0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234,
|
||||
(19,14): 252, 270, 288, 306, 324, 342, 360, 378, 396, 414, 432, 450,
|
||||
(19,26): 468, 486, 504, 522, 540, 558, 576, 594, 612, 630, 648, 666,
|
||||
(19,38): 684, 702, 720, 738, 756, 774, 792, 810, 828, 846, 864, 882,
|
||||
(19,50): 900, 918, 936, 954, 972, 990, 1008, 1026, 1044, 1062, 1080,
|
||||
(19,61): 1098, 1116, 1134,
|
||||
(20,0): 0, 19, 38, 57, 76, 95, 114, 133, 152, 171, 190, 209, 228, 247,
|
||||
(20,14): 266, 285, 304, 323, 342, 361, 380, 399, 418, 437, 456, 475,
|
||||
(20,26): 494, 513, 532, 551, 570, 589, 608, 627, 646, 665, 684, 703,
|
||||
(20,38): 722, 741, 760, 779, 798, 817, 836, 855, 874, 893, 912, 931,
|
||||
(20,50): 950, 969, 988, 1007, 1026, 1045, 1064, 1083, 1102, 1121, 1140,
|
||||
(20,61): 1159, 1178, 1197,
|
||||
(21,0): 0, 20, 40, 60, 80, 100, 120, 140, 160, 180, 200, 220, 240, 260,
|
||||
(21,14): 280, 300, 320, 340, 360, 380, 400, 420, 440, 460, 480, 500,
|
||||
(21,26): 520, 540, 560, 580, 600, 620, 640, 660, 680, 700, 720, 740,
|
||||
(21,38): 760, 780, 800, 820, 840, 860, 880, 900, 920, 940, 960, 980,
|
||||
(21,50): 1000, 1020, 1040, 1060, 1080, 1100, 1120, 1140, 1160, 1180,
|
||||
(21,60): 1200, 1220, 1240, 1260,
|
||||
(22,0): 0, 21, 42, 63, 84, 105, 126, 147, 168, 189, 210, 231, 252, 273,
|
||||
(22,14): 294, 315, 336, 357, 378, 399, 420, 441, 462, 483, 504, 525,
|
||||
(22,26): 546, 567, 588, 609, 630, 651, 672, 693, 714, 735, 756, 777,
|
||||
(22,38): 798, 819, 840, 861, 882, 903, 924, 945, 966, 987, 1008, 1029,
|
||||
(22,50): 1050, 1071, 1092, 1113, 1134, 1155, 1176, 1197, 1218, 1239,
|
||||
(22,60): 1260, 1281, 1302, 1323,
|
||||
(23,0): 0, 22, 44, 66, 88, 110, 132, 154, 176, 198, 220, 242, 264, 286,
|
||||
(23,14): 308, 330, 352, 374, 396, 418, 440, 462, 484, 506, 528, 550,
|
||||
(23,26): 572, 594, 616, 638, 660, 682, 704, 726, 748, 770, 792, 814,
|
||||
(23,38): 836, 858, 880, 902, 924, 946, 968, 990, 1012, 1034, 1056,
|
||||
(23,49): 1078, 1100, 1122, 1144, 1166, 1188, 1210, 1232, 1254, 1276,
|
||||
(23,59): 1298, 1320, 1342, 1364, 1386,
|
||||
(24,0): 0, 23, 46, 69, 92, 115, 138, 161, 184, 207, 230, 253, 276, 299,
|
||||
(24,14): 322, 345, 368, 391, 414, 437, 460, 483, 506, 529, 552, 575,
|
||||
(24,26): 598, 621, 644, 667, 690, 713, 736, 759, 782, 805, 828, 851,
|
||||
(24,38): 874, 897, 920, 943, 966, 989, 1012, 1035, 1058, 1081, 1104,
|
||||
(24,49): 1127, 1150, 1173, 1196, 1219, 1242, 1265, 1288, 1311, 1334,
|
||||
(24,59): 1357, 1380, 1403, 1426, 1449,
|
||||
(25,0): 0, 24, 48, 72, 96, 120, 144, 168, 192, 216, 240, 264, 288, 312,
|
||||
(25,14): 336, 360, 384, 408, 432, 456, 480, 504, 528, 552, 576, 600,
|
||||
(25,26): 624, 648, 672, 696, 720, 744, 768, 792, 816, 840, 864, 888,
|
||||
(25,38): 912, 936, 960, 984, 1008, 1032, 1056, 1080, 1104, 1128, 1152,
|
||||
(25,49): 1176, 1200, 1224, 1248, 1272, 1296, 1320, 1344, 1368, 1392,
|
||||
(25,59): 1416, 1440, 1464, 1488, 1512,
|
||||
(26,0): 0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250, 275, 300,
|
||||
(26,13): 325, 350, 375, 400, 425, 450, 475, 500, 525, 550, 575, 600,
|
||||
(26,25): 625, 650, 675, 700, 725, 750, 775, 800, 825, 850, 875, 900,
|
||||
(26,37): 925, 950, 975, 1000, 1025, 1050, 1075, 1100, 1125, 1150, 1175,
|
||||
(26,48): 1200, 1225, 1250, 1275, 1300, 1325, 1350, 1375, 1400, 1425,
|
||||
(26,58): 1450, 1475, 1500, 1525, 1550, 1575,
|
||||
(27,0): 0, 26, 52, 78, 104, 130, 156, 182, 208, 234, 260, 286, 312,
|
||||
(27,13): 338, 364, 390, 416, 442, 468, 494, 520, 546, 572, 598, 624,
|
||||
(27,25): 650, 676, 702, 728, 754, 780, 806, 832, 858, 884, 910, 936,
|
||||
(27,37): 962, 988, 1014, 1040, 1066, 1092, 1118, 1144, 1170, 1196,
|
||||
(27,47): 1222, 1248, 1274, 1300, 1326, 1352, 1378, 1404, 1430, 1456,
|
||||
(27,57): 1482, 1508, 1534, 1560, 1586, 1612, 1638,
|
||||
(28,0): 0, 27, 54, 81, 108, 135, 162, 189, 216, 243, 270, 297, 324,
|
||||
(28,13): 351, 378, 405, 432, 459, 486, 513, 540, 567, 594, 621, 648,
|
||||
(28,25): 675, 702, 729, 756, 783, 810, 837, 864, 891, 918, 945, 972,
|
||||
(28,37): 999, 1026, 1053, 1080, 1107, 1134, 1161, 1188, 1215, 1242,
|
||||
(28,47): 1269, 1296, 1323, 1350, 1377, 1404, 1431, 1458, 1485, 1512,
|
||||
(28,57): 1539, 1566, 1593, 1620, 1647, 1674, 1701,
|
||||
(29,0): 0, 28, 56, 84, 112, 140, 168, 196, 224, 252, 280, 308, 336,
|
||||
(29,13): 364, 392, 420, 448, 476, 504, 532, 560, 588, 616, 644, 672,
|
||||
(29,25): 700, 728, 756, 784, 812, 840, 868, 896, 924, 952, 980, 1008,
|
||||
(29,37): 1036, 1064, 1092, 1120, 1148, 1176, 1204, 1232, 1260, 1288,
|
||||
(29,47): 1316, 1344, 1372, 1400, 1428, 1456, 1484, 1512, 1540, 1568,
|
||||
(29,57): 1596, 1624, 1652, 1680, 1708, 1736, 1764,
|
||||
(30,0): 0, 29, 58, 87, 116, 145, 174, 203, 232, 261, 290, 319, 348,
|
||||
(30,13): 377, 406, 435, 464, 493, 522, 551, 580, 609, 638, 667, 696,
|
||||
(30,25): 725, 754, 783, 812, 841, 870, 899, 928, 957, 986, 1015, 1044,
|
||||
(30,37): 1073, 1102, 1131, 1160, 1189, 1218, 1247, 1276, 1305, 1334,
|
||||
(30,47): 1363, 1392, 1421, 1450, 1479, 1508, 1537, 1566, 1595, 1624,
|
||||
(30,57): 1653, 1682, 1711, 1740, 1769, 1798, 1827,
|
||||
(31,0): 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360,
|
||||
(31,13): 390, 420, 450, 480, 510, 540, 570, 600, 630, 660, 690, 720,
|
||||
(31,25): 750, 780, 810, 840, 870, 900, 930, 960, 990, 1020, 1050, 1080,
|
||||
(31,37): 1110, 1140, 1170, 1200, 1230, 1260, 1290, 1320, 1350, 1380,
|
||||
(31,47): 1410, 1440, 1470, 1500, 1530, 1560, 1590, 1620, 1650, 1680,
|
||||
(31,57): 1710, 1740, 1770, 1800, 1830, 1860, 1890
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
Filter type is: H5Z_FILTER_SCALEOFFSET
|
||||
Maximum value in DS1 is: 1890
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user