From f04bbc535fe1592a2dd42db34e77bb3097011a65 Mon Sep 17 00:00:00 2001 From: Raymond Lu Date: Tue, 18 May 2004 11:09:46 -0500 Subject: [svn-r8538] Purpose: Add null dataspace for fortran. Platforms tested: verbena pgf90(only fortran is concerned) --- fortran/src/H5Sf.c | 3 ++- fortran/src/H5Sff.f90 | 3 +++ fortran/src/H5_f.c | 41 +++++++++++++++++++++-------------------- fortran/src/H5f90global.f90 | 42 ++++++++++++++++++++++-------------------- 4 files changed, 48 insertions(+), 41 deletions(-) diff --git a/fortran/src/H5Sf.c b/fortran/src/H5Sf.c index 8153707..d8b86b5 100644 --- a/fortran/src/H5Sf.c +++ b/fortran/src/H5Sf.c @@ -499,7 +499,7 @@ nh5sget_simple_extent_ndims_c ( hid_t_f *space_id , int_f *ndims ) * of a dataspace * Inputs: space_id - identifier of the dataspace * Outputs: classtype - class type; possible values are: - * H5S_SCALAR_F (0), H5S_SIMPLE_F (1) + * H5S_SCALAR_F (0), H5S_SIMPLE_F (1), H5S_NULL_F (2) * Returns: 0 on success, -1 on failure * Programmer: Elena Pourmal * Wednesday, August 11, 1999 @@ -520,6 +520,7 @@ nh5sget_simple_extent_type_c ( hid_t_f *space_id , int_f *classtype) /* if (c_classtype == H5S_SCALAR) *classtype = H5S_SCALAR_F; if (c_classtype == H5S_SIMPLE) *classtype = H5S_SIMPLE_F; + if (c_classtype == H5S_NULL) *classtype = H5S_NULL_F; */ return ret_value; } diff --git a/fortran/src/H5Sff.f90 b/fortran/src/H5Sff.f90 index 1657b39..27e8839 100644 --- a/fortran/src/H5Sff.f90 +++ b/fortran/src/H5Sff.f90 @@ -189,6 +189,7 @@ ! Possible values are: ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F(1) + ! H5S_NULL_F(2) INTEGER(HID_T), INTENT(OUT) :: space_id ! Dataspace identifier INTEGER, INTENT(OUT) :: hdferr ! Error code @@ -1089,6 +1090,7 @@ ! H5S_NO_CLASS_F (-1) ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F (1) +! H5S_NULL_F (2) ! hdferr: - error code ! Success: 0 ! Failure: -1 @@ -1120,6 +1122,7 @@ ! H5S_NO_CLASS_F (-1) ! H5S_SCALAR_F (0) ! H5S_SIMPLE_F (1) + ! H5S_NULL_F (2) INTEGER, INTENT(OUT) :: hdferr ! Error code ! INTEGER, EXTERNAL :: h5sget_simple_extent_type_c diff --git a/fortran/src/H5_f.c b/fortran/src/H5_f.c index 8ef7007..9813a4f 100644 --- a/fortran/src/H5_f.c +++ b/fortran/src/H5_f.c @@ -297,26 +297,27 @@ nh5init_flags_c( int_f *h5d_flags, int_f *h5f_flags, h5s_flags[0] = H5S_SCALAR; h5s_flags[1] = H5S_SIMPLE; - h5s_flags[2] = H5S_SELECT_SET; - h5s_flags[3] = H5S_SELECT_OR; - h5s_flags[4] = (int_f)H5S_UNLIMITED; - h5s_flags[5] = H5S_ALL; - - h5s_flags[6] = H5S_SELECT_NOOP; - h5s_flags[7] = H5S_SELECT_AND; - h5s_flags[8] = H5S_SELECT_XOR; - h5s_flags[9] = H5S_SELECT_NOTB; - h5s_flags[10] = H5S_SELECT_NOTA; - h5s_flags[11] = H5S_SELECT_APPEND; - h5s_flags[12] = H5S_SELECT_PREPEND; - h5s_flags[13] = H5S_SELECT_INVALID; - - - h5s_flags[14] = H5S_SEL_ERROR; - h5s_flags[15] = H5S_SEL_NONE; - h5s_flags[16] = H5S_SEL_POINTS; - h5s_flags[17] = H5S_SEL_HYPERSLABS; - h5s_flags[18] = H5S_SEL_ALL; + h5s_flags[2] = H5S_NULL; + h5s_flags[3] = H5S_SELECT_SET; + h5s_flags[4] = H5S_SELECT_OR; + h5s_flags[5] = (int_f)H5S_UNLIMITED; + h5s_flags[6] = H5S_ALL; + + h5s_flags[7] = H5S_SELECT_NOOP; + h5s_flags[8] = H5S_SELECT_AND; + h5s_flags[9] = H5S_SELECT_XOR; + h5s_flags[10] = H5S_SELECT_NOTB; + h5s_flags[11] = H5S_SELECT_NOTA; + h5s_flags[12] = H5S_SELECT_APPEND; + h5s_flags[13] = H5S_SELECT_PREPEND; + h5s_flags[14] = H5S_SELECT_INVALID; + + + h5s_flags[15] = H5S_SEL_ERROR; + h5s_flags[16] = H5S_SEL_NONE; + h5s_flags[17] = H5S_SEL_POINTS; + h5s_flags[18] = H5S_SEL_HYPERSLABS; + h5s_flags[19] = H5S_SEL_ALL; /* * H5T flags diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.f90 index 8b6979c..17e97f4 100644 --- a/fortran/src/H5f90global.f90 +++ b/fortran/src/H5f90global.f90 @@ -391,6 +391,7 @@ INTEGER :: H5S_SCALAR_F INTEGER :: H5S_SIMPLE_F + INTEGER :: H5S_NULL_F INTEGER :: H5S_UNLIMITED_F INTEGER :: H5S_ALL_F @@ -415,26 +416,27 @@ EQUIVALENCE(H5S_flags(1), H5S_SCALAR_F) EQUIVALENCE(H5S_flags(2), H5S_SIMPLE_F) - EQUIVALENCE(H5S_flags(3), H5S_SELECT_SET_F) - EQUIVALENCE(H5S_flags(4), H5S_SELECT_OR_F) - EQUIVALENCE(H5S_flags(5), H5S_UNLIMITED_F) - EQUIVALENCE(H5S_flags(6), H5S_ALL_F) - - EQUIVALENCE(H5S_flags(7), H5S_SELECT_NOOP_F) - EQUIVALENCE(H5S_flags(8), H5S_SELECT_AND_F) - EQUIVALENCE(H5S_flags(9), H5S_SELECT_XOR_F) - EQUIVALENCE(H5S_flags(10), H5S_SELECT_NOTB_F) - EQUIVALENCE(H5S_flags(11), H5S_SELECT_NOTA_F) - EQUIVALENCE(H5S_flags(12), H5S_SELECT_APPEND_F) - EQUIVALENCE(H5S_flags(13), H5S_SELECT_PREPEND_F) - EQUIVALENCE(H5S_flags(14), H5S_SELECT_INVALID_F) - - - EQUIVALENCE(H5S_flags(15), H5S_SEL_ERROR_F) - EQUIVALENCE(H5S_flags(16), H5S_SEL_NONE_F) - EQUIVALENCE(H5S_flags(17), H5S_SEL_POINTS_F) - EQUIVALENCE(H5S_flags(18), H5S_SEL_HYPERSLABS_F) - EQUIVALENCE(H5S_flags(19), H5S_SEL_ALL_F) + EQUIVALENCE(H5S_flags(3), H5S_NULL_F) + EQUIVALENCE(H5S_flags(4), H5S_SELECT_SET_F) + EQUIVALENCE(H5S_flags(5), H5S_SELECT_OR_F) + EQUIVALENCE(H5S_flags(6), H5S_UNLIMITED_F) + EQUIVALENCE(H5S_flags(7), H5S_ALL_F) + + EQUIVALENCE(H5S_flags(8), H5S_SELECT_NOOP_F) + EQUIVALENCE(H5S_flags(9), H5S_SELECT_AND_F) + EQUIVALENCE(H5S_flags(10), H5S_SELECT_XOR_F) + EQUIVALENCE(H5S_flags(11), H5S_SELECT_NOTB_F) + EQUIVALENCE(H5S_flags(12), H5S_SELECT_NOTA_F) + EQUIVALENCE(H5S_flags(13), H5S_SELECT_APPEND_F) + EQUIVALENCE(H5S_flags(14), H5S_SELECT_PREPEND_F) + EQUIVALENCE(H5S_flags(15), H5S_SELECT_INVALID_F) + + + EQUIVALENCE(H5S_flags(16), H5S_SEL_ERROR_F) + EQUIVALENCE(H5S_flags(17), H5S_SEL_NONE_F) + EQUIVALENCE(H5S_flags(18), H5S_SEL_POINTS_F) + EQUIVALENCE(H5S_flags(19), H5S_SEL_HYPERSLABS_F) + EQUIVALENCE(H5S_flags(20), H5S_SEL_ALL_F) ! -- cgit v0.12