summaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/hdf/hdf5lib/HDF5Constants.java12
-rw-r--r--java/src/jni/h5Constants.c15
-rw-r--r--java/src/jni/h5util.c8
3 files changed, 33 insertions, 2 deletions
diff --git a/java/src/hdf/hdf5lib/HDF5Constants.java b/java/src/hdf/hdf5lib/HDF5Constants.java
index 25b65fa..55b6f4b 100644
--- a/java/src/hdf/hdf5lib/HDF5Constants.java
+++ b/java/src/hdf/hdf5lib/HDF5Constants.java
@@ -1095,6 +1095,10 @@ public class HDF5Constants {
/** */
public static final long H5T_FORTRAN_S1 = H5T_FORTRAN_S1();
/** */
+ public static final long H5T_IEEE_F16BE = H5T_IEEE_F16BE();
+ /** */
+ public static final long H5T_IEEE_F16LE = H5T_IEEE_F16LE();
+ /** */
public static final long H5T_IEEE_F32BE = H5T_IEEE_F32BE();
/** */
public static final long H5T_IEEE_F32LE = H5T_IEEE_F32LE();
@@ -1175,6 +1179,8 @@ public class HDF5Constants {
/** */
public static final long H5T_NATIVE_FLOAT = H5T_NATIVE_FLOAT();
/** */
+ public static final long H5T_NATIVE_FLOAT16 = H5T_NATIVE_FLOAT16();
+ /** */
public static final long H5T_NATIVE_HADDR = H5T_NATIVE_HADDR();
/** */
public static final long H5T_NATIVE_HBOOL = H5T_NATIVE_HBOOL();
@@ -2580,6 +2586,10 @@ public class HDF5Constants {
private static native final long H5T_FORTRAN_S1();
+ private static native final long H5T_IEEE_F16BE();
+
+ private static native final long H5T_IEEE_F16LE();
+
private static native final long H5T_IEEE_F32BE();
private static native final long H5T_IEEE_F32LE();
@@ -2660,6 +2670,8 @@ public class HDF5Constants {
private static native final long H5T_NATIVE_FLOAT();
+ private static native final long H5T_NATIVE_FLOAT16();
+
private static native final long H5T_NATIVE_HADDR();
private static native final long H5T_NATIVE_HBOOL();
diff --git a/java/src/jni/h5Constants.c b/java/src/jni/h5Constants.c
index d83b462..ee1bd5a 100644
--- a/java/src/jni/h5Constants.c
+++ b/java/src/jni/h5Constants.c
@@ -2678,6 +2678,16 @@ Java_hdf_hdf5lib_HDF5Constants_H5T_1FORTRAN_1S1(JNIEnv *env, jclass cls)
return H5T_FORTRAN_S1;
}
JNIEXPORT jlong JNICALL
+Java_hdf_hdf5lib_HDF5Constants_H5T_1IEEE_1F16BE(JNIEnv *env, jclass cls)
+{
+ return H5T_IEEE_F16BE;
+}
+JNIEXPORT jlong JNICALL
+Java_hdf_hdf5lib_HDF5Constants_H5T_1IEEE_1F16LE(JNIEnv *env, jclass cls)
+{
+ return H5T_IEEE_F16LE;
+}
+JNIEXPORT jlong JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5T_1IEEE_1F32BE(JNIEnv *env, jclass cls)
{
return H5T_IEEE_F32BE;
@@ -2878,6 +2888,11 @@ Java_hdf_hdf5lib_HDF5Constants_H5T_1NATIVE_1FLOAT(JNIEnv *env, jclass cls)
return H5T_NATIVE_FLOAT;
}
JNIEXPORT jlong JNICALL
+Java_hdf_hdf5lib_HDF5Constants_H5T_1NATIVE_1FLOAT16(JNIEnv *env, jclass cls)
+{
+ return H5T_NATIVE_FLOAT16;
+}
+JNIEXPORT jlong JNICALL
Java_hdf_hdf5lib_HDF5Constants_H5T_1NATIVE_1HADDR(JNIEnv *env, jclass cls)
{
return H5T_NATIVE_HADDR;
diff --git a/java/src/jni/h5util.c b/java/src/jni/h5util.c
index bf798b8..d10ab83 100644
--- a/java/src/jni/h5util.c
+++ b/java/src/jni/h5util.c
@@ -2082,7 +2082,9 @@ h5str_get_little_endian_type(hid_t tid)
}
case H5T_FLOAT: {
- if (size == 4)
+ if (size == 2)
+ p_type = H5Tcopy(H5T_IEEE_F16LE);
+ else if (size == 4)
p_type = H5Tcopy(H5T_IEEE_F32LE);
else if (size == 8)
p_type = H5Tcopy(H5T_IEEE_F64LE);
@@ -2176,7 +2178,9 @@ h5str_get_big_endian_type(hid_t tid)
}
case H5T_FLOAT: {
- if (size == 4)
+ if (size == 2)
+ p_type = H5Tcopy(H5T_IEEE_F16BE);
+ else if (size == 4)
p_type = H5Tcopy(H5T_IEEE_F32BE);
else if (size == 8)
p_type = H5Tcopy(H5T_IEEE_F64BE);