diff options
author | Allen Byrne <50328838+byrnHDF@users.noreply.github.com> | 2023-12-14 18:50:30 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-14 18:50:30 (GMT) |
commit | 6f2d22d86e6a265535efe22a8bb3872b3b32a52b (patch) | |
tree | f79e0d9778b13466282c159dfec67d31faba5b8d /java/examples/datasets | |
parent | 184445f4a45c602887ca0624c5295a7b6fea2d21 (diff) | |
download | hdf5-6f2d22d86e6a265535efe22a8bb3872b3b32a52b.zip hdf5-6f2d22d86e6a265535efe22a8bb3872b3b32a52b.tar.gz hdf5-6f2d22d86e6a265535efe22a8bb3872b3b32a52b.tar.bz2 |
Add variable option syncing for examples (#3885)
Diffstat (limited to 'java/examples/datasets')
21 files changed, 0 insertions, 6532 deletions
diff --git a/java/examples/datasets/CMakeLists.txt b/java/examples/datasets/CMakeLists.txt deleted file mode 100644 index a9a5643..0000000 --- a/java/examples/datasets/CMakeLists.txt +++ /dev/null @@ -1,150 +0,0 @@ -cmake_minimum_required (VERSION 3.18) -project (HDFJAVA_EXAMPLES_DATASETS Java) - -set (CMAKE_VERBOSE_MAKEFILE 1) - -set (HDF_JAVA_EXAMPLES - H5Ex_D_Alloc - H5Ex_D_Checksum - H5Ex_D_Chunk - H5Ex_D_Compact - H5Ex_D_External - H5Ex_D_FillValue - H5Ex_D_Hyperslab - H5Ex_D_ReadWrite - H5Ex_D_UnlimitedAdd - H5Ex_D_UnlimitedMod - H5Ex_D_Nbit - H5Ex_D_Transform - H5Ex_D_Sofloat - H5Ex_D_Soint -) - -set (HDF_JAVA_ZLIB_EXAMPLES - H5Ex_D_Gzip - H5Ex_D_Shuffle - H5Ex_D_UnlimitedGzip -) - -set (HDF_JAVA_SZIP_EXAMPLES - H5Ex_D_Szip -) - -# detect whether the encoder is present. - if (H5_HAVE_FILTER_DEFLATE) - set (${HDF_JAVA_EXAMPLES} ${HDF_JAVA_EXAMPLES} ${HDF_JAVA_ZLIB_EXAMPLES}) - endif () - - if (H5_HAVE_FILTER_SZIP) - set (${HDF_JAVA_EXAMPLES} ${HDF_JAVA_EXAMPLES} ${HDF_JAVA_SZIP_EXAMPLES}) - endif (H5_HAVE_FILTER_SZIP) - -if (WIN32) - set (CMAKE_JAVA_INCLUDE_FLAG_SEP ";") -else () - set (CMAKE_JAVA_INCLUDE_FLAG_SEP ":") -endif () - -set (CMAKE_JAVA_INCLUDE_PATH "${HDF5_JAVA_JARS}") - -set (CMAKE_JAVA_CLASSPATH ".") -foreach (CMAKE_INCLUDE_PATH ${CMAKE_JAVA_INCLUDE_PATH}) - set (CMAKE_JAVA_CLASSPATH "${CMAKE_JAVA_CLASSPATH}${CMAKE_JAVA_INCLUDE_FLAG_SEP}${CMAKE_INCLUDE_PATH}") -endforeach () - -foreach (example ${HDF_JAVA_EXAMPLES}) - file (WRITE ${PROJECT_BINARY_DIR}/${example}_Manifest.txt - "Main-Class: examples.datasets.${example} -" - ) - add_jar (${example} MANIFEST ${PROJECT_BINARY_DIR}/${example}_Manifest.txt ${example}.java) - get_target_property (${example}_JAR_FILE ${example} JAR_FILE) -# install_jar (${example} ${HJAVA_INSTALL_DATA_DIR}/examples examples) - get_target_property (${example}_CLASSPATH ${example} CLASSDIR) - add_dependencies (${example} ${HDF5_JAVA_HDF5_LIB_TARGET}) - - #----------------------------------------------------------------------------- - # Add Target to clang-format - #----------------------------------------------------------------------------- - if (HDF5_ENABLE_FORMATTERS) - clang_format (HDF5_JAVA_${example}_SRC_FORMAT ${example}.java) - endif () -endforeach () - -set (CMAKE_JAVA_INCLUDE_PATH "${HDF5_JAVA_JARS};${HDF5_JAVA_LOGGING_JAR};${HDF5_JAVA_LOGGING_NOP_JAR}") - -set (CMAKE_JAVA_CLASSPATH ".") -foreach (HDFJAVA_JAR ${CMAKE_JAVA_INCLUDE_PATH}) - set (CMAKE_JAVA_CLASSPATH "${CMAKE_JAVA_CLASSPATH}${CMAKE_JAVA_INCLUDE_FLAG_SEP}${HDFJAVA_JAR}") -endforeach () - -if (BUILD_TESTING AND HDF5_TEST_EXAMPLES AND HDF5_TEST_SERIAL) - get_property (target_name TARGET ${HDF5_JAVA_JNI_LIB_TARGET} PROPERTY OUTPUT_NAME) - set (CMD_ARGS "-Dhdf.hdf5lib.H5.loadLibraryName=${target_name}$<$<OR:$<CONFIG:Debug>,$<CONFIG:Developer>>:${CMAKE_DEBUG_POSTFIX}>;") - - set (last_test "") - foreach (example ${HDF_JAVA_EXAMPLES}) - if (example STREQUAL "H5Ex_D_External") - add_test ( - NAME JAVA_datasets-${example}-clear-objects - COMMAND ${CMAKE_COMMAND} -E remove - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5 - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.data - ) - else () - add_test ( - NAME JAVA_datasets-${example}-clear-objects - COMMAND ${CMAKE_COMMAND} -E remove - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5 - ) - endif () - if (last_test) - set_tests_properties (JAVA_datasets-${example}-clear-objects PROPERTIES DEPENDS ${last_test}) - endif () - - add_test ( - NAME JAVA_datasets-${example}-copy-objects - COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${HDFJAVA_EXAMPLES_SOURCE_DIR}/testfiles/examples.datasets.${example}.txt - ${HDFJAVA_EXAMPLES_DATASETS_BINARY_DIR}/${example}.txt - ) - set_tests_properties (JAVA_datasets-${example}-copy-objects PROPERTIES DEPENDS JAVA_datasets-${example}-clear-objects) - - add_test ( - NAME JAVA_datasets-${example} - COMMAND "${CMAKE_COMMAND}" - -D "TEST_TESTER=${CMAKE_Java_RUNTIME};${CMAKE_Java_RUNTIME_FLAGS}" - -D "TEST_CLASSPATH:STRING=${CMAKE_JAVA_CLASSPATH}${CMAKE_JAVA_INCLUDE_FLAG_SEP}${${example}_JAR_FILE}" - -D "TEST_ARGS:STRING=${CMD_ARGS}" - -D "TEST_PROGRAM=examples.datasets.${example}" - -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" - -D "TEST_FOLDER=${HDFJAVA_EXAMPLES_BINARY_DIR}" - -D "TEST_OUTPUT=datasets/${example}.out" - -D "TEST_EXPECT=0" - -D "TEST_REFERENCE=datasets/${example}.txt" - -P "${HDF_RESOURCES_DIR}/jrunTest.cmake" - ) - set_tests_properties (JAVA_datasets-${example} PROPERTIES - DEPENDS JAVA_datasets-${example}-copy-objects - ) - - if (example STREQUAL "H5Ex_D_External") - add_test ( - NAME JAVA_datasets-${example}-clean-objects - COMMAND ${CMAKE_COMMAND} -E remove - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5 - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.data - ) - else () - add_test ( - NAME JAVA_datasets-${example}-clean-objects - COMMAND ${CMAKE_COMMAND} -E remove - ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5 - ) - endif () - set_tests_properties (JAVA_datasets-${example}-clean-objects PROPERTIES - DEPENDS JAVA_datasets-${example} - ) - set (last_test "JAVA_datasets-${example}-clean-objects") - endforeach () -endif () diff --git a/java/examples/datasets/H5Ex_D_Alloc.java b/java/examples/datasets/H5Ex_D_Alloc.java deleted file mode 100644 index 4853cc0..0000000 --- a/java/examples/datasets/H5Ex_D_Alloc.java +++ /dev/null @@ -1,294 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Alloc { - private static String FILENAME = "H5Ex_D_Alloc.h5"; - private static String DATASETNAME1 = "DS1"; - private static String DATASETNAME2 = "DS2"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int FILLVAL = 99; - private static final int RANK = 2; - - // Values for the status of space allocation - enum H5D_space_status { - H5D_SPACE_STATUS_ERROR(-1), - H5D_SPACE_STATUS_NOT_ALLOCATED(0), - H5D_SPACE_STATUS_PART_ALLOCATED(1), - H5D_SPACE_STATUS_ALLOCATED(2); - private static final Map<Integer, H5D_space_status> lookup = new HashMap<Integer, H5D_space_status>(); - - static - { - for (H5D_space_status s : EnumSet.allOf(H5D_space_status.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5D_space_status(int space_status) { this.code = space_status; } - - public int getCode() { return this.code; } - - public static H5D_space_status get(int code) { return lookup.get(code); } - } - - private static void allocation() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id1 = HDF5Constants.H5I_INVALID_HID; - long dataset_id2 = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - int space_status = 0; - long storage_size = 0; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = FILLVAL; - - // Create a file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, and set the chunk size. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // 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. - try { - if (dcpl_id >= 0) - H5.H5Pset_alloc_time(dcpl_id, HDF5Constants.H5D_ALLOC_TIME_EARLY); - } - catch (Exception e) { - e.printStackTrace(); - } - - System.out.println("Creating datasets..."); - System.out.println(DATASETNAME1 + " has allocation time H5D_ALLOC_TIME_LATE"); - System.out.println(DATASETNAME2 + " has allocation time H5D_ALLOC_TIME_EARLY"); - System.out.println(); - - // Create the dataset using the dataset default creation property list. - try { - if ((file_id >= 0) && (filespace_id >= 0)) - dataset_id1 = H5.H5Dcreate(file_id, DATASETNAME1, HDF5Constants.H5T_NATIVE_INT, filespace_id, - HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset using the dataset creation property list. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id2 = H5.H5Dcreate(file_id, DATASETNAME2, HDF5Constants.H5T_NATIVE_INT, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print space status and storage size for dset1. - try { - if (dataset_id1 >= 0) - space_status = H5.H5Dget_space_status(dataset_id1); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id1 >= 0) - storage_size = H5.H5Dget_storage_size(dataset_id1); - } - catch (Exception e) { - e.printStackTrace(); - } - String the_space = " "; - if (H5D_space_status.get(space_status) != H5D_space_status.H5D_SPACE_STATUS_ALLOCATED) - the_space += "not "; - System.out.println("Space for " + DATASETNAME1 + " has" + the_space + "been allocated."); - System.out.println("Storage size for " + DATASETNAME1 + " is: " + storage_size + " bytes."); - - // Retrieve and print space status and storage size for dset2. - try { - if (dataset_id2 >= 0) - space_status = H5.H5Dget_space_status(dataset_id2); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id2 >= 0) - storage_size = H5.H5Dget_storage_size(dataset_id2); - } - catch (Exception e) { - e.printStackTrace(); - } - the_space = " "; - if (H5D_space_status.get(space_status) != H5D_space_status.H5D_SPACE_STATUS_ALLOCATED) - the_space += "not "; - System.out.println("Space for " + DATASETNAME2 + " has" + the_space + "been allocated."); - System.out.println("Storage size for " + DATASETNAME2 + " is: " + storage_size + " bytes."); - System.out.println(); - - System.out.println("Writing data..."); - System.out.println(); - - // Write the data to the datasets. - try { - if (dataset_id1 >= 0) - H5.H5Dwrite(dataset_id1, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data[0]); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id2 >= 0) - H5.H5Dwrite(dataset_id2, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data[0]); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print space status and storage size for dset1. - try { - if (dataset_id1 >= 0) - space_status = H5.H5Dget_space_status(dataset_id1); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id1 >= 0) - storage_size = H5.H5Dget_storage_size(dataset_id1); - } - catch (Exception e) { - e.printStackTrace(); - } - the_space = " "; - if (H5D_space_status.get(space_status) != H5D_space_status.H5D_SPACE_STATUS_ALLOCATED) - the_space += "not "; - System.out.println("Space for " + DATASETNAME1 + " has" + the_space + "been allocated."); - System.out.println("Storage size for " + DATASETNAME1 + " is: " + storage_size + " bytes."); - - // Retrieve and print space status and storage size for dset2. - try { - if (dataset_id2 >= 0) - space_status = H5.H5Dget_space_status(dataset_id2); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id2 >= 0) - storage_size = H5.H5Dget_storage_size(dataset_id2); - } - catch (Exception e) { - e.printStackTrace(); - } - the_space = " "; - if (H5D_space_status.get(space_status) != H5D_space_status.H5D_SPACE_STATUS_ALLOCATED) - the_space += "not "; - System.out.println("Space for " + DATASETNAME2 + " has" + the_space + "been allocated."); - System.out.println("Storage size for " + DATASETNAME2 + " is: " + storage_size + " bytes."); - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id1 >= 0) - H5.H5Dclose(dataset_id1); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id2 >= 0) - H5.H5Dclose(dataset_id2); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) { H5Ex_D_Alloc.allocation(); } -} diff --git a/java/examples/datasets/H5Ex_D_Checksum.java b/java/examples/datasets/H5Ex_D_Checksum.java deleted file mode 100644 index 7b01176..0000000 --- a/java/examples/datasets/H5Ex_D_Checksum.java +++ /dev/null @@ -1,350 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Checksum { - private static String FILENAME = "H5Ex_D_Checksum.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(-1), - H5Z_FILTER_NONE(0), - H5Z_FILTER_DEFLATE(1), - H5Z_FILTER_SHUFFLE(2), - H5Z_FILTER_FLETCHER32(3), - H5Z_FILTER_SZIP(4), - H5Z_FILTER_NBIT(5), - H5Z_FILTER_SCALEOFFSET(6), - H5Z_FILTER_RESERVED(256), - H5Z_FILTER_MAX(65535); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkFletcher32Filter() - { - try { - int available = H5.H5Zfilter_avail(H5Z_filter.H5Z_FILTER_FLETCHER32.getCode()); - if (available == 0) { - System.out.println("N-Bit filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_FLETCHER32); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("N-Bit filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeChecksum() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the N-Bit filter. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_fletcher32(dcpl_id); - // Set the chunk size. - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readChecksum() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) { - int status = H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - // 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) { - System.out.print("Dataset read failed!"); - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - return; - } - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read - // correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) { - for (int jndx = 0; jndx < DIM_Y; jndx++) - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - // 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. - // size to be the current size. - if (H5Ex_D_Checksum.checkFletcher32Filter()) { - H5Ex_D_Checksum.writeChecksum(); - H5Ex_D_Checksum.readChecksum(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Chunk.java b/java/examples/datasets/H5Ex_D_Chunk.java deleted file mode 100644 index fbfc148..0000000 --- a/java/examples/datasets/H5Ex_D_Chunk.java +++ /dev/null @@ -1,371 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y - and chunk size of CHUNK_XxCHUNK_Y, 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Chunk { - private static String FILENAME = "H5Ex_D_Chunk.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 6; - private static final int DIM_Y = 8; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 4; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5D_layout { - H5D_LAYOUT_ERROR(-1), - H5D_COMPACT(0), - H5D_CONTIGUOUS(1), - H5D_CHUNKED(2), - H5D_VIRTUAL(3), - H5D_NLAYOUTS(4); - private static final Map<Integer, H5D_layout> lookup = new HashMap<Integer, H5D_layout>(); - - static - { - for (H5D_layout s : EnumSet.allOf(H5D_layout.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5D_layout(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5D_layout get(int code) { return lookup.get(code); } - } - - private static void writeChunk() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data to "1", to make it easier to see the selections. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = 1; - - // Print the data to the screen. - System.out.println("Original Data:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the chunk size. - try { - if (dcpl_id >= 0) - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the chunked dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Define and select the first part of the hyperslab selection. - long[] start = {0, 0}; - long[] stride = {3, 3}; - long[] count = {2, 3}; - long[] block = {2, 2}; - try { - if ((filespace_id >= 0)) - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_SET, start, stride, count, - block); - } - catch (Exception e) { - e.printStackTrace(); - } - // 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; - try { - if ((filespace_id >= 0)) { - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_NOTB, start, stride, count, - block); - - // Write the data to the dataset. - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, filespace_id, - HDF5Constants.H5P_DEFAULT, dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readChunk() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Print the storage layout. - try { - if (dcpl_id >= 0) { - int layout_type = H5.H5Pget_layout(dcpl_id); - System.out.print("Storage layout for " + DATASETNAME + " is: "); - switch (H5D_layout.get(layout_type)) { - case H5D_COMPACT: - System.out.println("H5D_COMPACT"); - break; - case H5D_CONTIGUOUS: - System.out.println("H5D_CONTIGUOUS"); - break; - case H5D_CHUNKED: - System.out.println("H5D_CHUNKED"); - break; - case H5D_VIRTUAL: - System.out.println("H5D_VIRTUAL"); - break; - case H5D_LAYOUT_ERROR: - break; - case H5D_NLAYOUTS: - break; - default: - break; - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data as written to disk by hyberslabs:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Initialize the read array. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = 0; - - // Define and select the hyperslab to use for reading. - try { - if (dataset_id >= 0) { - filespace_id = H5.H5Dget_space(dataset_id); - - long[] start = {0, 1}; - long[] stride = {4, 4}; - long[] count = {2, 2}; - long[] block = {2, 3}; - - if (filespace_id >= 0) { - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_SET, start, stride, count, - block); - - // Read the data using the previously defined hyperslab. - if ((dataset_id >= 0) && (filespace_id >= 0)) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - filespace_id, HDF5Constants.H5P_DEFAULT, dset_data); - } - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data as read from disk by hyberslab:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_Chunk.writeChunk(); - H5Ex_D_Chunk.readChunk(); - } -} diff --git a/java/examples/datasets/H5Ex_D_Compact.java b/java/examples/datasets/H5Ex_D_Compact.java deleted file mode 100644 index 3a60283..0000000 --- a/java/examples/datasets/H5Ex_D_Compact.java +++ /dev/null @@ -1,291 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y, then - closes the file. Next, it reopens the file, reads back - the data, and outputs it to the screen. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Compact { - private static String FILENAME = "H5Ex_D_Compact.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int RANK = 2; - - // Values for the status of space allocation - enum H5D_layout { - H5D_LAYOUT_ERROR(-1), - H5D_COMPACT(0), - H5D_CONTIGUOUS(1), - H5D_CHUNKED(2), - H5D_VIRTUAL(3), - H5D_NLAYOUTS(4); - private static final Map<Integer, H5D_layout> lookup = new HashMap<Integer, H5D_layout>(); - - static - { - for (H5D_layout s : EnumSet.allOf(H5D_layout.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5D_layout(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5D_layout get(int code) { return lookup.get(code); } - } - - private static void writeCompact() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the layout to compact. - try { - if (dcpl_id >= 0) - H5.H5Pset_layout(dcpl_id, H5D_layout.H5D_COMPACT.getCode()); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. We will use all default properties for this example. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readCompact() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open file and dataset using the default properties. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Print the storage layout. - try { - if (dcpl_id >= 0) { - int layout_type = H5.H5Pget_layout(dcpl_id); - System.out.print("Storage layout for " + DATASETNAME + " is: "); - switch (H5D_layout.get(layout_type)) { - case H5D_COMPACT: - System.out.println("H5D_COMPACT"); - break; - case H5D_CONTIGUOUS: - System.out.println("H5D_CONTIGUOUS"); - break; - case H5D_CHUNKED: - System.out.println("H5D_CHUNKED"); - break; - case H5D_VIRTUAL: - System.out.println("H5D_VIRTUAL"); - break; - case H5D_LAYOUT_ERROR: - break; - case H5D_NLAYOUTS: - break; - default: - break; - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data for " + DATASETNAME + " is: "); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_Compact.writeCompact(); - H5Ex_D_Compact.readCompact(); - } -} diff --git a/java/examples/datasets/H5Ex_D_External.java b/java/examples/datasets/H5Ex_D_External.java deleted file mode 100644 index d706fb7..0000000 --- a/java/examples/datasets/H5Ex_D_External.java +++ /dev/null @@ -1,236 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y, - 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_External { - private static String FILENAME = "H5Ex_D_External.h5"; - private static String EXTERNALNAME = "H5Ex_D_External.data"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int RANK = 2; - private static final int NAME_BUF_SIZE = 32; - - private static void writeExternal() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // set the external file. - try { - if (dcpl_id >= 0) - H5.H5Pset_external(dcpl_id, EXTERNALNAME, 0, HDF5Constants.H5F_UNLIMITED); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the HDF5Constants.dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the dataset. - try { - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Terminate access to the data space. - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readExternal() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - String[] Xname = new String[1]; - - // Open file using the default properties. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDWR, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open dataset using the default properties. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the name of the external file. - long[] Xsize = new long[NAME_BUF_SIZE]; - try { - if (dcpl_id >= 0) - H5.H5Pget_external(dcpl_id, 0, Xsize.length, Xname, Xsize); - } - catch (Exception e) { - e.printStackTrace(); - } - System.out.println(DATASETNAME + " is stored in file: " + Xname[0]); - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println(DATASETNAME + ":"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Close the dataset. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_External.writeExternal(); - H5Ex_D_External.readExternal(); - } -} diff --git a/java/examples/datasets/H5Ex_D_FillValue.java b/java/examples/datasets/H5Ex_D_FillValue.java deleted file mode 100644 index db4dff7..0000000 --- a/java/examples/datasets/H5Ex_D_FillValue.java +++ /dev/null @@ -1,240 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y, - 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_FillValue { - private static String FILENAME = "H5Ex_D_FillValue.h5"; - private static String DATASETNAME = "ExtendibleArray"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int EDIM_X = 6; - private static final int EDIM_Y = 10; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 4; - private static final int RANK = 2; - private static final int NDIMS = 2; - private static final int FILLVAL = 99; - - private static void fillValue() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] extdims = {EDIM_X, EDIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - long[] maxdims = {HDF5Constants.H5S_UNLIMITED, HDF5Constants.H5S_UNLIMITED}; - int[][] write_dset_data = new int[DIM_X][DIM_Y]; - int[][] read_dset_data = new int[DIM_X][DIM_Y]; - int[][] extend_dset_data = new int[EDIM_X][EDIM_Y]; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - write_dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace with unlimited dimensions. - try { - dataspace_id = H5.H5Screate_simple(RANK, dims, maxdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the chunk size. - try { - if (dcpl_id >= 0) - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the fill value for the dataset - try { - int[] fill_value = {FILLVAL}; - if (dcpl_id >= 0) - H5.H5Pset_fill_value(dcpl_id, HDF5Constants.H5T_NATIVE_INT, fill_value); - } - catch (Exception e) { - e.printStackTrace(); - } - - // 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. - try { - if (dcpl_id >= 0) - H5.H5Pset_alloc_time(dcpl_id, HDF5Constants.H5D_ALLOC_TIME_EARLY); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset using the dataset creation property list. - try { - if ((file_id >= 0) && (dataspace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, dataspace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read values from the dataset, which has not been written to yet. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, read_dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset before being written to:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(read_dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, write_dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data back. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, read_dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset after being written to:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(read_dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Extend the dataset. - try { - if (dataset_id >= 0) - H5.H5Dset_extent(dataset_id, extdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read from the extended dataset. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, extend_dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset after extension:"); - for (int indx = 0; indx < EDIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < EDIM_Y; jndx++) - System.out.print(extend_dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) { H5Ex_D_FillValue.fillValue(); } -} diff --git a/java/examples/datasets/H5Ex_D_Gzip.java b/java/examples/datasets/H5Ex_D_Gzip.java deleted file mode 100644 index 0a94254..0000000 --- a/java/examples/datasets/H5Ex_D_Gzip.java +++ /dev/null @@ -1,336 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Gzip { - private static String FILENAME = "H5Ex_D_Gzip.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkGzipFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_DEFLATE); - if (available == 0) { - System.out.println("gzip filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_DEFLATE); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("gzip filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeGzip() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the gzip compression - // filter. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_deflate(dcpl_id, 9); - // Set the chunk size. - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readGzip() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) { - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read - // correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) { - for (int jndx = 0; jndx < DIM_Y; jndx++) - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - // 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. - if (H5Ex_D_Gzip.checkGzipFilter()) { - H5Ex_D_Gzip.writeGzip(); - H5Ex_D_Gzip.readGzip(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Hyperslab.java b/java/examples/datasets/H5Ex_D_Hyperslab.java deleted file mode 100644 index 0575d50..0000000 --- a/java/examples/datasets/H5Ex_D_Hyperslab.java +++ /dev/null @@ -1,272 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y, 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Hyperslab { - private static String FILENAME = "H5Ex_D_Hyperslab.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 6; - private static final int DIM_Y = 8; - private static final int RANK = 2; - - private static void writeHyperslab() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data to "1", to make it easier to see the selections. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = 1; - - // Print the data to the screen. - System.out.println("Original Data:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. We will use all default properties for this example. - try { - if ((file_id >= 0) && (filespace_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Define and select the first part of the hyperslab selection. - long[] start = {0, 0}; - long[] stride = {3, 3}; - long[] count = {2, 3}; - long[] block = {2, 2}; - try { - if ((filespace_id >= 0)) - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_SET, start, stride, count, - block); - } - catch (Exception e) { - e.printStackTrace(); - } - // 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; - try { - if ((filespace_id >= 0)) { - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_NOTB, start, stride, count, - block); - - // Write the data to the dataset. - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, filespace_id, - HDF5Constants.H5P_DEFAULT, dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readHyperslab() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data as written to disk by hyberslabs:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Initialize the read array. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = 0; - - // Define and select the hyperslab to use for reading. - try { - if (dataset_id >= 0) { - filespace_id = H5.H5Dget_space(dataset_id); - - long[] start = {0, 1}; - long[] stride = {4, 4}; - long[] count = {2, 2}; - long[] block = {2, 3}; - - if (filespace_id >= 0) { - H5.H5Sselect_hyperslab(filespace_id, HDF5Constants.H5S_SELECT_SET, start, stride, count, - block); - - // Read the data using the previously defined hyperslab. - if ((dataset_id >= 0) && (filespace_id >= 0)) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - filespace_id, HDF5Constants.H5P_DEFAULT, dset_data); - } - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data as read from disk by hyberslab:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_Hyperslab.writeHyperslab(); - H5Ex_D_Hyperslab.readHyperslab(); - } -} diff --git a/java/examples/datasets/H5Ex_D_Nbit.java b/java/examples/datasets/H5Ex_D_Nbit.java deleted file mode 100644 index d54ce21..0000000 --- a/java/examples/datasets/H5Ex_D_Nbit.java +++ /dev/null @@ -1,305 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ - -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Nbit { - private static String FILENAME = "H5Ex_D_Nbit.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkNbitFilter() - { - try { - // Check if N-Bit compression is available and can be used for both compression and decompression. - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_NBIT); - if (available == 0) { - System.out.println("N-Bit filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_NBIT); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("N-Bit filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeData() throws Exception - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dtype_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - try { - // Create a new file using the default properties. - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - filespace_id = H5.H5Screate_simple(RANK, 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_id = H5.H5Tcopy(HDF5Constants.H5T_STD_I32LE); - H5.H5Tset_precision(dtype_id, 16); - H5.H5Tset_offset(dtype_id, 5); - - // Create the dataset creation property list, add the N-Bit filter and set the chunk size. - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - H5.H5Pset_nbit(dcpl_id); - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - - // Create the dataset. - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, dtype_id, filespace_id, HDF5Constants.H5P_DEFAULT, - dcpl_id, HDF5Constants.H5P_DEFAULT); - - // Write the data to the dataset. - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - finally { - // Close and release resources. - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - if (dtype_id >= 0) - H5.H5Tclose(dtype_id); - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - if (file_id >= 0) - H5.H5Fclose(file_id); - } - } - - private static void readData() throws Exception - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) { - int status = H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - // Check if the read was successful. - if (status < 0) - System.out.print("Dataset read failed!"); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read - // correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) { - for (int jndx = 0; jndx < DIM_Y; jndx++) - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - /* - * 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. - */ - try { - if (H5Ex_D_Nbit.checkNbitFilter()) { - H5Ex_D_Nbit.writeData(); - H5Ex_D_Nbit.readData(); - } - } - catch (Exception ex) { - ex.printStackTrace(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_ReadWrite.java b/java/examples/datasets/H5Ex_D_ReadWrite.java deleted file mode 100644 index 4b26a2c..0000000 --- a/java/examples/datasets/H5Ex_D_ReadWrite.java +++ /dev/null @@ -1,179 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - - This example shows how to read and write data to a - dataset. The program first writes integers to a dataset - with dataspace dimensions of DIM_XxDIM_Y, then closes the - file. Next, it reopens the file, reads back the data, and - outputs it to the screen. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_ReadWrite { - private static String FILENAME = "H5Ex_D_ReadWrite.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int RANK = 2; - - private static void WriteDataset() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. We will use all default properties for this example. - try { - if ((file_id >= 0) && (filespace_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void ReadDataset() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open file using the default properties. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDWR, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open dataset using the default properties. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println(DATASETNAME + ":"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // Close the dataset. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_ReadWrite.WriteDataset(); - H5Ex_D_ReadWrite.ReadDataset(); - } -} diff --git a/java/examples/datasets/H5Ex_D_Shuffle.java b/java/examples/datasets/H5Ex_D_Shuffle.java deleted file mode 100644 index 3d80f7d..0000000 --- a/java/examples/datasets/H5Ex_D_Shuffle.java +++ /dev/null @@ -1,374 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Shuffle { - private static String FILENAME = "H5Ex_D_Shuffle.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkGzipFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_DEFLATE); - if (available == 0) { - System.out.println("gzip filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_DEFLATE); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("gzip filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static boolean checkShuffleFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_SHUFFLE); - if (available == 0) { - System.out.println("Shuffle filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_SHUFFLE); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("Shuffle filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeShuffle() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the shuffle - // filter and the gzip compression filter. - // 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. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_shuffle(dcpl_id); - H5.H5Pset_deflate(dcpl_id, 9); - // Set the chunk size. - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readShuffle() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the number of filters, and retrieve and print the - // type of each. - try { - if (dcpl_id >= 0) { - int nfilters = H5.H5Pget_nfilters(dcpl_id); - for (int indx = 0; indx < nfilters; indx++) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - filter_type = H5.H5Pget_filter(dcpl_id, indx, flags, cd_nelmts, cd_values, 120, - filter_name, filter_config); - System.out.print("Filter " + indx + ": Type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) { - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read - // correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) { - for (int jndx = 0; jndx < DIM_Y; jndx++) - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - // 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. - // Similarly, check for availability of the shuffle filter. - if (H5Ex_D_Shuffle.checkGzipFilter() && H5Ex_D_Shuffle.checkShuffleFilter()) { - H5Ex_D_Shuffle.writeShuffle(); - H5Ex_D_Shuffle.readShuffle(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Sofloat.java b/java/examples/datasets/H5Ex_D_Sofloat.java deleted file mode 100644 index a5f5cd8..0000000 --- a/java/examples/datasets/H5Ex_D_Sofloat.java +++ /dev/null @@ -1,362 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.text.DecimalFormat; -import java.text.DecimalFormatSymbols; -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Locale; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Sofloat { - - private static String FILENAME = "H5Ex_D_Sofloat.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkScaleoffsetFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_SCALEOFFSET); - if (available == 0) { - System.out.println("Scale-Offset filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_SCALEOFFSET); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("Scale-Offset filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeData() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - double[][] dset_data = new double[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) { - double x = indx; - double y = jndx; - dset_data[indx][jndx] = (x + 1) / (y + 0.3) + y; - } - - // Find the maximum value in the dataset, to verify that it was read correctly. - double max = dset_data[0][0]; - double min = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) { - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - if (min > dset_data[indx][jndx]) - min = dset_data[indx][jndx]; - } - - // Print the maximum value. - DecimalFormat df = new DecimalFormat("#,##0.000000", new DecimalFormatSymbols(Locale.US)); - System.out.println("Maximum value in write buffer is: " + df.format(max)); - System.out.println("Minimum value in write buffer is: " + df.format(min)); - - // Create a new file using the default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the Scale-Offset - // filter and set the chunk size. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_scaleoffset(dcpl_id, HDF5Constants.H5Z_SO_FLOAT_DSCALE, 2); - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_IEEE_F64LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_DOUBLE, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close and release resources. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close file - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readData() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - double[][] dset_data = new double[DIM_X][DIM_Y]; - - // Open file using the default properties. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - // Open dataset using the default properties. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_DOUBLE, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read correctly. - double max = dset_data[0][0]; - double min = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) { - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - if (min > dset_data[indx][jndx]) - min = dset_data[indx][jndx]; - } - - // Print the maximum value. - DecimalFormat df = new DecimalFormat("#,##0.000000", new DecimalFormatSymbols(Locale.US)); - System.out.println("Maximum value in " + DATASETNAME + " is: " + df.format(max)); - System.out.println("Minimum value in " + DATASETNAME + " is: " + df.format(min)); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - - // 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. - if (H5Ex_D_Sofloat.checkScaleoffsetFilter()) { - H5Ex_D_Sofloat.writeData(); - H5Ex_D_Sofloat.readData(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Soint.java b/java/examples/datasets/H5Ex_D_Soint.java deleted file mode 100644 index 3eb8e37..0000000 --- a/java/examples/datasets/H5Ex_D_Soint.java +++ /dev/null @@ -1,336 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Soint { - - private static String FILENAME = "H5Ex_D_Soint.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkScaleoffsetFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_SCALEOFFSET); - if (available == 0) { - System.out.println("Scale-Offset filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_SCALEOFFSET); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("Scale-Offset filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeData() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using the default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the Scale-Offset - // filter and set the chunk size. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_scaleoffset(dcpl_id, HDF5Constants.H5Z_SO_INT, - HDF5Constants.H5Z_SO_INT_MINBITS_DEFAULT); - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close and release resources. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close file - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readData() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open file using the default properties. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - // Open dataset using the default properties. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) { - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - - // 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. - if (H5Ex_D_Soint.checkScaleoffsetFilter()) { - H5Ex_D_Soint.writeData(); - H5Ex_D_Soint.readData(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Szip.java b/java/examples/datasets/H5Ex_D_Szip.java deleted file mode 100644 index 0426a87..0000000 --- a/java/examples/datasets/H5Ex_D_Szip.java +++ /dev/null @@ -1,337 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Szip { - private static String FILENAME = "H5Ex_D_Szip.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 32; - private static final int DIM_Y = 64; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 8; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkSzipFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_SZIP); - if (available == 0) { - System.out.println("szip filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_SZIP); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("szip filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeSzip() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(RANK, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the szip compression - // filter. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_szip(dcpl_id, HDF5Constants.H5_SZIP_NN_OPTION_MASK, 8); - // Set the chunk size. - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset. - try { - if ((file_id >= 0) && (filespace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, filespace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readSzip() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - case H5Z_FILTER_NBIT: - System.out.println("H5Z_FILTER_NBIT"); - break; - case H5Z_FILTER_SCALEOFFSET: - System.out.println("H5Z_FILTER_SCALEOFFSET"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) { - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Find the maximum value in the dataset, to verify that it was read - // correctly. - int max = dset_data[0][0]; - for (int indx = 0; indx < DIM_X; indx++) { - for (int jndx = 0; jndx < DIM_Y; jndx++) - if (max < dset_data[indx][jndx]) - max = dset_data[indx][jndx]; - } - // Print the maximum value. - System.out.println("Maximum value in " + DATASETNAME + " is: " + max); - - // End access to the dataset and release resources used by it. - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - // 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. - if (H5Ex_D_Szip.checkSzipFilter()) { - H5Ex_D_Szip.writeSzip(); - H5Ex_D_Szip.readSzip(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_Transform.java b/java/examples/datasets/H5Ex_D_Transform.java deleted file mode 100644 index 16ab423..0000000 --- a/java/examples/datasets/H5Ex_D_Transform.java +++ /dev/null @@ -1,250 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_Transform { - - private static String FILE = "H5Ex_D_Transform.h5"; - private static String DATASET = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static String TRANSFORM = "x+1"; - private static String RTRANSFORM = "x-1"; - - private static void writeData() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long filespace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dxpl_id = HDF5Constants.H5I_INVALID_HID; - - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize data. - for (int i = 0; i < DIM_X; i++) - for (int j = 0; j < DIM_Y; j++) - dset_data[i][j] = i * j - j; - - // Output the data to the screen. - System.out.println("Original Data:"); - for (int i = 0; i < DIM_X; i++) { - System.out.print(" ["); - for (int j = 0; j < DIM_Y; j++) - System.out.print(" " + dset_data[i][j] + " "); - System.out.println("]"); - } - - // Create a new file using the default properties. - try { - file_id = H5.H5Fcreate(FILE, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace. Setting maximum size to NULL sets the maximum - // size to be the current size. - try { - filespace_id = H5.H5Screate_simple(2, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset transfer property list and define the transform expression. - try { - dxpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_XFER); - if (dxpl_id >= 0) - H5.H5Pset_data_transform(dxpl_id, TRANSFORM); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset using the default properties. Unfortunately we must save as - // a native type or the transform operation will fail. - try { - if ((file_id >= 0) && (filespace_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASET, HDF5Constants.H5T_NATIVE_INT, filespace_id, - HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset using the dataset transfer property list. - try { - if ((dataset_id >= 0) && (dxpl_id >= 0)) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, dxpl_id, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dxpl_id >= 0) - H5.H5Pclose(dxpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (filespace_id >= 0) - H5.H5Sclose(filespace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readData() - { - - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dxpl_id = HDF5Constants.H5I_INVALID_HID; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Open an existing file using the default properties. - try { - file_id = H5.H5Fopen(FILE, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset using the default properties. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASET, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Data as written with transform '" + TRANSFORM + "'"); - for (int i = 0; i < DIM_X; i++) { - System.out.print(" ["); - for (int j = 0; j < DIM_Y; j++) - System.out.print(" " + dset_data[i][j] + " "); - System.out.println("]"); - } - - // Create the dataset transfer property list and define the transform expression. - try { - dxpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_XFER); - if (dxpl_id >= 0) - H5.H5Pset_data_transform(dxpl_id, RTRANSFORM); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Read the data using the dataset transfer property list. - try { - if ((dataset_id >= 0) && (dxpl_id >= 0)) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, dxpl_id, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - - System.out.println("Data as written with transform '" + TRANSFORM + "' and read with transform '" + - RTRANSFORM + "'"); - for (int i = 0; i < DIM_X; i++) { - System.out.print(" ["); - for (int j = 0; j < DIM_Y; j++) - System.out.print(" " + dset_data[i][j] + " "); - System.out.println("]"); - } - - // Close and release resources. - try { - if (dxpl_id >= 0) - H5.H5Pclose(dxpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_Transform.writeData(); - H5Ex_D_Transform.readData(); - } -} diff --git a/java/examples/datasets/H5Ex_D_UnlimitedAdd.java b/java/examples/datasets/H5Ex_D_UnlimitedAdd.java deleted file mode 100644 index 4154cf3..0000000 --- a/java/examples/datasets/H5Ex_D_UnlimitedAdd.java +++ /dev/null @@ -1,393 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - This example shows how to create and extend an unlimited - dataset. The program first writes integers to a dataset - with dataspace dimensions of DIM_XxDIM_Y, 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_UnlimitedAdd { - private static String FILENAME = "H5Ex_D_UnlimitedAdd.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int EDIM_X = 6; - private static final int EDIM_Y = 10; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 4; - private static final int RANK = 2; - private static final int NDIMS = 2; - - private static void writeUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - long[] maxdims = {HDF5Constants.H5S_UNLIMITED, HDF5Constants.H5S_UNLIMITED}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace with unlimited dimensions. - try { - dataspace_id = H5.H5Screate_simple(RANK, dims, maxdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the chunk size. - try { - if (dcpl_id >= 0) - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the unlimited dataset. - try { - if ((file_id >= 0) && (dataspace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, dataspace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void extendUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] extdims = {EDIM_X, EDIM_Y}; - long[] start = {0, 0}; - long[] count = new long[2]; - int[][] dset_data; - int[][] extend_dset_data = new int[EDIM_X][EDIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDWR, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for read buffer. This is a - // two dimensional dataset so the dynamic allocation must be done - // in steps. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset before extension:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Extend the dataset. - try { - if (dataset_id >= 0) - H5.H5Dset_extent(dataset_id, extdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataspace for the newly extended dataset. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Initialize data for writing to the extended dataset. - for (int indx = 0; indx < EDIM_X; indx++) - for (int jndx = 0; jndx < EDIM_Y; jndx++) - extend_dset_data[indx][jndx] = jndx; - - // Select the entire dataspace. - try { - if (dataspace_id >= 0) { - H5.H5Sselect_all(dataspace_id); - - // Subtract a hyperslab reflecting the original dimensions from the - // selection. The selection now contains only the newly extended - // portions of the dataset. - count[0] = dims[0]; - count[1] = dims[1]; - H5.H5Sselect_hyperslab(dataspace_id, HDF5Constants.H5S_SELECT_NOTB, start, null, count, null); - - // Write the data to the selected portion of the dataset. - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, dataspace_id, - HDF5Constants.H5P_DEFAULT, extend_dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for the read buffer as before. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset after extension:"); - for (int indx = 0; indx < dims[0]; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < dims[1]; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_UnlimitedAdd.writeUnlimited(); - H5Ex_D_UnlimitedAdd.extendUnlimited(); - H5Ex_D_UnlimitedAdd.readUnlimited(); - } -} diff --git a/java/examples/datasets/H5Ex_D_UnlimitedGzip.java b/java/examples/datasets/H5Ex_D_UnlimitedGzip.java deleted file mode 100644 index e084641..0000000 --- a/java/examples/datasets/H5Ex_D_UnlimitedGzip.java +++ /dev/null @@ -1,505 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - 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 DIM_XxDIM_Y, 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. - ************************************************************/ -package examples.datasets; - -import java.util.EnumSet; -import java.util.HashMap; -import java.util.Map; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_UnlimitedGzip { - private static String FILENAME = "H5Ex_D_UnlimitedGzip.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int EDIM_X = 6; - private static final int EDIM_Y = 10; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 4; - private static final int RANK = 2; - private static final int NDIMS = 2; - - // Values for the status of space allocation - enum H5Z_filter { - H5Z_FILTER_ERROR(HDF5Constants.H5Z_FILTER_ERROR), - H5Z_FILTER_NONE(HDF5Constants.H5Z_FILTER_NONE), - H5Z_FILTER_DEFLATE(HDF5Constants.H5Z_FILTER_DEFLATE), - H5Z_FILTER_SHUFFLE(HDF5Constants.H5Z_FILTER_SHUFFLE), - H5Z_FILTER_FLETCHER32(HDF5Constants.H5Z_FILTER_FLETCHER32), - H5Z_FILTER_SZIP(HDF5Constants.H5Z_FILTER_SZIP), - H5Z_FILTER_NBIT(HDF5Constants.H5Z_FILTER_NBIT), - H5Z_FILTER_SCALEOFFSET(HDF5Constants.H5Z_FILTER_SCALEOFFSET), - H5Z_FILTER_RESERVED(HDF5Constants.H5Z_FILTER_RESERVED), - H5Z_FILTER_MAX(HDF5Constants.H5Z_FILTER_MAX); - private static final Map<Integer, H5Z_filter> lookup = new HashMap<Integer, H5Z_filter>(); - - static - { - for (H5Z_filter s : EnumSet.allOf(H5Z_filter.class)) - lookup.put(s.getCode(), s); - } - - private int code; - - H5Z_filter(int layout_type) { this.code = layout_type; } - - public int getCode() { return this.code; } - - public static H5Z_filter get(int code) { return lookup.get(code); } - } - - private static boolean checkGzipFilter() - { - try { - int available = H5.H5Zfilter_avail(HDF5Constants.H5Z_FILTER_DEFLATE); - if (available == 0) { - System.out.println("gzip filter not available."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - int filter_info = H5.H5Zget_filter_info(HDF5Constants.H5Z_FILTER_DEFLATE); - if (((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_ENCODE_ENABLED) == 0) || - ((filter_info & HDF5Constants.H5Z_FILTER_CONFIG_DECODE_ENABLED) == 0)) { - System.out.println("gzip filter not available for encoding and decoding."); - return false; - } - } - catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - private static void writeUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - long[] maxdims = {HDF5Constants.H5S_UNLIMITED, HDF5Constants.H5S_UNLIMITED}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace with unlimited dimensions. - try { - dataspace_id = H5.H5Screate_simple(RANK, dims, maxdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list, add the gzip compression - // filter. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - if (dcpl_id >= 0) { - H5.H5Pset_deflate(dcpl_id, 9); - // Set the chunk size. - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the unlimited dataset. - try { - if ((file_id >= 0) && (dataspace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, dataspace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void extendUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] extdims = {EDIM_X, EDIM_Y}; - long[] start = {0, 0}; - long[] count = new long[2]; - int[][] dset_data; - int[][] extend_dset_data = new int[EDIM_X][EDIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDWR, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for read buffer. This is a - // two dimensional dataset so the dynamic allocation must be done - // in steps. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset before extension:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Extend the dataset. - try { - if (dataset_id >= 0) - H5.H5Dset_extent(dataset_id, extdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataspace for the newly extended dataset. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Initialize data for writing to the extended dataset. - for (int indx = 0; indx < EDIM_X; indx++) - for (int jndx = 0; jndx < EDIM_Y; jndx++) - extend_dset_data[indx][jndx] = jndx; - - // Select the entire dataspace. - try { - if (dataspace_id >= 0) { - H5.H5Sselect_all(dataspace_id); - - // Subtract a hyperslab reflecting the original dimensions from the - // selection. The selection now contains only the newly extended - // portions of the dataset. - count[0] = dims[0]; - count[1] = dims[1]; - H5.H5Sselect_hyperslab(dataspace_id, HDF5Constants.H5S_SELECT_NOTB, start, null, count, null); - - // Write the data to the selected portion of the dataset. - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, dataspace_id, - HDF5Constants.H5P_DEFAULT, extend_dset_data); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataset creation property list. - try { - if (dataset_id >= 0) - dcpl_id = H5.H5Dget_create_plist(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve and print the filter type. Here we only retrieve the - // first filter because we know that we only added one filter. - try { - if (dcpl_id >= 0) { - // Java lib requires a valid filter_name object and cd_values - int[] flags = {0}; - long[] cd_nelmts = {1}; - int[] cd_values = {0}; - String[] filter_name = {""}; - int[] filter_config = {0}; - int filter_type = -1; - filter_type = H5.H5Pget_filter(dcpl_id, 0, flags, cd_nelmts, cd_values, 120, filter_name, - filter_config); - System.out.print("Filter type is: "); - switch (H5Z_filter.get(filter_type)) { - case H5Z_FILTER_DEFLATE: - System.out.println("H5Z_FILTER_DEFLATE"); - break; - case H5Z_FILTER_SHUFFLE: - System.out.println("H5Z_FILTER_SHUFFLE"); - break; - case H5Z_FILTER_FLETCHER32: - System.out.println("H5Z_FILTER_FLETCHER32"); - break; - case H5Z_FILTER_SZIP: - System.out.println("H5Z_FILTER_SZIP"); - break; - default: - System.out.println("H5Z_FILTER_ERROR"); - } - System.out.println(); - } - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for the read buffer as before. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset after extension:"); - for (int indx = 0; indx < dims[0]; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < dims[1]; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - // 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. - if (H5Ex_D_UnlimitedGzip.checkGzipFilter()) { - H5Ex_D_UnlimitedGzip.writeUnlimited(); - H5Ex_D_UnlimitedGzip.extendUnlimited(); - H5Ex_D_UnlimitedGzip.readUnlimited(); - } - } -} diff --git a/java/examples/datasets/H5Ex_D_UnlimitedMod.java b/java/examples/datasets/H5Ex_D_UnlimitedMod.java deleted file mode 100644 index ccabcdd..0000000 --- a/java/examples/datasets/H5Ex_D_UnlimitedMod.java +++ /dev/null @@ -1,379 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Copyright by The HDF Group. * - * 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 COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://www.hdfgroup.org/licenses. * - * If you do not have access to either file, you may request a copy from * - * help@hdfgroup.org. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/************************************************************ - This example shows how to create and extend an unlimited - dataset. The program first writes integers to a dataset - with dataspace dimensions of DIM_XxDIM_Y, 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. - ************************************************************/ -package examples.datasets; - -import hdf.hdf5lib.H5; -import hdf.hdf5lib.HDF5Constants; - -public class H5Ex_D_UnlimitedMod { - private static String FILENAME = "H5Ex_D_UnlimitedMod.h5"; - private static String DATASETNAME = "DS1"; - private static final int DIM_X = 4; - private static final int DIM_Y = 7; - private static final int EDIM_X = 6; - private static final int EDIM_Y = 10; - private static final int CHUNK_X = 4; - private static final int CHUNK_Y = 4; - private static final int RANK = 2; - private static final int NDIMS = 2; - - private static void writeUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dcpl_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] chunk_dims = {CHUNK_X, CHUNK_Y}; - long[] maxdims = {HDF5Constants.H5S_UNLIMITED, HDF5Constants.H5S_UNLIMITED}; - int[][] dset_data = new int[DIM_X][DIM_Y]; - - // Initialize the dataset. - for (int indx = 0; indx < DIM_X; indx++) - for (int jndx = 0; jndx < DIM_Y; jndx++) - dset_data[indx][jndx] = indx * jndx - jndx; - - // Create a new file using default properties. - try { - file_id = H5.H5Fcreate(FILENAME, HDF5Constants.H5F_ACC_TRUNC, HDF5Constants.H5P_DEFAULT, - HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create dataspace with unlimited dimensions. - try { - dataspace_id = H5.H5Screate_simple(RANK, dims, maxdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the dataset creation property list. - try { - dcpl_id = H5.H5Pcreate(HDF5Constants.H5P_DATASET_CREATE); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Set the chunk size. - try { - if (dcpl_id >= 0) - H5.H5Pset_chunk(dcpl_id, NDIMS, chunk_dims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Create the unlimited dataset. - try { - if ((file_id >= 0) && (dataspace_id >= 0) && (dcpl_id >= 0)) - dataset_id = H5.H5Dcreate(file_id, DATASETNAME, HDF5Constants.H5T_STD_I32LE, dataspace_id, - HDF5Constants.H5P_DEFAULT, dcpl_id, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Write the data to the dataset. - try { - if (dataset_id >= 0) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dcpl_id >= 0) - H5.H5Pclose(dcpl_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void extendUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - long[] extdims = {EDIM_X, EDIM_Y}; - int[][] dset_data; - int[][] extend_dset_data = new int[EDIM_X][EDIM_Y]; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDWR, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for read buffer. This is a - // two dimensional dataset so the dynamic allocation must be done - // in steps. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset before extension:"); - for (int indx = 0; indx < DIM_X; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < DIM_Y; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Extend the dataset. - try { - if (dataset_id >= 0) - H5.H5Dset_extent(dataset_id, extdims); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Retrieve the dataspace for the newly extended dataset. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Initialize data for writing to the extended dataset. - for (int indx = 0; indx < EDIM_X; indx++) - for (int jndx = 0; jndx < EDIM_Y; jndx++) - extend_dset_data[indx][jndx] = jndx; - - // Write the data tto the extended dataset. - try { - if ((dataspace_id >= 0) && (dataset_id >= 0)) - H5.H5Dwrite(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, dataspace_id, - HDF5Constants.H5P_DEFAULT, extend_dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - private static void readUnlimited() - { - long file_id = HDF5Constants.H5I_INVALID_HID; - long dataspace_id = HDF5Constants.H5I_INVALID_HID; - long dataset_id = HDF5Constants.H5I_INVALID_HID; - long[] dims = {DIM_X, DIM_Y}; - int[][] dset_data; - - // Open an existing file. - try { - file_id = H5.H5Fopen(FILENAME, HDF5Constants.H5F_ACC_RDONLY, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Open an existing dataset. - try { - if (file_id >= 0) - dataset_id = H5.H5Dopen(file_id, DATASETNAME, HDF5Constants.H5P_DEFAULT); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Get dataspace and allocate memory for the read buffer as before. - try { - if (dataset_id >= 0) - dataspace_id = H5.H5Dget_space(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sget_simple_extent_dims(dataspace_id, dims, null); - } - catch (Exception e) { - e.printStackTrace(); - } - // Allocate array of pointers to rows. - dset_data = new int[(int)dims[0]][(int)dims[1]]; - - // Read the data using the default properties. - try { - if (dataset_id >= 0) - H5.H5Dread(dataset_id, HDF5Constants.H5T_NATIVE_INT, HDF5Constants.H5S_ALL, - HDF5Constants.H5S_ALL, HDF5Constants.H5P_DEFAULT, dset_data); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Output the data to the screen. - System.out.println("Dataset after extension:"); - for (int indx = 0; indx < dims[0]; indx++) { - System.out.print(" [ "); - for (int jndx = 0; jndx < dims[1]; jndx++) - System.out.print(dset_data[indx][jndx] + " "); - System.out.println("]"); - } - System.out.println(); - - // End access to the dataset and release resources used by it. - try { - if (dataset_id >= 0) - H5.H5Dclose(dataset_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - try { - if (dataspace_id >= 0) - H5.H5Sclose(dataspace_id); - } - catch (Exception e) { - e.printStackTrace(); - } - - // Close the file. - try { - if (file_id >= 0) - H5.H5Fclose(file_id); - } - catch (Exception e) { - e.printStackTrace(); - } - } - - public static void main(String[] args) - { - H5Ex_D_UnlimitedMod.writeUnlimited(); - H5Ex_D_UnlimitedMod.extendUnlimited(); - H5Ex_D_UnlimitedMod.readUnlimited(); - } -} diff --git a/java/examples/datasets/JavaDatasetExample.sh.in b/java/examples/datasets/JavaDatasetExample.sh.in deleted file mode 100644 index 9683076..0000000 --- a/java/examples/datasets/JavaDatasetExample.sh.in +++ /dev/null @@ -1,497 +0,0 @@ -#! /bin/sh -# -# Copyright by The HDF Group. -# 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 COPYING file, which can be found at the root of the source code -# distribution tree, or in https://www.hdfgroup.org/licenses. -# If you do not have access to either file, you may request a copy from -# help@hdfgroup.org. -# - -top_builddir=@top_builddir@ -top_srcdir=@top_srcdir@ -srcdir=@srcdir@ -IS_DARWIN="@H5_IS_DARWIN@" - -USE_FILTER_SZIP="@USE_FILTER_SZIP@" -USE_FILTER_DEFLATE="@USE_FILTER_DEFLATE@" - -TESTNAME=EX_Datasets -EXIT_SUCCESS=0 -EXIT_FAILURE=1 - -# Set up default variable values if not supplied by the user. -RM='rm -rf' -CMP='cmp' -DIFF='diff -c' -CP='cp' -DIRNAME='dirname' -BASENAME='basename' -LS='ls' -AWK='awk' - -nerrors=0 - -# where the libs exist -HDFLIB_HOME="$top_srcdir/java/lib" -BLDDIR="." -BLDLIBDIR="$BLDDIR/testlibs" -HDFTEST_HOME="$top_srcdir/java/examples/datasets" -JARFILE=jar@PACKAGE_TARNAME@-@PACKAGE_VERSION@.jar -TESTJARFILE=jar@PACKAGE_TARNAME@datasets.jar -test -d $BLDLIBDIR || mkdir -p $BLDLIBDIR - -###################################################################### -# library files -# -------------------------------------------------------------------- -# All the library files copy from source directory to test directory -# NOTE: Keep this framework to add/remove test files. -# This list are also used for checking exist. -# Comment '#' without space can be used. -# -------------------------------------------------------------------- -LIST_LIBRARY_FILES=" -$top_builddir/src/.libs/libhdf5.* -$top_builddir/java/src/jni/.libs/libhdf5_java.* -$top_builddir/java/src/$JARFILE -" -LIST_JAR_TESTFILES=" -$HDFLIB_HOME/slf4j-api-2.0.6.jar -$HDFLIB_HOME/ext/slf4j-simple-2.0.6.jar -" -LIST_DATA_FILES=" -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Alloc.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Checksum.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Chunk.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Compact.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_External.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_FillValue.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Gzip.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Hyperslab.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_ReadWrite.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Shuffle.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Szip.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_UnlimitedAdd.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_UnlimitedGzip.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_UnlimitedMod.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Nbit.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Transform.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Sofloat.txt -$HDFTEST_HOME/../testfiles/examples.datasets.H5Ex_D_Soint.txt -" - -# -# copy files from source dirs to test dir -# -COPY_LIBFILES="$LIST_LIBRARY_FILES" -COPY_JARTESTFILES="$LIST_JAR_TESTFILES" - -COPY_LIBFILES_TO_BLDLIBDIR() -{ - # copy test files. Used -f to make sure get a new copy - for tstfile in $COPY_LIBFILES - do - # ignore '#' comment - echo $tstfile | tr -d ' ' | grep '^#' > /dev/null - RET=$? - if [ $RET -eq 1 ]; then - # skip cp if srcdir is same as destdir - # this occurs when build/test performed in source dir and - # make cp fail - SDIR=`$DIRNAME $tstfile` - INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` - INODE_DDIR=`$LS -i -d $BLDLIBDIR | $AWK -F' ' '{print $1}'` - if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then - $CP -fR $tstfile $BLDLIBDIR - if [ $? -ne 0 ]; then - echo "Error: FAILED to copy $tstfile ." - - # Comment out this to CREATE expected file - exit $EXIT_FAILURE - fi - BNAME=`$BASENAME $tstfile` - if [ "$BNAME" = "libhdf5_java.dylib" ]; then - COPIED_LIBHDF5_JAVA=1 - fi - fi - fi - done - if [[ "$IS_DARWIN" = "yes" ]] && [[ $COPIED_LIBHDF5_JAVA -eq 1 ]]; then - (cd $BLDLIBDIR; \ - install_name_tool -add_rpath @loader_path libhdf5_java.dylib; \ - exist_path=` otool -l libhdf5_java.dylib | grep libhdf5 | grep -v java | awk '{print $2}'`; \ - echo $exist_path; \ - install_name_tool -change $exist_path @rpath/libhdf5.dylib libhdf5_java.dylib) - fi - # copy jar files. Used -f to make sure get a new copy - for tstfile in $COPY_JARTESTFILES - do - # ignore '#' comment - echo $tstfile | tr -d ' ' | grep '^#' > /dev/null - RET=$? - if [ $RET -eq 1 ]; then - # skip cp if srcdir is same as destdir - # this occurs when build/test performed in source dir and - # make cp fail - SDIR=`$DIRNAME $tstfile` - INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` - INODE_DDIR=`$LS -i -d $BLDLIBDIR | $AWK -F' ' '{print $1}'` - if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then - $CP -fR $tstfile $BLDLIBDIR - if [ $? -ne 0 ]; then - echo "Error: FAILED to copy $tstfile ." - - # Comment out this to CREATE expected file - exit $EXIT_FAILURE - fi - fi - fi - done -} - -CLEAN_LIBFILES_AND_BLDLIBDIR() -{ - # skip rm if srcdir is same as destdir - # this occurs when build/test performed in source dir and - # make cp fail - SDIR=$HDFLIB_HOME - INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` - INODE_DDIR=`$LS -i -d $BLDLIBDIR | $AWK -F' ' '{print $1}'` - if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then - $RM -rf $BLDLIBDIR - fi -} - -COPY_DATAFILES="$LIST_DATA_FILES" - -COPY_DATAFILES_TO_BLDDIR() -{ - # copy test files. Used -f to make sure get a new copy - for tstfile in $COPY_DATAFILES - do - # ignore '#' comment - echo $tstfile | tr -d ' ' | grep '^#' > /dev/null - RET=$? - if [ $RET -eq 1 ]; then - # skip cp if srcdir is same as destdir - # this occurs when build/test performed in source dir and - # make cp fail - SDIR=`$DIRNAME $tstfile` - INODE_SDIR=`$LS -i -d $SDIR | $AWK -F' ' '{print $1}'` - INODE_DDIR=`$LS -i -d $BLDDIR | $AWK -F' ' '{print $1}'` - if [ "$INODE_SDIR" != "$INODE_DDIR" ]; then - $CP -f $tstfile $BLDDIR - if [ $? -ne 0 ]; then - echo "Error: FAILED to copy $tstfile ." - - # Comment out this to CREATE expected file - exit $EXIT_FAILURE - fi - fi - fi - done -} - -CLEAN_DATAFILES_AND_BLDDIR() -{ - $RM $BLDDIR/examples.datasets.H5Ex_D_*.txt - $RM $BLDDIR/H5Ex_D_*.out - $RM $BLDDIR/H5Ex_D_*.h5 - $RM $BLDDIR/H5Ex_D_External.data -} - -# Print a line-line message left justified in a field of 70 characters -# beginning with the word "Testing". -# -TESTING() { - SPACES=" " - echo "Testing $* $SPACES" | cut -c1-70 | tr -d '\012' -} - -# where Java is installed (requires jdk1.7.x) -JAVAEXE=@JAVA@ -JAVAEXEFLAGS=@H5_JAVAFLAGS@ - -############################################################################### -# DO NOT MODIFY BELOW THIS LINE -############################################################################### - -# prepare for test -COPY_LIBFILES_TO_BLDLIBDIR -COPY_DATAFILES_TO_BLDDIR - -CPATH=".:"$BLDLIBDIR"/"$JARFILE":"$BLDLIBDIR"/slf4j-api-2.0.6.jar:"$BLDLIBDIR"/slf4j-simple-2.0.6.jar:"$TESTJARFILE"" - -TEST=/usr/bin/test -if [ ! -x /usr/bin/test ] -then -TEST=`which test` -fi - -if $TEST -z "$CLASSPATH"; then - CLASSPATH="" -fi -CLASSPATH=$CPATH":"$CLASSPATH -export CLASSPATH - -if $TEST -n "$JAVAPATH" ; then - PATH=$JAVAPATH":"$PATH - export PATH -fi - -if $TEST -e /bin/uname; then - os_name=`/bin/uname -s` -elif $TEST -e /usr/bin/uname; then - os_name=`/usr/bin/uname -s` -else - os_name=unknown -fi - -if $TEST -z "$LD_LIBRARY_PATH" ; then - LD_LIBRARY_PATH="" -fi - -case $os_name in - *) - LD_LIBRARY_PATH=$BLDLIBDIR:$LD_LIBRARY_PATH - ;; -esac - -export LD_LIBRARY_PATH - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Alloc" -TESTING examples.datasets.H5Ex_D_Alloc -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Alloc > H5Ex_D_Alloc.out -) -if diff H5Ex_D_Alloc.out examples.datasets.H5Ex_D_Alloc.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Alloc" -else - echo "**FAILED** datasets.H5Ex_D_Alloc" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Checksum" -TESTING examples.datasets.H5Ex_D_Checksum -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Checksum > H5Ex_D_Checksum.out -) -if diff H5Ex_D_Checksum.out examples.datasets.H5Ex_D_Checksum.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Checksum" -else - echo "**FAILED** datasets.H5Ex_D_Checksum" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Chunk" -TESTING examples.datasets.H5Ex_D_Chunk -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Chunk > H5Ex_D_Chunk.out -) -if diff H5Ex_D_Chunk.out examples.datasets.H5Ex_D_Chunk.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Chunk" -else - echo "**FAILED** datasets.H5Ex_D_Chunk" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Compact" -TESTING examples.datasets.H5Ex_D_Compact -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Compact > H5Ex_D_Compact.out -) -if diff H5Ex_D_Compact.out examples.datasets.H5Ex_D_Compact.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Compact" -else - echo "**FAILED** datasets.H5Ex_D_Compact" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_External" -TESTING examples.datasets.H5Ex_D_External -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_External > H5Ex_D_External.out -) -if diff H5Ex_D_External.out examples.datasets.H5Ex_D_External.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_External" -else - echo "**FAILED** datasets.H5Ex_D_External" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_FillValue" -TESTING examples.datasets.H5Ex_D_FillValue -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_FillValue > H5Ex_D_FillValue.out -) -if diff H5Ex_D_FillValue.out examples.datasets.H5Ex_D_FillValue.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_FillValue" -else - echo "**FAILED** datasets.H5Ex_D_FillValue" - nerrors="`expr $nerrors + 1`" -fi - -if test $USE_FILTER_DEFLATE = "yes"; then - echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Gzip" - TESTING examples.datasets.H5Ex_D_Gzip - ( - $RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Gzip > H5Ex_D_Gzip.out - ) - if diff H5Ex_D_Gzip.out examples.datasets.H5Ex_D_Gzip.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Gzip" - else - echo "**FAILED** datasets.H5Ex_D_Gzip" - nerrors="`expr $nerrors + 1`" - fi -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Hyperslab" -TESTING examples.datasets.H5Ex_D_Hyperslab -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Hyperslab > H5Ex_D_Hyperslab.out -) -if diff H5Ex_D_Hyperslab.out examples.datasets.H5Ex_D_Hyperslab.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Hyperslab" -else - echo "**FAILED** datasets.H5Ex_D_Hyperslab" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_ReadWrite" -TESTING examples.datasets.H5Ex_D_ReadWrite -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_ReadWrite > H5Ex_D_ReadWrite.out -) -if diff H5Ex_D_ReadWrite.out examples.datasets.H5Ex_D_ReadWrite.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_ReadWrite" -else - echo "**FAILED** datasets.H5Ex_D_ReadWrite" - nerrors="`expr $nerrors + 1`" -fi - -if test $USE_FILTER_DEFLATE = "yes"; then - echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Shuffle" - TESTING examples.datasets.H5Ex_D_Shuffle - ( - $RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Shuffle > H5Ex_D_Shuffle.out - ) - if diff H5Ex_D_Shuffle.out examples.datasets.H5Ex_D_Shuffle.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Shuffle" - else - echo "**FAILED** datasets.H5Ex_D_Shuffle" - nerrors="`expr $nerrors + 1`" - fi -fi - -if test $USE_FILTER_SZIP = "yes"; then - echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Szip" - TESTING examples.datasets.H5Ex_D_Szip - ( - $RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Szip > H5Ex_D_Szip.out - ) - if diff H5Ex_D_Szip.out examples.datasets.H5Ex_D_Szip.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Szip" - else - echo "**FAILED** datasets.H5Ex_D_Szip" - nerrors="`expr $nerrors + 1`" - fi -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedAdd" -TESTING examples.datasets.H5Ex_D_UnlimitedAdd -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedAdd > H5Ex_D_UnlimitedAdd.out -) -if diff H5Ex_D_UnlimitedAdd.out examples.datasets.H5Ex_D_UnlimitedAdd.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_UnlimitedAdd" -else - echo "**FAILED** datasets.H5Ex_D_UnlimitedAdd" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedGzip" -TESTING examples.datasets.H5Ex_D_UnlimitedGzip -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedGzip > H5Ex_D_UnlimitedGzip.out -) -if diff H5Ex_D_External.out examples.datasets.H5Ex_D_External.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_UnlimitedGzip" -else - echo "**FAILED** datasets.H5Ex_D_UnlimitedGzip" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedMod" -TESTING examples.datasets.H5Ex_D_UnlimitedMod -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_UnlimitedMod > H5Ex_D_UnlimitedMod.out -) -if diff H5Ex_D_UnlimitedMod.out examples.datasets.H5Ex_D_UnlimitedMod.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_UnlimitedMod" -else - echo "**FAILED** datasets.H5Ex_D_UnlimitedMod" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Nbit" -TESTING examples.datasets.H5Ex_D_Nbit -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Nbit > H5Ex_D_Nbit.out -) -if diff H5Ex_D_Nbit.out examples.datasets.H5Ex_D_Nbit.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Nbit" -else - echo "**FAILED** datasets.H5Ex_D_Nbit" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Transform" -TESTING examples.datasets.H5Ex_D_Transform -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Transform > H5Ex_D_Transform.out -) -if diff H5Ex_D_Transform.out examples.datasets.H5Ex_D_Transform.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Transform" -else - echo "**FAILED** datasets.H5Ex_D_Transform" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Sofloat" -TESTING examples.datasets.H5Ex_D_Sofloat -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Sofloat > H5Ex_D_Sofloat.out -) -if diff H5Ex_D_Sofloat.out examples.datasets.H5Ex_D_Sofloat.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Sofloat" -else - echo "**FAILED** datasets.H5Ex_D_Sofloat" - nerrors="`expr $nerrors + 1`" -fi - -echo "$JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Soint" -TESTING examples.datasets.H5Ex_D_Soint -( -$RUNSERIAL $JAVAEXE $JAVAEXEFLAGS -Xmx1024M -Dorg.slf4j.simpleLogger.defaultLog=trace -Djava.library.path=$BLDLIBDIR -cp $CLASSPATH examples.datasets.H5Ex_D_Soint > H5Ex_D_Soint.out -) -if diff H5Ex_D_Soint.out examples.datasets.H5Ex_D_Soint.txt > /dev/null; then - echo " PASSED datasets.H5Ex_D_Soint" -else - echo "**FAILED** datasets.H5Ex_D_Soint" - nerrors="`expr $nerrors + 1`" -fi - -# Clean up temporary files/directories -CLEAN_LIBFILES_AND_BLDLIBDIR -CLEAN_DATAFILES_AND_BLDDIR - -# Report test results and exit -if test $nerrors -eq 0 ; then - echo "All $TESTNAME tests passed." - exit $EXIT_SUCCESS -else - echo "$TESTNAME tests failed with $nerrors errors." - exit $EXIT_FAILURE -fi diff --git a/java/examples/datasets/Makefile.am b/java/examples/datasets/Makefile.am deleted file mode 100644 index d4bb666..0000000 --- a/java/examples/datasets/Makefile.am +++ /dev/null @@ -1,75 +0,0 @@ -# -# Copyright by The HDF Group. -# 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 COPYING file, which can be found at the root of the source code -# distribution tree, or in https://www.hdfgroup.org/licenses. -# 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. -## -# -# HDF5 Java Library Examples Makefile(.in) - -include $(top_srcdir)/config/commence.am - -# Mark this directory as part of the JNI API -JAVA_API=yes - -JAVAROOT = .classes - -classes: - test -d $(@D)/$(JAVAROOT) || $(MKDIR_P) $(@D)/$(JAVAROOT) - -pkgpath = examples/datasets -hdfjarfile = jar$(PACKAGE_TARNAME)-$(PACKAGE_VERSION).jar -CLASSPATH_ENV=CLASSPATH=.:$(JAVAROOT):$(top_builddir)/java/src/$(hdfjarfile):$(top_srcdir)/java/lib/slf4j-api-2.0.6.jar:$(top_srcdir)/java/lib/ext/slf4j-simple-2.0.6.jar:$$CLASSPATH - -jarfile = jar$(PACKAGE_TARNAME)datasets.jar - -AM_JAVACFLAGS = $(H5_JAVACFLAGS) -deprecation - -TESTPACKAGE = - -noinst_JAVA = \ - H5Ex_D_Alloc.java \ - H5Ex_D_Checksum.java \ - H5Ex_D_Chunk.java \ - H5Ex_D_Compact.java \ - H5Ex_D_External.java \ - H5Ex_D_FillValue.java \ - H5Ex_D_Gzip.java \ - H5Ex_D_Hyperslab.java \ - H5Ex_D_ReadWrite.java \ - H5Ex_D_Shuffle.java \ - H5Ex_D_Szip.java \ - H5Ex_D_UnlimitedAdd.java \ - H5Ex_D_UnlimitedGzip.java \ - H5Ex_D_UnlimitedMod.java \ - H5Ex_D_Nbit.java \ - H5Ex_D_Transform.java \ - H5Ex_D_Sofloat.java \ - H5Ex_D_Soint.java - -$(jarfile): classnoinst.stamp classes - $(JAR) cvf $@ -C $(JAVAROOT)/ $(pkgpath) - -noinst_DATA = $(jarfile) - -.PHONY: classes - -check_SCRIPTS = JavaDatasetExample.sh -TEST_SCRIPT = $(check_SCRIPTS) - -CLEANFILES = classnoinst.stamp $(jarfile) $(JAVAROOT)/$(pkgpath)/*.class JavaDatasetExample.sh - -clean: - rm -rf $(JAVAROOT)/* - rm -f $(jarfile) - rm -f classnoinst.stamp - -include $(top_srcdir)/config/conclude.am |