diff options
author | Elena Pourmal <epourmal@hdfgroup.org> | 2000-11-03 19:45:50 (GMT) |
---|---|---|
committer | Elena Pourmal <epourmal@hdfgroup.org> | 2000-11-03 19:45:50 (GMT) |
commit | 46f49b84cf37d98fc68d582c857f98345f2e5835 (patch) | |
tree | 05496d12e49b67f871814f3c11f4f69b18d5b419 /fortran/src/H5Tf.c | |
parent | 0556db98e281f377b54e7e918bc296604b490993 (diff) | |
download | hdf5-46f49b84cf37d98fc68d582c857f98345f2e5835.zip hdf5-46f49b84cf37d98fc68d582c857f98345f2e5835.tar.gz hdf5-46f49b84cf37d98fc68d582c857f98345f2e5835.tar.bz2 |
[svn-r2795]
Purpose:
New feature
Description:
Now all Fortran flags such as H5F_ACC_RDONLY_F (previously defined in the
H5fortran_flags.f90 file) are generated at runtime when h5init_fortran_f
subroutine is called. All flags have now the same value as
corresponding C flags. This change affects user's programming model:
Every Fortran program that uses F90 HDF5 Library has to call
h5init_fortran_f(error) subroutine before the first call to the
F90 HDF5 Library and h5close_fortran_f(error) after the last call to the
Library. h5init(close)_types_f calls are not needed anymore since
F90 datatypes are intialized(closed) with the h5init(close)_fortran_f
calls.
Platforms tested:
O2K and Solaris2.7
Diffstat (limited to 'fortran/src/H5Tf.c')
-rw-r--r-- | fortran/src/H5Tf.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/fortran/src/H5Tf.c b/fortran/src/H5Tf.c index d097936..e1757f8 100644 --- a/fortran/src/H5Tf.c +++ b/fortran/src/H5Tf.c @@ -191,10 +191,13 @@ nh5tget_class_c ( hid_t_f *type_id , int_f *classtype) c_type_id = *type_id; c_classtype = H5Tget_class(c_type_id); if (c_classtype == H5T_NO_CLASS ) { - *classtype = H5T_NO_CLASS_F; + /* *classtype = H5T_NO_CLASS_F; */ + *classtype = (int_f)H5T_NO_CLASS; ret_value = -1; return ret_value; } + *classtype = c_classtype; +/* if (c_classtype == H5T_INTEGER) *classtype = H5T_INTEGER_F; if (c_classtype == H5T_FLOAT) *classtype = H5T_FLOAT_F; if (c_classtype == H5T_TIME) *classtype = H5T_TIME_F; @@ -204,6 +207,7 @@ nh5tget_class_c ( hid_t_f *type_id , int_f *classtype) if (c_classtype == H5T_COMPOUND) *classtype = H5T_COMPOUND_F; if (c_classtype == H5T_REFERENCE) *classtype = H5T_REFERENCE_F; if (c_classtype == H5T_ENUM) *classtype = H5T_ENUM_F; +*/ return ret_value; } @@ -231,9 +235,12 @@ nh5tget_order_c ( hid_t_f *type_id , int_f *order) c_type_id = *type_id; c_order = H5Tget_order(c_type_id); if ( c_order < 0 ) return ret_value; + *order = (int_f)c_order; +/* if ( c_order == H5T_ORDER_LE) *order = H5T_ORDER_LE_F; if ( c_order == H5T_ORDER_BE) *order = H5T_ORDER_BE_F; if ( c_order == H5T_ORDER_VAX) *order = H5T_ORDER_VAX_F; +*/ return ret_value; } @@ -259,10 +266,12 @@ nh5tset_order_c ( hid_t_f *type_id , int_f *order) hid_t c_type_id; H5T_order_t c_order; herr_t status; - + c_order = (H5T_order_t)*order; +/* if ( *order == H5T_ORDER_LE_F) c_order = H5T_ORDER_LE; if ( *order == H5T_ORDER_BE_F) c_order = H5T_ORDER_BE; if ( *order == H5T_ORDER_VAX_F) c_order = H5T_ORDER_VAX; +*/ c_type_id = *type_id; status = H5Tset_order(c_type_id, c_order); if ( status < 0 ) ret_value = -1; |