diff options
Diffstat (limited to 'hl/fortran/src')
-rwxr-xr-x | hl/fortran/src/H5LTf90proto.h | 474 | ||||
-rwxr-xr-x | hl/fortran/src/H5LTfc.c | 504 | ||||
-rwxr-xr-x | hl/fortran/src/H5LTff.f90 | 9658 | ||||
-rwxr-xr-x | hl/fortran/src/H5TBfc.c | 61 | ||||
-rwxr-xr-x | hl/fortran/src/H5TBff.f90 | 1578 |
5 files changed, 8092 insertions, 4183 deletions
diff --git a/hl/fortran/src/H5LTf90proto.h b/hl/fortran/src/H5LTf90proto.h index c0de5ea..b418e72 100755 --- a/hl/fortran/src/H5LTf90proto.h +++ b/hl/fortran/src/H5LTf90proto.h @@ -34,40 +34,88 @@ H5_FCDLL void HD5packFstring (char *src, char *dest, size_t len); # define nh5ltmake_dataset_int1_c H5_FC_FUNC_(h5ltmake_dataset_int1_c, H5LTMAKE_DATASET_INT1_C) # define nh5ltmake_dataset_int2_c H5_FC_FUNC_(h5ltmake_dataset_int2_c, H5LTMAKE_DATASET_INT2_C) # define nh5ltmake_dataset_int3_c H5_FC_FUNC_(h5ltmake_dataset_int3_c, H5LTMAKE_DATASET_INT3_C) +# define nh5ltmake_dataset_int4_c H5_FC_FUNC_(h5ltmake_dataset_int4_c, H5LTMAKE_DATASET_INT4_C) +# define nh5ltmake_dataset_int5_c H5_FC_FUNC_(h5ltmake_dataset_int5_c, H5LTMAKE_DATASET_INT5_C) +# define nh5ltmake_dataset_int6_c H5_FC_FUNC_(h5ltmake_dataset_int6_c, H5LTMAKE_DATASET_INT6_C) +# define nh5ltmake_dataset_int7_c H5_FC_FUNC_(h5ltmake_dataset_int7_c, H5LTMAKE_DATASET_INT7_C) # define nh5ltmake_dataset_fl1_c H5_FC_FUNC_(h5ltmake_dataset_fl1_c, H5LTMAKE_DATASET_FL1_C) # define nh5ltmake_dataset_fl2_c H5_FC_FUNC_(h5ltmake_dataset_fl2_c, H5LTMAKE_DATASET_FL2_C) # define nh5ltmake_dataset_fl3_c H5_FC_FUNC_(h5ltmake_dataset_fl3_c, H5LTMAKE_DATASET_FL3_C) +# define nh5ltmake_dataset_fl4_c H5_FC_FUNC_(h5ltmake_dataset_fl4_c, H5LTMAKE_DATASET_FL4_C) +# define nh5ltmake_dataset_fl5_c H5_FC_FUNC_(h5ltmake_dataset_fl5_c, H5LTMAKE_DATASET_FL5_C) +# define nh5ltmake_dataset_fl6_c H5_FC_FUNC_(h5ltmake_dataset_fl6_c, H5LTMAKE_DATASET_FL6_C) +# define nh5ltmake_dataset_fl7_c H5_FC_FUNC_(h5ltmake_dataset_fl7_c, H5LTMAKE_DATASET_FL7_C) # define nh5ltmake_dataset_dl1_c H5_FC_FUNC_(h5ltmake_dataset_dl1_c, H5LTMAKE_DATASET_DL1_C) # define nh5ltmake_dataset_dl2_c H5_FC_FUNC_(h5ltmake_dataset_dl2_c, H5LTMAKE_DATASET_DL2_C) # define nh5ltmake_dataset_dl3_c H5_FC_FUNC_(h5ltmake_dataset_dl3_c, H5LTMAKE_DATASET_DL3_C) +# define nh5ltmake_dataset_dl4_c H5_FC_FUNC_(h5ltmake_dataset_dl4_c, H5LTMAKE_DATASET_DL4_C) +# define nh5ltmake_dataset_dl5_c H5_FC_FUNC_(h5ltmake_dataset_dl5_c, H5LTMAKE_DATASET_DL5_C) +# define nh5ltmake_dataset_dl6_c H5_FC_FUNC_(h5ltmake_dataset_dl6_c, H5LTMAKE_DATASET_DL6_C) +# define nh5ltmake_dataset_dl7_c H5_FC_FUNC_(h5ltmake_dataset_dl7_c, H5LTMAKE_DATASET_DL7_C) # define nh5ltmake_dataset_nint1_c H5_FC_FUNC_(h5ltmake_dataset_nint1_c, H5LTMAKE_DATASET_NINT1_C) # define nh5ltmake_dataset_nint2_c H5_FC_FUNC_(h5ltmake_dataset_nint2_c, H5LTMAKE_DATASET_NINT2_C) # define nh5ltmake_dataset_nint3_c H5_FC_FUNC_(h5ltmake_dataset_nint3_c, H5LTMAKE_DATASET_NINT3_C) +# define nh5ltmake_dataset_nint4_c H5_FC_FUNC_(h5ltmake_dataset_nint4_c, H5LTMAKE_DATASET_NINT4_C) +# define nh5ltmake_dataset_nint5_c H5_FC_FUNC_(h5ltmake_dataset_nint5_c, H5LTMAKE_DATASET_NINT5_C) +# define nh5ltmake_dataset_nint6_c H5_FC_FUNC_(h5ltmake_dataset_nint6_c, H5LTMAKE_DATASET_NINT6_C) +# define nh5ltmake_dataset_nint7_c H5_FC_FUNC_(h5ltmake_dataset_nint7_c, H5LTMAKE_DATASET_NINT7_C) # define nh5ltmake_dataset_nfl1_c H5_FC_FUNC_(h5ltmake_dataset_nfl1_c, H5LTMAKE_DATASET_NFL1_C) # define nh5ltmake_dataset_nfl2_c H5_FC_FUNC_(h5ltmake_dataset_nfl2_c, H5LTMAKE_DATASET_NFL2_C) # define nh5ltmake_dataset_nfl3_c H5_FC_FUNC_(h5ltmake_dataset_nfl3_c, H5LTMAKE_DATASET_NFL3_C) +# define nh5ltmake_dataset_nfl4_c H5_FC_FUNC_(h5ltmake_dataset_nfl4_c, H5LTMAKE_DATASET_NFL4_C) +# define nh5ltmake_dataset_nfl5_c H5_FC_FUNC_(h5ltmake_dataset_nfl5_c, H5LTMAKE_DATASET_NFL5_C) +# define nh5ltmake_dataset_nfl6_c H5_FC_FUNC_(h5ltmake_dataset_nfl6_c, H5LTMAKE_DATASET_NFL6_C) +# define nh5ltmake_dataset_nfl7_c H5_FC_FUNC_(h5ltmake_dataset_nfl7_c, H5LTMAKE_DATASET_NFL7_C) # define nh5ltmake_dataset_ndl1_c H5_FC_FUNC_(h5ltmake_dataset_ndl1_c, H5LTMAKE_DATASET_NDL1_C) # define nh5ltmake_dataset_ndl2_c H5_FC_FUNC_(h5ltmake_dataset_ndl2_c, H5LTMAKE_DATASET_NDL2_C) # define nh5ltmake_dataset_ndl3_c H5_FC_FUNC_(h5ltmake_dataset_ndl3_c, H5LTMAKE_DATASET_NDL3_C) +# define nh5ltmake_dataset_ndl4_c H5_FC_FUNC_(h5ltmake_dataset_ndl4_c, H5LTMAKE_DATASET_NDL4_C) +# define nh5ltmake_dataset_ndl5_c H5_FC_FUNC_(h5ltmake_dataset_ndl5_c, H5LTMAKE_DATASET_NDL5_C) +# define nh5ltmake_dataset_ndl6_c H5_FC_FUNC_(h5ltmake_dataset_ndl6_c, H5LTMAKE_DATASET_NDL6_C) +# define nh5ltmake_dataset_ndl7_c H5_FC_FUNC_(h5ltmake_dataset_ndl7_c, H5LTMAKE_DATASET_NDL7_C) # define nh5ltread_dataset_c H5_FC_FUNC_(h5ltread_dataset_c, H5LTREAD_DATASET_C) # define nh5ltread_dataset_int1_c H5_FC_FUNC_(h5ltread_dataset_int1_c, H5LTREAD_DATASET_INT1_C) # define nh5ltread_dataset_int2_c H5_FC_FUNC_(h5ltread_dataset_int2_c, H5LTREAD_DATASET_INT2_C) # define nh5ltread_dataset_int3_c H5_FC_FUNC_(h5ltread_dataset_int3_c, H5LTREAD_DATASET_INT3_C) +# define nh5ltread_dataset_int4_c H5_FC_FUNC_(h5ltread_dataset_int4_c, H5LTREAD_DATASET_INT4_C) +# define nh5ltread_dataset_int5_c H5_FC_FUNC_(h5ltread_dataset_int5_c, H5LTREAD_DATASET_INT5_C) +# define nh5ltread_dataset_int6_c H5_FC_FUNC_(h5ltread_dataset_int6_c, H5LTREAD_DATASET_INT6_C) +# define nh5ltread_dataset_int7_c H5_FC_FUNC_(h5ltread_dataset_int7_c, H5LTREAD_DATASET_INT7_C) # define nh5ltread_dataset_fl1_c H5_FC_FUNC_(h5ltread_dataset_fl1_c, H5LTREAD_DATASET_FL1_C) # define nh5ltread_dataset_fl2_c H5_FC_FUNC_(h5ltread_dataset_fl2_c, H5LTREAD_DATASET_FL2_C) # define nh5ltread_dataset_fl3_c H5_FC_FUNC_(h5ltread_dataset_fl3_c, H5LTREAD_DATASET_FL3_C) +# define nh5ltread_dataset_fl4_c H5_FC_FUNC_(h5ltread_dataset_fl4_c, H5LTREAD_DATASET_FL4_C) +# define nh5ltread_dataset_fl5_c H5_FC_FUNC_(h5ltread_dataset_fl5_c, H5LTREAD_DATASET_FL5_C) +# define nh5ltread_dataset_fl6_c H5_FC_FUNC_(h5ltread_dataset_fl6_c, H5LTREAD_DATASET_FL6_C) +# define nh5ltread_dataset_fl7_c H5_FC_FUNC_(h5ltread_dataset_fl7_c, H5LTREAD_DATASET_FL7_C) # define nh5ltread_dataset_dl1_c H5_FC_FUNC_(h5ltread_dataset_dl1_c, H5LTREAD_DATASET_DL1_C) # define nh5ltread_dataset_dl2_c H5_FC_FUNC_(h5ltread_dataset_dl2_c, H5LTREAD_DATASET_DL2_C) # define nh5ltread_dataset_dl3_c H5_FC_FUNC_(h5ltread_dataset_dl3_c, H5LTREAD_DATASET_DL3_C) +# define nh5ltread_dataset_dl4_c H5_FC_FUNC_(h5ltread_dataset_dl4_c, H5LTREAD_DATASET_DL4_C) +# define nh5ltread_dataset_dl5_c H5_FC_FUNC_(h5ltread_dataset_dl5_c, H5LTREAD_DATASET_DL5_C) +# define nh5ltread_dataset_dl6_c H5_FC_FUNC_(h5ltread_dataset_dl6_c, H5LTREAD_DATASET_DL6_C) +# define nh5ltread_dataset_dl7_c H5_FC_FUNC_(h5ltread_dataset_dl7_c, H5LTREAD_DATASET_DL7_C) # define nh5ltread_dataset_nint1_c H5_FC_FUNC_(h5ltread_dataset_nint1_c, H5LTREAD_DATASET_NINT1_C) # define nh5ltread_dataset_nint2_c H5_FC_FUNC_(h5ltread_dataset_nint2_c, H5LTREAD_DATASET_NINT2_C) # define nh5ltread_dataset_nint3_c H5_FC_FUNC_(h5ltread_dataset_nint3_c, H5LTREAD_DATASET_NINT3_C) +# define nh5ltread_dataset_nint4_c H5_FC_FUNC_(h5ltread_dataset_nint4_c, H5LTREAD_DATASET_NINT4_C) +# define nh5ltread_dataset_nint5_c H5_FC_FUNC_(h5ltread_dataset_nint5_c, H5LTREAD_DATASET_NINT5_C) +# define nh5ltread_dataset_nint6_c H5_FC_FUNC_(h5ltread_dataset_nint6_c, H5LTREAD_DATASET_NINT6_C) +# define nh5ltread_dataset_nint7_c H5_FC_FUNC_(h5ltread_dataset_nint7_c, H5LTREAD_DATASET_NINT7_C) # define nh5ltread_dataset_nfl1_c H5_FC_FUNC_(h5ltread_dataset_nfl1_c, H5LTREAD_DATASET_NFL1_C) # define nh5ltread_dataset_nfl2_c H5_FC_FUNC_(h5ltread_dataset_nfl2_c, H5LTREAD_DATASET_NFL2_C) # define nh5ltread_dataset_nfl3_c H5_FC_FUNC_(h5ltread_dataset_nfl3_c, H5LTREAD_DATASET_NFL3_C) +# define nh5ltread_dataset_nfl4_c H5_FC_FUNC_(h5ltread_dataset_nfl4_c, H5LTREAD_DATASET_NFL4_C) +# define nh5ltread_dataset_nfl5_c H5_FC_FUNC_(h5ltread_dataset_nfl5_c, H5LTREAD_DATASET_NFL5_C) +# define nh5ltread_dataset_nfl6_c H5_FC_FUNC_(h5ltread_dataset_nfl6_c, H5LTREAD_DATASET_NFL6_C) +# define nh5ltread_dataset_nfl7_c H5_FC_FUNC_(h5ltread_dataset_nfl7_c, H5LTREAD_DATASET_NFL7_C) # define nh5ltread_dataset_ndl1_c H5_FC_FUNC_(h5ltread_dataset_ndl1_c, H5LTREAD_DATASET_NDL1_C) # define nh5ltread_dataset_ndl2_c H5_FC_FUNC_(h5ltread_dataset_ndl2_c, H5LTREAD_DATASET_NDL2_C) # define nh5ltread_dataset_ndl3_c H5_FC_FUNC_(h5ltread_dataset_ndl3_c, H5LTREAD_DATASET_NDL3_C) +# define nh5ltread_dataset_ndl4_c H5_FC_FUNC_(h5ltread_dataset_ndl4_c, H5LTREAD_DATASET_NDL4_C) +# define nh5ltread_dataset_ndl5_c H5_FC_FUNC_(h5ltread_dataset_ndl5_c, H5LTREAD_DATASET_NDL5_C) +# define nh5ltread_dataset_ndl6_c H5_FC_FUNC_(h5ltread_dataset_ndl6_c, H5LTREAD_DATASET_NDL6_C) +# define nh5ltread_dataset_ndl7_c H5_FC_FUNC_(h5ltread_dataset_ndl7_c, H5LTREAD_DATASET_NDL7_C) # define nh5ltmake_dataset_string_c H5_FC_FUNC_(h5ltmake_dataset_string_c, H5LTMAKE_DATASET_STRING_C) # define nh5ltread_dataset_string_c H5_FC_FUNC_(h5ltread_dataset_string_c, H5LTREAD_DATASET_STRING_C) @@ -181,6 +229,47 @@ nh5ltmake_dataset_int3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltmake_dataset_int4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_int5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_int6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_int7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + + +HDF5_HL_F90CSTUBDLL +int_f nh5ltmake_dataset_fl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -211,6 +300,47 @@ nh5ltmake_dataset_fl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltmake_dataset_fl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_fl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_fl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_fl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + + +HDF5_HL_F90CSTUBDLL +int_f nh5ltmake_dataset_dl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -241,6 +371,76 @@ nh5ltmake_dataset_dl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltmake_dataset_dl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_dl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_dl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_dl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_nint1_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_nint2_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_nint3_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltmake_dataset_nint1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -271,7 +471,17 @@ nh5ltmake_dataset_nint3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f -nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id, +nh5ltmake_dataset_nint4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_nfl5_c (hid_t_f *loc_id, int_f *namelen, _fcd name, int_f *rank, @@ -281,7 +491,7 @@ nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f -nh5ltmake_dataset_nfl2_c (hid_t_f *loc_id, +nh5ltmake_dataset_nfl6_c (hid_t_f *loc_id, int_f *namelen, _fcd name, int_f *rank, @@ -291,7 +501,7 @@ nh5ltmake_dataset_nfl2_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f -nh5ltmake_dataset_nfl3_c (hid_t_f *loc_id, +nh5ltmake_dataset_nfl7_c (hid_t_f *loc_id, int_f *namelen, _fcd name, int_f *rank, @@ -331,6 +541,36 @@ nh5ltmake_dataset_ndl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltmake_dataset_ndl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_ndl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltmake_dataset_ndl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -368,6 +608,42 @@ nh5ltread_dataset_int3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_int4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_int5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_int6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_int7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_fl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -395,6 +671,43 @@ nh5ltread_dataset_fl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_fl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_fl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_fl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_fl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_dl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -422,6 +735,42 @@ nh5ltread_dataset_dl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_dl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_dl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_dl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_dl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_nint1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -449,6 +798,42 @@ nh5ltread_dataset_nint3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_nint4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nint5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nint6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nint7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_nfl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -476,6 +861,42 @@ nh5ltread_dataset_nfl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_nfl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nfl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nfl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_nfl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltread_dataset_ndl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -503,6 +924,42 @@ nh5ltread_dataset_ndl3_c (hid_t_f *loc_id, HDF5_HL_F90CSTUBDLL int_f +nh5ltread_dataset_ndl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_ndl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_ndl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f +nh5ltread_dataset_ndl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims); + +HDF5_HL_F90CSTUBDLL +int_f nh5ltset_attribute_int_c(hid_t_f *loc_id, int_f *namelen, _fcd dsetname, @@ -759,7 +1216,8 @@ nh5tbmake_table_c(int_f *namelen1, hid_t_f *field_types, hsize_t_f *chunk_size, int_f *compress, - int_f *len, /* field_names lenghts */ + int_f *char_len_field_names, /* field_names lenghts */ + int_f *max_char_size_field_names, /* char len of fields */ _fcd buf); /* field_names */ HDF5_HL_F90CSTUBDLL @@ -1069,10 +1527,10 @@ nh5tbget_field_info_c(hid_t_f *loc_id, size_t_f *field_sizes, size_t_f *field_offsets, size_t_f *type_size, - int_f *namelen2, /* field_names lenghts */ - _fcd field_names) ; /* field_names */ - - + int_f *namelen2, + int_f *lenmax, + _fcd field_names, + int_f *maxlen_out); #endif /* _H5LTf90proto_H */ diff --git a/hl/fortran/src/H5LTfc.c b/hl/fortran/src/H5LTfc.c index 0985aac..484acf1 100755 --- a/hl/fortran/src/H5LTfc.c +++ b/hl/fortran/src/H5LTfc.c @@ -132,6 +132,50 @@ nh5ltmake_dataset_int3_c (hid_t_f *loc_id, return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } int_f +nh5ltmake_dataset_int4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_int5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_int6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_int7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f nh5ltmake_dataset_fl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -165,6 +209,50 @@ nh5ltmake_dataset_fl3_c (hid_t_f *loc_id, return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } int_f +nh5ltmake_dataset_fl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_fl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_fl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_fl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f nh5ltmake_dataset_dl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -198,6 +286,50 @@ nh5ltmake_dataset_dl3_c (hid_t_f *loc_id, return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } int_f +nh5ltmake_dataset_dl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_dl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_dl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_dl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f nh5ltmake_dataset_nint1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -231,6 +363,50 @@ nh5ltmake_dataset_nint3_c (hid_t_f *loc_id, return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } int_f +nh5ltmake_dataset_nint4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nint5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nint6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nint7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f nh5ltmake_dataset_nfl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -264,6 +440,50 @@ nh5ltmake_dataset_nfl3_c (hid_t_f *loc_id, return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } int_f +nh5ltmake_dataset_nfl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nfl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nfl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_nfl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f nh5ltmake_dataset_ndl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -296,6 +516,50 @@ nh5ltmake_dataset_ndl3_c (hid_t_f *loc_id, { return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); } +int_f +nh5ltmake_dataset_ndl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_ndl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_ndl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} +int_f +nh5ltmake_dataset_ndl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + int_f *rank, + hsize_t_f *dims, + hid_t_f *type_id, + void *buf) +{ + return nh5ltmake_dataset_c (loc_id, namelen, name, rank, dims, type_id, buf); +} /*------------------------------------------------------------------------- * Function: H5LTread_dataset_c * @@ -389,6 +653,46 @@ nh5ltread_dataset_int3_c (hid_t_f *loc_id, return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } int_f +nh5ltread_dataset_int4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_int5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_int6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_int7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f nh5ltread_dataset_fl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -419,6 +723,46 @@ nh5ltread_dataset_fl3_c (hid_t_f *loc_id, return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } int_f +nh5ltread_dataset_fl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_fl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_fl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_fl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f nh5ltread_dataset_dl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -449,6 +793,46 @@ nh5ltread_dataset_dl3_c (hid_t_f *loc_id, return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } int_f +nh5ltread_dataset_dl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_dl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_dl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_dl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f nh5ltread_dataset_nint1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -479,6 +863,46 @@ nh5ltread_dataset_nint3_c (hid_t_f *loc_id, return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } int_f +nh5ltread_dataset_nint4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nint5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nint6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nint7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f nh5ltread_dataset_nfl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -509,6 +933,46 @@ nh5ltread_dataset_nfl3_c (hid_t_f *loc_id, return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } int_f +nh5ltread_dataset_nfl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nfl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nfl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_nfl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f nh5ltread_dataset_ndl1_c (hid_t_f *loc_id, int_f *namelen, _fcd name, @@ -538,6 +1002,46 @@ nh5ltread_dataset_ndl3_c (hid_t_f *loc_id, { return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); } +int_f +nh5ltread_dataset_ndl4_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_ndl5_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_ndl6_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} +int_f +nh5ltread_dataset_ndl7_c (hid_t_f *loc_id, + int_f *namelen, + _fcd name, + hid_t_f *type_id, + void *buf, + hsize_t_f *dims) +{ + return nh5ltread_dataset_c(loc_id, namelen, name, type_id, buf, dims); +} /*------------------------------------------------------------------------- * Function: H5LTmake_dataset_string_c * diff --git a/hl/fortran/src/H5LTff.f90 b/hl/fortran/src/H5LTff.f90 index 0c07449..cbc9b96 100755 --- a/hl/fortran/src/H5LTff.f90 +++ b/hl/fortran/src/H5LTff.f90 @@ -17,3370 +17,6300 @@ ! This file contains FORTRAN90 interfaces for H5LT functions ! -module h5lt -use h5fortran_types -use hdf5 - -interface h5ltmake_dataset_f - module procedure h5ltmake_dataset_f_int1 - module procedure h5ltmake_dataset_f_int2 - module procedure h5ltmake_dataset_f_int3 - module procedure h5ltmake_dataset_f_float1 - module procedure h5ltmake_dataset_f_float2 - module procedure h5ltmake_dataset_f_float3 - module procedure h5ltmake_dataset_f_double1 - module procedure h5ltmake_dataset_f_double2 - module procedure h5ltmake_dataset_f_double3 -end interface - -interface h5ltread_dataset_f - module procedure h5ltread_dataset_f_int1 - module procedure h5ltread_dataset_f_int2 - module procedure h5ltread_dataset_f_int3 - module procedure h5ltread_dataset_f_float1 - module procedure h5ltread_dataset_f_float2 - module procedure h5ltread_dataset_f_float3 - module procedure h5ltread_dataset_f_double1 - module procedure h5ltread_dataset_f_double2 - module procedure h5ltread_dataset_f_double3 -end interface - -interface h5ltmake_dataset_int_f - module procedure h5ltmake_dataset_int_f_1 - module procedure h5ltmake_dataset_int_f_2 - module procedure h5ltmake_dataset_int_f_3 -end interface - -interface h5ltmake_dataset_float_f - module procedure h5ltmake_dataset_float_f_1 - module procedure h5ltmake_dataset_float_f_2 - module procedure h5ltmake_dataset_float_f_3 -end interface - -interface h5ltmake_dataset_double_f - module procedure h5ltmake_dataset_double_f_1 - module procedure h5ltmake_dataset_double_f_2 - module procedure h5ltmake_dataset_double_f_3 -end interface - -interface h5ltread_dataset_int_f - module procedure h5ltread_dataset_int_f_1 - module procedure h5ltread_dataset_int_f_2 - module procedure h5ltread_dataset_int_f_3 -end interface - -interface h5ltread_dataset_float_f - module procedure h5ltread_dataset_float_f_1 - module procedure h5ltread_dataset_float_f_2 - module procedure h5ltread_dataset_float_f_3 -end interface - -interface h5ltread_dataset_double_f - module procedure h5ltread_dataset_double_f_1 - module procedure h5ltread_dataset_double_f_2 - module procedure h5ltread_dataset_double_f_3 -end interface - -contains -!------------------------------------------------------------------------- -! Make/Read dataset functions -!------------------------------------------------------------------------- - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_int1 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_int1(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_int1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT1_C'::h5ltmake_dataset_int1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), dimension(*) :: buf ! data buffer - end function h5ltmake_dataset_int1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_int1 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_int2 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_int2(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_int2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT2_C'::h5ltmake_dataset_int2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_int2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_int2 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_int3 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_int3(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_int3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT3_C'::h5ltmake_dataset_int3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_int3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_int3 - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_float1 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_float1(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_float1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL1_C'::h5ltmake_dataset_fl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), dimension(*) :: buf ! data buffer - end function h5ltmake_dataset_fl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_float1 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_float2 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_float2(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_float2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL2_C'::h5ltmake_dataset_fl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_fl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_float2 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_float3 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_float3(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_float3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL3_C'::h5ltmake_dataset_fl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_fl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_float3 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_double1 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_double1(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_double1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL1_C'::h5ltmake_dataset_dl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), dimension(*) :: buf ! data buffer - end function h5ltmake_dataset_dl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_double1 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_double2 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_double2(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_double2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL2_C'::h5ltmake_dataset_dl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_dl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_double2 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_f_double3 -! -! Purpose: Creates and writes a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 1, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_f_double3(loc_id,& - dset_name,& - rank,& - dims,& - type_id,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_f_double3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL3_C'::h5ltmake_dataset_dl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_dl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - -end subroutine h5ltmake_dataset_f_double3 - - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_int1 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_int1(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_int1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(inout), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT1_C'::h5ltread_dataset_int1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(HID_T), intent(IN) :: loc_id ! file or group identifier - integer(HID_T), intent(IN) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(LEN=*), intent(IN) :: dset_name ! name of the dataset - integer(HSIZE_T), dimension(*), intent(IN) :: dims ! size of the bufffer buf - integer, intent(IN), dimension(*) :: buf ! data buffer - end function h5ltread_dataset_int1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_int1 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_int2 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_int2(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_int2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT2_C'::h5ltread_dataset_int2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_int2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_int2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_int3 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_int3(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_int3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT3_C'::h5ltread_dataset_int3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_int3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_int3 - - - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_float1 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_float1(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_float1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(inout), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL1_C'::h5ltread_dataset_fl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), dimension(*) :: buf ! data buffer - end function h5ltread_dataset_fl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_float1 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_float2 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_float2(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_float2 -!DEC$endif -! - - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL2_C'::h5ltread_dataset_fl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_fl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_float2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_float3 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_float3(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_float3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL3_C'::h5ltread_dataset_fl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_fl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_float3 - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_double1 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_double1(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport ::h5ltread_dataset_f_double1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(inout), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL1_C'::h5ltread_dataset_dl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), dimension(*) :: buf ! data buffer - end function h5ltread_dataset_dl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_double1 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_double2 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_double2(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_double2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL2_C'::h5ltread_dataset_dl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_dl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_double2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_f_double3 -! -! Purpose: Read a dataset of a type TYPE_ID -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_f_double3(loc_id,& - dset_name,& - type_id,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_f_double3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL3_C'::h5ltread_dataset_dl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_dl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - -end subroutine h5ltread_dataset_f_double3 - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_int_f_1 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_int_f_1 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_int_f_1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT1_C'::h5ltmake_dataset_nint1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), dimension(*) :: buf ! data buffer - end function h5ltmake_dataset_nint1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,h5t_native_integer,buf) - -end subroutine h5ltmake_dataset_int_f_1 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_int_f_2 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_int_f_2 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_int_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - - interface - integer function h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT2_C'::h5ltmake_dataset_nint2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_nint2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) - -end subroutine h5ltmake_dataset_int_f_2 - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_int_f_3 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_int_f_3 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_int_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - - interface - integer function h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT3_C'::h5ltmake_dataset_nint3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_nint3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) - -end subroutine h5ltmake_dataset_int_f_3 - - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_float_f_1 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_float_f_1 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_float_f_1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL1_C'::h5ltmake_dataset_nfl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), dimension(*) :: buf ! data buffer - end function h5ltmake_dataset_nfl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) - -end subroutine h5ltmake_dataset_float_f_1 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_float_f_2 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_float_f_2 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_float_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL2_C'::h5ltmake_dataset_nfl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_nfl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) - -end subroutine h5ltmake_dataset_float_f_2 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_float_f_3 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_float_f_3 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_float_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL3_C'::h5ltmake_dataset_nfl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_nfl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) - -end subroutine h5ltmake_dataset_float_f_3 - - - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_double_f_1 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_double_f_1 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_double_f_1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(in), & - dimension(dims(1)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL1_C'::h5ltmake_dataset_ndl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1)) :: buf ! data buffer - end function h5ltmake_dataset_ndl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) - -end subroutine h5ltmake_dataset_double_f_1 - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_double_f_2 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_double_f_2 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_double_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL2_C'::h5ltmake_dataset_ndl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltmake_dataset_ndl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) - -end subroutine h5ltmake_dataset_double_f_2 - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_double_f_3 -! -! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_double_f_3 (loc_id,& - dset_name,& - rank,& - dims,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_double_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL3_C'::h5ltmake_dataset_ndl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: rank ! rank - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(in), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltmake_dataset_ndl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) - -end subroutine h5ltmake_dataset_double_f_3 - - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_int_f_1 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_int_f_1(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_int_f_1 -!DEC$endif -! - - integer(HID_T), intent(IN) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT1_C'::h5ltread_dataset_nint1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - end function h5ltread_dataset_nint1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) - -end subroutine h5ltread_dataset_int_f_1 - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_int_f_2 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_int_f_2(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_int_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT2_C'::h5ltread_dataset_nint2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_nint2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) - -end subroutine h5ltread_dataset_int_f_2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_int_f_3 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_int_f_3(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_int_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - integer, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT3_C'::h5ltread_dataset_nint3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_nint3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) - -end subroutine h5ltread_dataset_int_f_3 - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_float_f_1 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_float_f_1(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_float_f_1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL1_C'::h5ltread_dataset_nfl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - end function h5ltread_dataset_nfl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) - -end subroutine h5ltread_dataset_float_f_1 - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_float_f_2 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_float_f_2(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_float_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL2_C'::h5ltread_dataset_nfl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_nfl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) - -end subroutine h5ltread_dataset_float_f_2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_float_f_3 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_float_f_3(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_float_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - real, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL3_C'::h5ltread_dataset_nfl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - real, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_nfl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) - -end subroutine h5ltread_dataset_float_f_3 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_double_f_1 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_double_f_1(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_double_f_1 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL1_C'::h5ltread_dataset_ndl1_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(inout), & - dimension(dims(1)) :: buf ! data buffer - end function h5ltread_dataset_ndl1_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) - -end subroutine h5ltread_dataset_double_f_1 - - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_double_f_2 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_double_f_2(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_double_f_2 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL2_C'::h5ltread_dataset_ndl2_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(inout), & - dimension(dims(1),dims(2)) :: buf ! data buffer - end function h5ltread_dataset_ndl2_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) - -end subroutine h5ltread_dataset_double_f_2 - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_double_f_3 -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_double_f_3(loc_id,& - dset_name,& - buf,& - dims,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_double_f_3 -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - integer :: errcode ! error code - integer :: namelen ! name length - double precision, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - - interface - integer function h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,type_id,buf,dims) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL3_C'::h5ltread_dataset_ndl3_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer(hid_t), intent(in) :: type_id ! datatype identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), dimension(*), intent(in) :: dims ! size of the bufffer buf - double precision, intent(inout), & - dimension(dims(1),dims(2),dims(3)) :: buf ! data buffer - end function h5ltread_dataset_ndl3_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) - -end subroutine h5ltread_dataset_double_f_3 - - -!------------------------------------------------------------------------- -! Function: h5ltmake_dataset_string_f -! -! Purpose: Creates and writes a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltmake_dataset_string_f(loc_id,& - dset_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltmake_dataset_string_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: buflen ! buffer length - - interface - integer function h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_STRING_C'::h5ltmake_dataset_string_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: buflen ! lenght of data buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: buf ! data buffer - end function h5ltmake_dataset_string_c - end interface - - namelen = len(dset_name) - buflen = len(buf) - errcode = h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf) - -end subroutine h5ltmake_dataset_string_f - -!------------------------------------------------------------------------- -! Function: h5ltread_dataset_string_f -! -! Purpose: Read a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 22, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltread_dataset_string_f(loc_id,& - dset_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltread_dataset_string_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(inout) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_STRING_C'::h5ltread_dataset_string_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(inout) :: buf ! data buffer - end function h5ltread_dataset_string_c - end interface - - namelen = len(dset_name) - errcode = h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf) - -end subroutine h5ltread_dataset_string_f - - - - -!------------------------------------------------------------------------- -! Make/Read attribute functions -!------------------------------------------------------------------------- - - -!------------------------------------------------------------------------- -! Function: h5ltset_attribute_int_f -! -! Purpose: Create and write an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltset_attribute_int_f(loc_id,& - dset_name,& - attr_name,& - buf,& - size,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltset_attribute_int_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - integer :: errcode ! error code - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_INT_C'::h5ltset_attribute_int_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - integer, intent(in), dimension(*) :: buf ! data buffer - end function h5ltset_attribute_int_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - -end subroutine h5ltset_attribute_int_f - -!------------------------------------------------------------------------- -! Function: h5ltset_attribute_float_f -! -! Purpose: Create and write an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltset_attribute_float_f(loc_id,& - dset_name,& - attr_name,& - buf,& - size,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltset_attribute_float_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - integer :: errcode ! error code - real, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_FLOAT_C'::h5ltset_attribute_float_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - real, intent(in), dimension(*) :: buf ! data buffer - end function h5ltset_attribute_float_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - -end subroutine h5ltset_attribute_float_f - -!------------------------------------------------------------------------- -! Function: h5ltset_attribute_double_f -! -! Purpose: Create and write an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltset_attribute_double_f(loc_id,& - dset_name,& - attr_name,& - buf,& - size,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltset_attribute_double_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - integer :: errcode ! error code - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_DOUBLE_C'::h5ltset_attribute_double_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(size_t), intent(in) :: size ! size of attribute array - double precision, intent(in), dimension(*) :: buf ! data buffer - end function h5ltset_attribute_double_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) - -end subroutine h5ltset_attribute_double_f - - -!------------------------------------------------------------------------- -! Function: h5ltset_attribute_string_f -! -! Purpose: Create and write an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltset_attribute_string_f(loc_id,& - dset_name,& - attr_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltset_attribute_string_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer :: errcode ! error code - character(len=*), intent(in) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - integer :: buflen ! data buffer length - - interface - integer function h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_STRING_C'::h5ltset_attribute_string_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - integer :: buflen ! data buffer length - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - character(len=*), intent(in) :: buf ! data buffer - end function h5ltset_attribute_string_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - buflen = len(buf) - errcode = h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf) - -end subroutine h5ltset_attribute_string_f - - - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_int_f -! -! Purpose: Reads an attribute named ATTR_NAME -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_int_f(loc_id,& - dset_name,& - attr_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_int_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer :: errcode ! error code - integer, intent(inout), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INT_C'::h5ltget_attribute_int_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer, intent(inout), dimension(*) :: buf ! data buffer - end function h5ltget_attribute_int_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - -end subroutine h5ltget_attribute_int_f - - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_float_f -! -! Purpose: Reads an attribute named ATTR_NAME -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_float_f(loc_id,& - dset_name,& - attr_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_float_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer :: errcode ! error code - real, intent(inout), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_FLOAT_C'::h5ltget_attribute_float_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - real, intent(inout), dimension(*) :: buf ! data buffer - end function h5ltget_attribute_float_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - -end subroutine h5ltget_attribute_float_f - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_double_f -! -! Purpose: Reads an attribute named ATTR_NAME -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_double_f(loc_id,& - dset_name,& - attr_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_double_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer :: errcode ! error code - double precision,intent(inout),dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_DOUBLE_C'::h5ltget_attribute_double_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - double precision, intent(inout), dimension(*) :: buf ! data buffer - end function h5ltget_attribute_double_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - -end subroutine h5ltget_attribute_double_f - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_string_f -! -! Purpose: Reads an attribute named ATTR_NAME -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_string_f(loc_id,& - dset_name,& - attr_name,& - buf,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_string_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer :: errcode ! error code - character(len=*), intent(inout) :: buf ! data buffer - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_STRING_C'::h5ltget_attribute_string_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - character(len=*), intent(inout) :: buf ! data buffer - end function h5ltget_attribute_string_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) - -end subroutine h5ltget_attribute_string_f - -!------------------------------------------------------------------------- -! Query dataset functions -!------------------------------------------------------------------------- - -!------------------------------------------------------------------------- -! Function: h5ltget_dataset_ndims_f -! -! Purpose: Gets the dimensionality of a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 30, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_dataset_ndims_f(loc_id,& - dset_name,& - rank,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_dataset_ndims_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(inout) :: rank ! rank - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_NDIMS_C'::h5ltget_dataset_ndims_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(inout) :: rank ! rank - end function h5ltget_dataset_ndims_c - end interface - - namelen = len(dset_name) - errcode = h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank) - -end subroutine h5ltget_dataset_ndims_f - - -!------------------------------------------------------------------------- -! Function: h5ltfind_dataset_f -! -! Purpose: Inquires if a dataset named dset_name exists attached -! to the object loc_id. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -integer function h5ltfind_dataset_f(loc_id,& - dset_name) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltfind_dataset_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltfind_dataset_c(loc_id,namelen,dset_name) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTFIND_DATASET_C'::h5ltfind_dataset_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - end function h5ltfind_dataset_c - end interface - - namelen = len(dset_name) - errcode = h5ltfind_dataset_c(loc_id,namelen,dset_name) - h5ltfind_dataset_f = errcode - -end function h5ltfind_dataset_f - -!------------------------------------------------------------------------- -! Function: h5ltget_dataset_info_f -! -! Purpose: Gets information about a dataset -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 30, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_dataset_info_f(loc_id,& - dset_name,& - dims,& - type_class,& - type_size,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_dataset_info_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions - integer, intent(inout) :: type_class ! type class - integer(size_t), intent(inout) :: type_size ! type size - integer :: errcode ! error code - integer :: namelen ! name length - - interface - integer function h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_INFO_C'::h5ltget_dataset_info_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions - integer, intent(inout) :: type_class ! type class - integer(size_t), intent(inout) :: type_size ! type size - end function h5ltget_dataset_info_c - end interface - - namelen = len(dset_name) - errcode = h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size) - -end subroutine h5ltget_dataset_info_f - - -!------------------------------------------------------------------------- -! Query attribute functions -!------------------------------------------------------------------------- - - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_ndims_f -! -! Purpose: Create and write an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: October 05, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_ndims_f(loc_id,& - dset_name,& - attr_name,& - rank,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_ndims_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer, intent(inout) :: rank ! rank - integer :: errcode ! error code - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_NDIMS_C'::h5ltget_attribute_ndims_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer, intent(inout) :: rank ! rank - end function h5ltget_attribute_ndims_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank) - -end subroutine h5ltget_attribute_ndims_f - - -!------------------------------------------------------------------------- -! Function: h5ltget_attribute_info_f -! -! Purpose: Gets information about an attribute -! -! Return: Success: 0, Failure: -1 -! -! Programmer: pvn@ncsa.uiuc.edu -! -! Date: September 30, 2004 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - -subroutine h5ltget_attribute_info_f(loc_id,& - dset_name,& - attr_name,& - dims,& - type_class,& - type_size,& - errcode ) - - implicit none - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5ltget_attribute_info_f -!DEC$endif -! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions - integer, intent(inout) :: type_class ! type class - integer(size_t), intent(inout) :: type_size ! type size - integer :: errcode ! error code - integer :: namelen ! name length - integer :: attrlen ! name length - - interface - integer function h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size) - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INFO_C'::h5ltget_attribute_info_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: attr_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - integer :: namelen ! lenght of name buffer - integer :: attrlen ! lenght of attr name buffer - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: attr_name ! name of the attribute - integer(hsize_t),dimension(*),intent(inout):: dims ! dimensions - integer, intent(inout) :: type_class ! type class - integer(size_t), intent(inout) :: type_size ! type size - end function h5ltget_attribute_info_c - end interface - - namelen = len(dset_name) - attrlen = len(attr_name) - errcode = h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size) - -end subroutine h5ltget_attribute_info_f - - - -! end -! -end module H5LT +MODULE h5lt + USE h5fortran_types + USE hdf5 + + INTERFACE h5ltmake_dataset_f + MODULE PROCEDURE h5ltmake_dataset_f_int1 + MODULE PROCEDURE h5ltmake_dataset_f_int2 + MODULE PROCEDURE h5ltmake_dataset_f_int3 + MODULE PROCEDURE h5ltmake_dataset_f_int4 + MODULE PROCEDURE h5ltmake_dataset_f_int5 + MODULE PROCEDURE h5ltmake_dataset_f_int6 + MODULE PROCEDURE h5ltmake_dataset_f_int7 + MODULE PROCEDURE h5ltmake_dataset_f_float1 + MODULE PROCEDURE h5ltmake_dataset_f_float2 + MODULE PROCEDURE h5ltmake_dataset_f_float3 + MODULE PROCEDURE h5ltmake_dataset_f_float4 + MODULE PROCEDURE h5ltmake_dataset_f_float5 + MODULE PROCEDURE h5ltmake_dataset_f_float6 + MODULE PROCEDURE h5ltmake_dataset_f_float7 + MODULE PROCEDURE h5ltmake_dataset_f_double1 + MODULE PROCEDURE h5ltmake_dataset_f_double2 + MODULE PROCEDURE h5ltmake_dataset_f_double3 + MODULE PROCEDURE h5ltmake_dataset_f_double4 + MODULE PROCEDURE h5ltmake_dataset_f_double5 + MODULE PROCEDURE h5ltmake_dataset_f_double6 + MODULE PROCEDURE h5ltmake_dataset_f_double7 + END INTERFACE + + INTERFACE h5ltread_dataset_f + MODULE PROCEDURE h5ltread_dataset_f_int1 + MODULE PROCEDURE h5ltread_dataset_f_int2 + MODULE PROCEDURE h5ltread_dataset_f_int3 + MODULE PROCEDURE h5ltread_dataset_f_int4 + MODULE PROCEDURE h5ltread_dataset_f_int5 + MODULE PROCEDURE h5ltread_dataset_f_int6 + MODULE PROCEDURE h5ltread_dataset_f_int7 + MODULE PROCEDURE h5ltread_dataset_f_float1 + MODULE PROCEDURE h5ltread_dataset_f_float2 + MODULE PROCEDURE h5ltread_dataset_f_float3 + MODULE PROCEDURE h5ltread_dataset_f_float4 + MODULE PROCEDURE h5ltread_dataset_f_float5 + MODULE PROCEDURE h5ltread_dataset_f_float6 + MODULE PROCEDURE h5ltread_dataset_f_float7 + MODULE PROCEDURE h5ltread_dataset_f_double1 + MODULE PROCEDURE h5ltread_dataset_f_double2 + MODULE PROCEDURE h5ltread_dataset_f_double3 + MODULE PROCEDURE h5ltread_dataset_f_double4 + MODULE PROCEDURE h5ltread_dataset_f_double5 + MODULE PROCEDURE h5ltread_dataset_f_double6 + MODULE PROCEDURE h5ltread_dataset_f_double7 + END INTERFACE + + INTERFACE h5ltmake_dataset_int_f + MODULE PROCEDURE h5ltmake_dataset_int_f_1 + MODULE PROCEDURE h5ltmake_dataset_int_f_2 + MODULE PROCEDURE h5ltmake_dataset_int_f_3 + MODULE PROCEDURE h5ltmake_dataset_int_f_4 + MODULE PROCEDURE h5ltmake_dataset_int_f_5 + MODULE PROCEDURE h5ltmake_dataset_int_f_6 + MODULE PROCEDURE h5ltmake_dataset_int_f_7 + END INTERFACE + + INTERFACE h5ltmake_dataset_float_f + MODULE PROCEDURE h5ltmake_dataset_float_f_1 + MODULE PROCEDURE h5ltmake_dataset_float_f_2 + MODULE PROCEDURE h5ltmake_dataset_float_f_3 + MODULE PROCEDURE h5ltmake_dataset_float_f_4 + MODULE PROCEDURE h5ltmake_dataset_float_f_5 + MODULE PROCEDURE h5ltmake_dataset_float_f_6 + MODULE PROCEDURE h5ltmake_dataset_float_f_7 + END INTERFACE + + INTERFACE h5ltmake_dataset_double_f + MODULE PROCEDURE h5ltmake_dataset_double_f_1 + MODULE PROCEDURE h5ltmake_dataset_double_f_2 + MODULE PROCEDURE h5ltmake_dataset_double_f_3 + MODULE PROCEDURE h5ltmake_dataset_double_f_4 + MODULE PROCEDURE h5ltmake_dataset_double_f_5 + MODULE PROCEDURE h5ltmake_dataset_double_f_6 + MODULE PROCEDURE h5ltmake_dataset_double_f_7 + END INTERFACE + + INTERFACE h5ltread_dataset_int_f + MODULE PROCEDURE h5ltread_dataset_int_f_1 + MODULE PROCEDURE h5ltread_dataset_int_f_2 + MODULE PROCEDURE h5ltread_dataset_int_f_3 + MODULE PROCEDURE h5ltread_dataset_int_f_4 + MODULE PROCEDURE h5ltread_dataset_int_f_5 + MODULE PROCEDURE h5ltread_dataset_int_f_6 + MODULE PROCEDURE h5ltread_dataset_int_f_7 + END INTERFACE + + INTERFACE h5ltread_dataset_float_f + MODULE PROCEDURE h5ltread_dataset_float_f_1 + MODULE PROCEDURE h5ltread_dataset_float_f_2 + MODULE PROCEDURE h5ltread_dataset_float_f_3 + MODULE PROCEDURE h5ltread_dataset_float_f_4 + MODULE PROCEDURE h5ltread_dataset_float_f_5 + MODULE PROCEDURE h5ltread_dataset_float_f_6 + MODULE PROCEDURE h5ltread_dataset_float_f_7 + END INTERFACE + + INTERFACE h5ltread_dataset_double_f + MODULE PROCEDURE h5ltread_dataset_double_f_1 + MODULE PROCEDURE h5ltread_dataset_double_f_2 + MODULE PROCEDURE h5ltread_dataset_double_f_3 + MODULE PROCEDURE h5ltread_dataset_double_f_4 + MODULE PROCEDURE h5ltread_dataset_double_f_5 + MODULE PROCEDURE h5ltread_dataset_double_f_6 + MODULE PROCEDURE h5ltread_dataset_double_f_7 + END INTERFACE + +CONTAINS + !------------------------------------------------------------------------- + ! Make/Read dataset functions + !------------------------------------------------------------------------- + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int1 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int1(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT1_C'::h5ltmake_dataset_int1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int1 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int2 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int2(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT2_C'::h5ltmake_dataset_int2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int2 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int3 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int3(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT3_C'::h5ltmake_dataset_int3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int4 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int4(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT4_C'::h5ltmake_dataset_int4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int5 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int5(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT5_C'::h5ltmake_dataset_int5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int6 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int6(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT6_C'::h5ltmake_dataset_int6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_int7 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_int7(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_int7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_int7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_INT7_C'::h5ltmake_dataset_int7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_int7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_int7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_int7 + + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float1 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float1(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL1_C'::h5ltmake_dataset_fl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float1 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float2 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float2(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL2_C'::h5ltmake_dataset_fl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float2 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float3 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float3(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL3_C'::h5ltmake_dataset_fl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float4 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float4(loc_id, dset_name, rank, dims,& + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL4_C'::h5ltmake_dataset_fl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float5 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float5(loc_id, dset_name, rank, dims,& + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL5_C'::h5ltmake_dataset_fl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float6 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float6(loc_id, dset_name, rank, dims,& + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL6_C'::h5ltmake_dataset_fl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_float7 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_float7(loc_id, dset_name, rank, dims,& + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_float7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_fl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_FL7_C'::h5ltmake_dataset_fl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_fl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_fl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_float7 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double1 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double1(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL1_C'::h5ltmake_dataset_dl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double1 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double2 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double2(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL2_C'::h5ltmake_dataset_dl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double2 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double3 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 1, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double3(loc_id,& + dset_name,& + rank,& + dims,& + type_id,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL3_C'::h5ltmake_dataset_dl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double4 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double4(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3), dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL4_C'::h5ltmake_dataset_dl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double5 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double5(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL5_C'::h5ltmake_dataset_dl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double6 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double6(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL6_C'::h5ltmake_dataset_dl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_f_double7 + ! + ! Purpose: Creates and writes a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 7, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_f_double7(loc_id, dset_name, rank, dims, & + type_id, buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_f_double7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_dl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_DL7_C'::h5ltmake_dataset_dl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_dl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_dl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + + END SUBROUTINE h5ltmake_dataset_f_double7 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int1 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int1(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT1_C'::h5ltread_dataset_int1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier + INTEGER(HID_T), INTENT(IN) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(LEN=*), INTENT(IN) :: dset_name ! name of the dataset + INTEGER(HSIZE_T), DIMENSION(*), INTENT(IN) :: dims ! size of the bufffer buf + INTEGER, INTENT(IN), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int1_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int1 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int2 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int2(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT2_C'::h5ltread_dataset_int2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int2_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int3 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int3(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT3_C'::h5ltread_dataset_int3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int3_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int4 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 12, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int4(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT4_C'::h5ltread_dataset_int4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int4_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int5 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 12, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int5(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT5_C'::h5ltread_dataset_int5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int5_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int6 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 12, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int6(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT6_C'::h5ltread_dataset_int6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int6_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_int7 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 12, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_int7(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_int7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_int7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_INT7_C'::h5ltread_dataset_int7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_int7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_int7_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_int7 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float1 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float1(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL1_C'::h5ltread_dataset_fl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float1 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float2 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float2(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float2 + !DEC$endif + ! + + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL2_C'::h5ltread_dataset_fl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float3 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float3(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL3_C'::h5ltread_dataset_fl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float4 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float4(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL4_C'::h5ltread_dataset_fl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float5 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float5(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL5_C'::h5ltread_dataset_fl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float6 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float6(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL6_C'::h5ltread_dataset_fl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_float7 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_float7(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_float7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_fl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_FL7_C'::h5ltread_dataset_fl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_fl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_fl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_float7 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double1 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double1(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport ::h5ltread_dataset_f_double1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL1_C'::h5ltread_dataset_dl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double1 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double2 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double2(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL2_C'::h5ltread_dataset_dl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double3 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double3(loc_id,& + dset_name,& + type_id,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL3_C'::h5ltread_dataset_dl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double4 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double4(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL4_C'::h5ltread_dataset_dl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double5 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double5(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL5_C'::h5ltread_dataset_dl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double6 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double6(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL6_C'::h5ltread_dataset_dl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_f_double7 + ! + ! Purpose: Read a dataset of a type TYPE_ID + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_f_double7(loc_id, dset_name, type_id, buf, & + dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_f_double7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_dl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_DL7_C'::h5ltread_dataset_dl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_dl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_dl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + + END SUBROUTINE h5ltread_dataset_f_double7 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_1 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_1 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT1_C'::h5ltmake_dataset_nint1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint1_c(loc_id,namelen,dset_name,rank,dims,h5t_native_integer,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_1 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_2 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_2 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT2_C'::h5ltmake_dataset_nint2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_2 + + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_3 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_3 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT3_C'::h5ltmake_dataset_nint3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_4 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_4(loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT4_C'::h5ltmake_dataset_nint4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_5 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_5(loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT5_C'::h5ltmake_dataset_nint5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_6 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_6(loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT6_C'::h5ltmake_dataset_nint6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_int_f_7 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_INT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_int_f_7(loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_int_f_7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nint7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NINT7_C'::h5ltmake_dataset_nint7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nint7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nint7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_INTEGER,buf) + + END SUBROUTINE h5ltmake_dataset_int_f_7 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_1 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_1 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL1_C'::h5ltmake_dataset_nfl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_1 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_2 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_2 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL2_C'::h5ltmake_dataset_nfl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_2 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_3 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_3 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL3_C'::h5ltmake_dataset_nfl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_4 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_4 (loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL4_C'::h5ltmake_dataset_nfl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_5 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_5 (loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL5_C'::h5ltmake_dataset_nfl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_6 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_6 (loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL6_C'::h5ltmake_dataset_nfl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_float_f_7 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_FLOAT type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_float_f_7 (loc_id, dset_name, rank, dims, & + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_float_f_7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_nfl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NFL7_C'::h5ltmake_dataset_nfl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_nfl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_nfl7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,buf) + + END SUBROUTINE h5ltmake_dataset_float_f_7 + + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_1 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_1 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL1_C'::h5ltmake_dataset_ndl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl1_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_1 + + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_2 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_2 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL2_C'::h5ltmake_dataset_ndl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl2_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_2 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_3 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_3 (loc_id,& + dset_name,& + rank,& + dims,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL3_C'::h5ltmake_dataset_ndl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl3_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_4 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_4 (loc_id, dset_name, rank, dims,& + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl4_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL4_C'::h5ltmake_dataset_ndl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl4_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_5 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_5 (loc_id, dset_name, rank, dims,& + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl5_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL5_C'::h5ltmake_dataset_ndl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl5_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_6 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_6 (loc_id, dset_name, rank, dims,& + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl6_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL6_C'::h5ltmake_dataset_ndl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl6_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_double_f_7 + ! + ! Purpose: Creates and writes a dataset of H5T_NATIVE_DOUBLE type + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_double_f_7 (loc_id, dset_name, rank, dims,& + buf, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_double_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_ndl7_c(loc_id,namelen,dset_name,rank,dims,type_id,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_NDL7_C'::h5ltmake_dataset_ndl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: rank ! rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(in), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_ndl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_ndl7_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,buf) + + END SUBROUTINE h5ltmake_dataset_double_f_7 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_1 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_1(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_1 + !DEC$endif + ! + + INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT1_C'::h5ltread_dataset_nint1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint1_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_1 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_2 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_2(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT2_C'::h5ltread_dataset_nint2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint2_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_3 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_3(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT3_C'::h5ltread_dataset_nint3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint3_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_4 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_4(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT4_C'::h5ltread_dataset_nint4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint4_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_5 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_5(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT5_C'::h5ltread_dataset_nint5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint5_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_6 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_6(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT6_C'::h5ltread_dataset_nint6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint6_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_int_f_7 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_int_f_7(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_int_f_7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nint7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NINT7_C'::h5ltread_dataset_nint7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nint7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nint7_c(loc_id,namelen,dset_name,H5T_NATIVE_INTEGER,buf,dims) + + END SUBROUTINE h5ltread_dataset_int_f_7 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_1 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_1(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL1_C'::h5ltread_dataset_nfl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl1_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_1 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_2 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_2(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL2_C'::h5ltread_dataset_nfl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl2_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_3 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_3(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL3_C'::h5ltread_dataset_nfl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl3_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_4 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_4(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL4_C'::h5ltread_dataset_nfl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl4_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_5 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_5(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL5_C'::h5ltread_dataset_nfl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl5_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_6 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_6(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL6_C'::h5ltread_dataset_nfl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl6_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_float_f_7 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_float_f_7(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_float_f_7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_nfl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NFL7_C'::h5ltread_dataset_nfl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + REAL, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_nfl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_nfl7_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,buf,dims) + + END SUBROUTINE h5ltread_dataset_float_f_7 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_1 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_1(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_1 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL1_C'::h5ltread_dataset_ndl1_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl1_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl1_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_1 + + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_2 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_2(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_2 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL2_C'::h5ltread_dataset_ndl2_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl2_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl2_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_2 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_3 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_3(loc_id,& + dset_name,& + buf,& + dims,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_3 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL3_C'::h5ltread_dataset_ndl3_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl3_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl3_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_3 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_4 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_4(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_4 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl4_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL4_C'::h5ltread_dataset_ndl4_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl4_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl4_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_4 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_5 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_5(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_5 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl5_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL5_C'::h5ltread_dataset_ndl5_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl5_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl5_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_5 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_6 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_6(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_6 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl6_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL6_C'::h5ltread_dataset_ndl6_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl6_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl6_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_6 + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_double_f_7 + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: M. Scot Breitenfeld + ! + ! Date: March 8, 2011 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_double_f_7(loc_id, dset_name, buf, dims, errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_double_f_7 + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_ndl7_c(loc_id,namelen,dset_name,type_id,buf,dims) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_NDL7_C'::h5ltread_dataset_ndl7_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER(hid_t), INTENT(in) :: type_id ! datatype identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims ! size of the bufffer buf + DOUBLE PRECISION, INTENT(inout), & + DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)) :: buf ! data buffer + END FUNCTION h5ltread_dataset_ndl7_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_ndl7_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,buf,dims) + + END SUBROUTINE h5ltread_dataset_double_f_7 + + + !------------------------------------------------------------------------- + ! Function: h5ltmake_dataset_string_f + ! + ! Purpose: Creates and writes a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltmake_dataset_string_f(loc_id,& + dset_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltmake_dataset_string_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: buflen ! buffer length + + INTERFACE + INTEGER FUNCTION h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTMAKE_DATASET_STRING_C'::h5ltmake_dataset_string_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: buflen ! lenght of data buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: buf ! data buffer + END FUNCTION h5ltmake_dataset_string_c + END INTERFACE + + namelen = LEN(dset_name) + buflen = LEN(buf) + errcode = h5ltmake_dataset_string_c(loc_id,namelen,dset_name,buflen,buf) + + END SUBROUTINE h5ltmake_dataset_string_f + + !------------------------------------------------------------------------- + ! Function: h5ltread_dataset_string_f + ! + ! Purpose: Read a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 22, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltread_dataset_string_f(loc_id,& + dset_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltread_dataset_string_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(inout) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTREAD_DATASET_STRING_C'::h5ltread_dataset_string_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(inout) :: buf ! data buffer + END FUNCTION h5ltread_dataset_string_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltread_dataset_string_c(loc_id,namelen,dset_name,buf) + + END SUBROUTINE h5ltread_dataset_string_f + + + + + !------------------------------------------------------------------------- + ! Make/Read attribute functions + !------------------------------------------------------------------------- + + + !------------------------------------------------------------------------- + ! Function: h5ltset_attribute_int_f + ! + ! Purpose: Create and write an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltset_attribute_int_f(loc_id,& + dset_name,& + attr_name,& + buf,& + size,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltset_attribute_int_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + INTEGER :: errcode ! error code + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_INT_C'::h5ltset_attribute_int_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltset_attribute_int_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltset_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + + END SUBROUTINE h5ltset_attribute_int_f + + !------------------------------------------------------------------------- + ! Function: h5ltset_attribute_float_f + ! + ! Purpose: Create and write an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltset_attribute_float_f(loc_id,& + dset_name,& + attr_name,& + buf,& + size,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltset_attribute_float_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + INTEGER :: errcode ! error code + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_FLOAT_C'::h5ltset_attribute_float_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltset_attribute_float_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltset_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + + END SUBROUTINE h5ltset_attribute_float_f + + !------------------------------------------------------------------------- + ! Function: h5ltset_attribute_double_f + ! + ! Purpose: Create and write an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltset_attribute_double_f(loc_id,& + dset_name,& + attr_name,& + buf,& + size,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltset_attribute_double_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + INTEGER :: errcode ! error code + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_DOUBLE_C'::h5ltset_attribute_double_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(size_t), INTENT(in) :: size ! size of attribute array + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltset_attribute_double_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltset_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,size,buf) + + END SUBROUTINE h5ltset_attribute_double_f + + + !------------------------------------------------------------------------- + ! Function: h5ltset_attribute_string_f + ! + ! Purpose: Create and write an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltset_attribute_string_f(loc_id,& + dset_name,& + attr_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltset_attribute_string_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER :: errcode ! error code + CHARACTER(len=*), INTENT(in) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + INTEGER :: buflen ! data buffer length + + INTERFACE + INTEGER FUNCTION h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTSET_ATTRIBUTE_STRING_C'::h5ltset_attribute_string_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + INTEGER :: buflen ! data buffer length + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + CHARACTER(len=*), INTENT(in) :: buf ! data buffer + END FUNCTION h5ltset_attribute_string_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + buflen = LEN(buf) + errcode = h5ltset_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buflen,buf) + + END SUBROUTINE h5ltset_attribute_string_f + + + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_int_f + ! + ! Purpose: Reads an attribute named ATTR_NAME + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_int_f(loc_id,& + dset_name,& + attr_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_int_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER :: errcode ! error code + INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INT_C'::h5ltget_attribute_int_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER, INTENT(inout), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltget_attribute_int_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_int_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + + END SUBROUTINE h5ltget_attribute_int_f + + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_float_f + ! + ! Purpose: Reads an attribute named ATTR_NAME + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_float_f(loc_id,& + dset_name,& + attr_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_float_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER :: errcode ! error code + REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_FLOAT_C'::h5ltget_attribute_float_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + REAL, INTENT(inout), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltget_attribute_float_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_float_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + + END SUBROUTINE h5ltget_attribute_float_f + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_double_f + ! + ! Purpose: Reads an attribute named ATTR_NAME + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_double_f(loc_id,& + dset_name,& + attr_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_double_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER :: errcode ! error code + DOUBLE PRECISION,INTENT(inout),DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_DOUBLE_C'::h5ltget_attribute_double_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + DOUBLE PRECISION, INTENT(inout), DIMENSION(*) :: buf ! data buffer + END FUNCTION h5ltget_attribute_double_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_double_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + + END SUBROUTINE h5ltget_attribute_double_f + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_string_f + ! + ! Purpose: Reads an attribute named ATTR_NAME + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_string_f(loc_id,& + dset_name,& + attr_name,& + buf,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_string_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER :: errcode ! error code + CHARACTER(len=*), INTENT(inout) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_STRING_C'::h5ltget_attribute_string_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + CHARACTER(len=*), INTENT(inout) :: buf ! data buffer + END FUNCTION h5ltget_attribute_string_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_string_c(loc_id,namelen,dset_name,attrlen,attr_name,buf) + + END SUBROUTINE h5ltget_attribute_string_f + + !------------------------------------------------------------------------- + ! Query dataset functions + !------------------------------------------------------------------------- + + !------------------------------------------------------------------------- + ! Function: h5ltget_dataset_ndims_f + ! + ! Purpose: Gets the dimensionality of a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 30, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_dataset_ndims_f(loc_id,& + dset_name,& + rank,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_dataset_ndims_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(inout) :: rank ! rank + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_NDIMS_C'::h5ltget_dataset_ndims_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(inout) :: rank ! rank + END FUNCTION h5ltget_dataset_ndims_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltget_dataset_ndims_c(loc_id,namelen,dset_name,rank) + + END SUBROUTINE h5ltget_dataset_ndims_f + + + !------------------------------------------------------------------------- + ! Function: h5ltfind_dataset_f + ! + ! Purpose: Inquires if a dataset named dset_name exists attached + ! to the object loc_id. + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + INTEGER FUNCTION h5ltfind_dataset_f(loc_id,& + dset_name) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltfind_dataset_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltfind_dataset_c(loc_id,namelen,dset_name) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTFIND_DATASET_C'::h5ltfind_dataset_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + END FUNCTION h5ltfind_dataset_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltfind_dataset_c(loc_id,namelen,dset_name) + h5ltfind_dataset_f = errcode + + END FUNCTION h5ltfind_dataset_f + + !------------------------------------------------------------------------- + ! Function: h5ltget_dataset_info_f + ! + ! Purpose: Gets information about a dataset + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 30, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_dataset_info_f(loc_id,& + dset_name,& + dims,& + type_class,& + type_size,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_dataset_info_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions + INTEGER, INTENT(inout) :: type_class ! type class + INTEGER(size_t), INTENT(inout) :: type_size ! type size + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_DATASET_INFO_C'::h5ltget_dataset_info_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions + INTEGER, INTENT(inout) :: type_class ! type class + INTEGER(size_t), INTENT(inout) :: type_size ! type size + END FUNCTION h5ltget_dataset_info_c + END INTERFACE + + namelen = LEN(dset_name) + errcode = h5ltget_dataset_info_c(loc_id,namelen,dset_name,dims,type_class,type_size) + + END SUBROUTINE h5ltget_dataset_info_f + + + !------------------------------------------------------------------------- + ! Query attribute functions + !------------------------------------------------------------------------- + + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_ndims_f + ! + ! Purpose: Create and write an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: October 05, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_ndims_f(loc_id,& + dset_name,& + attr_name,& + rank,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_ndims_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER, INTENT(inout) :: rank ! rank + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_NDIMS_C'::h5ltget_attribute_ndims_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER, INTENT(inout) :: rank ! rank + END FUNCTION h5ltget_attribute_ndims_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_ndims_c(loc_id,namelen,dset_name,attrlen,attr_name,rank) + + END SUBROUTINE h5ltget_attribute_ndims_f + + + !------------------------------------------------------------------------- + ! Function: h5ltget_attribute_info_f + ! + ! Purpose: Gets information about an attribute + ! + ! Return: Success: 0, Failure: -1 + ! + ! Programmer: pvn@ncsa.uiuc.edu + ! + ! Date: September 30, 2004 + ! + ! Comments: + ! + ! Modifications: + ! + !------------------------------------------------------------------------- + + SUBROUTINE h5ltget_attribute_info_f(loc_id,& + dset_name,& + attr_name,& + dims,& + type_class,& + type_size,& + errcode ) + + IMPLICIT NONE + + ! + !This definition is needed for Windows DLLs + !DEC$if defined(BUILD_HDF5_DLL) + !DEC$attributes dllexport :: h5ltget_attribute_info_f + !DEC$endif + ! + + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions + INTEGER, INTENT(inout) :: type_class ! type class + INTEGER(size_t), INTENT(inout) :: type_size ! type size + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: attrlen ! name length + + INTERFACE + INTEGER FUNCTION h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size) + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5LTGET_ATTRIBUTE_INFO_C'::h5ltget_attribute_info_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: attr_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + INTEGER :: namelen ! lenght of name buffer + INTEGER :: attrlen ! lenght of attr name buffer + CHARACTER(len=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(len=*), INTENT(in) :: attr_name ! name of the attribute + INTEGER(hsize_t),DIMENSION(*),INTENT(inout):: dims ! dimensions + INTEGER, INTENT(inout) :: type_class ! type class + INTEGER(size_t), INTENT(inout) :: type_size ! type size + END FUNCTION h5ltget_attribute_info_c + END INTERFACE + + namelen = LEN(dset_name) + attrlen = LEN(attr_name) + errcode = h5ltget_attribute_info_c(loc_id,namelen,dset_name,attrlen,attr_name,dims,type_class,type_size) + + END SUBROUTINE h5ltget_attribute_info_f + ! end + ! +END MODULE H5LT diff --git a/hl/fortran/src/H5TBfc.c b/hl/fortran/src/H5TBfc.c index 76a3f1c..0efc9a8 100755 --- a/hl/fortran/src/H5TBfc.c +++ b/hl/fortran/src/H5TBfc.c @@ -13,6 +13,8 @@ * access to either file, you may request a copy from help@hdfgroup.org. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ +#include <math.h> + /* This files contains C stubs for H5D Fortran APIs */ #include "H5TBprivate.h" @@ -47,14 +49,14 @@ nh5tbmake_table_c(int_f *namelen1, hid_t_f *field_types, hsize_t_f *chunk_size, int_f *compress, - int_f *namelen2, /* field_names lenghts */ - _fcd field_names) /* field_names */ + int_f *char_len_field_names, /* field_names lenghts */ + int_f *max_char_size_field_names, /* char len of fields */ + char *field_names) /* field_names */ { char *c_name = NULL; char *c_name1 = NULL; hsize_t num_elem; hsize_t i; - int max_len = 1; hsize_t c_nfields = (hsize_t)*nfields; size_t *c_field_offset = NULL; hid_t *c_field_types = NULL; @@ -63,9 +65,6 @@ nh5tbmake_table_c(int_f *namelen1, int_f ret_value = 0; num_elem = *nfields; - for(i = 0; i < num_elem; i++) - if(namelen2[i] > max_len) - max_len = namelen2[i]; /* * convert FORTRAN name to C name @@ -91,20 +90,19 @@ nh5tbmake_table_c(int_f *namelen1, HGOTO_DONE(FAIL) /* copy data to long C string */ - if(NULL == (tmp = (char *)HD5f2cstring(field_names, (size_t)(max_len * num_elem)))) + if(NULL == (tmp = (char *)HD5f2cstring(field_names, (size_t)*(max_char_size_field_names)*(size_t)num_elem))) HGOTO_DONE(FAIL) - /* * move data from temorary buffer */ tmp_p = tmp; for(i = 0; i < num_elem; i++) { - if(NULL == (c_field_names[i] = (char *)HDmalloc((size_t)namelen2[i] + 1))) + if(NULL == (c_field_names[i] = (char *)HDmalloc((size_t)char_len_field_names[i] + 1))) HGOTO_DONE(FAIL) + HDmemcpy(c_field_names[i], tmp_p, (size_t)char_len_field_names[i]); + c_field_names[i][char_len_field_names[i]] = '\0'; - HDmemcpy(c_field_names[i], tmp_p, (size_t)namelen2[i]); - c_field_names[i][namelen2[i]] = '\0'; - tmp_p = tmp_p + max_len; + tmp_p = tmp_p + *max_char_size_field_names; } /* end for */ /* @@ -125,7 +123,7 @@ done: if(c_field_names[i]) HDfree(c_field_names[i]); } /* end for */ - HDfree(c_field_names); + HDfree(c_field_names); } /* end if */ if(tmp) HDfree(tmp); @@ -616,10 +614,10 @@ nh5tbinsert_field_c(hid_t_f *loc_id, HGOTO_DONE(FAIL) if(NULL == (c_name1 = (char *)HD5f2cstring(field_name, (size_t)*namelen1))) HGOTO_DONE(FAIL) - /* * call H5TBinsert_field function. */ + if(H5TBinsert_field((hid_t)*loc_id, c_name, c_name1, (hid_t)*field_type, (hsize_t)*position, NULL, buf) < 0) HGOTO_DONE(FAIL) @@ -771,13 +769,14 @@ nh5tbget_table_info_c(hid_t_f *loc_id, if(NULL == (c_name = (char *)HD5f2cstring(name, (size_t)*namelen))) HGOTO_DONE(FAIL) + /* * call H5TBread_fields_index function. */ + if(H5TBget_table_info((hid_t)*loc_id, c_name, &c_nfields, &c_nrecords) < 0) HGOTO_DONE(FAIL) - - *nfields = (hsize_t_f) c_nfields;; + *nfields = (hsize_t_f) c_nfields; *nrecords = (hsize_t_f) c_nrecords; done: @@ -811,26 +810,27 @@ nh5tbget_field_info_c(hid_t_f *loc_id, size_t_f *field_offsets, size_t_f *type_size, int_f *namelen2, /* field_names lenghts */ - _fcd field_names) /* field_names */ + int_f *lenmax, /* character len max */ + _fcd field_names, /* field_names */ + int_f *maxlen_out) { char *c_name = NULL; hsize_t num_elem; - int max_len = 1; hsize_t c_nfields = *nfields; size_t *c_field_sizes = NULL; size_t *c_field_offsets = NULL; size_t c_type_size; char **c_field_names = NULL; char *tmp = NULL, *tmp_p; - int c_lenmax = HLTB_MAX_FIELD_LEN; hsize_t i; int_f ret_value = 0; + size_t c_lenmax; + size_t length = 0; + + c_lenmax = (size_t)*lenmax; num_elem = c_nfields; - for(i = 0; i < num_elem; i++) - if(namelen2[i] > max_len) - max_len = namelen2[i]; /* * convert FORTRAN name to C name @@ -854,24 +854,25 @@ nh5tbget_field_info_c(hid_t_f *loc_id, if(H5TBget_field_info((hid_t)*loc_id, c_name, c_field_names, c_field_sizes, c_field_offsets, &c_type_size) < 0) HGOTO_DONE(FAIL) - + /* return values */ /* names array */ if(NULL == (tmp = (char *)HDmalloc((c_lenmax * (size_t)c_nfields) + 1))) HGOTO_DONE(FAIL) - tmp_p = tmp; HDmemset(tmp, ' ', c_lenmax * (size_t)c_nfields); tmp[c_lenmax * c_nfields] = '\0'; for(i = 0; i < c_nfields; i++) { - size_t field_name_len = HDstrlen(c_field_names[i]); + size_t field_name_len = HDstrlen(c_field_names[i]); - HDmemcpy(tmp_p, c_field_names[i], field_name_len); - namelen2[i] = (int_f)field_name_len; - tmp_p += c_lenmax; + HDmemcpy(tmp_p, c_field_names[i], field_name_len); + namelen2[i] = (int_f)field_name_len; + length = MAX(length, strlen((c_field_names[i]))); + tmp_p = tmp_p + c_lenmax; } /* end for */ - HD5packFstring(tmp, _fcdtocp(field_names), (int)(c_lenmax * c_nfields)); + + HD5packFstring(tmp, _fcdtocp(field_names), (size_t)( c_lenmax* c_nfields)); *type_size = (size_t_f)c_type_size; for(i = 0; i < num_elem; i++) { @@ -879,6 +880,8 @@ nh5tbget_field_info_c(hid_t_f *loc_id, field_offsets[i] = (size_t_f)c_field_offsets[i]; } /* end for */ + *maxlen_out = (int_f)length; + done: if(c_name) HDfree(c_name); diff --git a/hl/fortran/src/H5TBff.f90 b/hl/fortran/src/H5TBff.f90 index 9acdcee..36e13f9 100755 --- a/hl/fortran/src/H5TBff.f90 +++ b/hl/fortran/src/H5TBff.f90 @@ -17,49 +17,49 @@ ! This file contains FORTRAN90 interfaces for H5TB functions ! -module h5tb -use h5fortran_types -use hdf5 +MODULE h5tb +USE h5fortran_types +USE hdf5 -interface h5tbwrite_field_name_f - module procedure h5tbwrite_field_name_f_int - module procedure h5tbwrite_field_name_f_float - module procedure h5tbwrite_field_name_f_double - module procedure h5tbwrite_field_name_f_string -end interface +INTERFACE h5tbwrite_field_name_f + MODULE PROCEDURE h5tbwrite_field_name_f_int + MODULE PROCEDURE h5tbwrite_field_name_f_float + MODULE PROCEDURE h5tbwrite_field_name_f_double + MODULE PROCEDURE h5tbwrite_field_name_f_string +END INTERFACE -interface h5tbread_field_name_f - module procedure h5tbread_field_name_f_int - module procedure h5tbread_field_name_f_float - module procedure h5tbread_field_name_f_double - module procedure h5tbread_field_name_f_string -end interface +INTERFACE h5tbread_field_name_f + MODULE PROCEDURE h5tbread_field_name_f_int + MODULE PROCEDURE h5tbread_field_name_f_float + MODULE PROCEDURE h5tbread_field_name_f_double + MODULE PROCEDURE h5tbread_field_name_f_string +END INTERFACE -interface h5tbwrite_field_index_f - module procedure h5tbwrite_field_index_f_int - module procedure h5tbwrite_field_index_f_float - module procedure h5tbwrite_field_index_f_double - module procedure h5tbwrite_field_index_f_string -end interface +INTERFACE h5tbwrite_field_index_f + MODULE PROCEDURE h5tbwrite_field_index_f_int + MODULE PROCEDURE h5tbwrite_field_index_f_float + MODULE PROCEDURE h5tbwrite_field_index_f_double + MODULE PROCEDURE h5tbwrite_field_index_f_string +END INTERFACE -interface h5tbread_field_index_f - module procedure h5tbread_field_index_f_int - module procedure h5tbread_field_index_f_float - module procedure h5tbread_field_index_f_double - module procedure h5tbread_field_index_f_string -end interface +INTERFACE h5tbread_field_index_f + MODULE PROCEDURE h5tbread_field_index_f_int + MODULE PROCEDURE h5tbread_field_index_f_float + MODULE PROCEDURE h5tbread_field_index_f_double + MODULE PROCEDURE h5tbread_field_index_f_string +END INTERFACE -interface h5tbinsert_field_f - module procedure h5tbinsert_field_f_int - module procedure h5tbinsert_field_f_float - module procedure h5tbinsert_field_f_double - module procedure h5tbinsert_field_f_string -end interface +INTERFACE h5tbinsert_field_f + MODULE PROCEDURE h5tbinsert_field_f_int + MODULE PROCEDURE h5tbinsert_field_f_float + MODULE PROCEDURE h5tbinsert_field_f_double + MODULE PROCEDURE h5tbinsert_field_f_string +END INTERFACE -contains +CONTAINS !------------------------------------------------------------------------- @@ -79,7 +79,7 @@ contains ! !------------------------------------------------------------------------- -subroutine h5tbmake_table_f(table_title,& +SUBROUTINE h5tbmake_table_f(table_title,& loc_id,& dset_name,& nfields,& @@ -92,7 +92,7 @@ subroutine h5tbmake_table_f(table_title,& compress,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -101,68 +101,75 @@ subroutine h5tbmake_table_f(table_title,& !DEC$endif ! - character(len=*), intent(in) :: table_title ! name of the dataset - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(in) :: nfields ! fields - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), dimension(nfields), intent(in) :: field_names ! field names - integer(size_t), dimension(nfields), intent(in) :: field_offset ! field offset - integer(hid_t), dimension(nfields), intent(in) :: field_types ! field types - integer(hsize_t), intent(in) :: chunk_size ! chunk size - integer, intent(in) :: compress ! compress - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code - integer, dimension(nfields) :: namelen2 ! name lengths - integer :: i ! general purpose integer - - - interface - integer function h5tbmake_table_c(namelen1,& - table_title,& - loc_id,& - namelen,& - dset_name,& - nfields,& - nrecords,& - type_size,& - field_offset,& - field_types,& - chunk_size,& - compress,& - namelen2,& - field_names) - - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBMAKE_TABLE_C'::h5tbmake_table_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - !DEC$ATTRIBUTES reference :: table_title - character(len=*), intent(in) :: table_title ! name of the dataset - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(in) :: nfields ! fields - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), dimension(nfields), intent(in) :: field_names ! field names - integer(size_t), dimension(nfields), intent(in) :: field_offset ! field offset - integer(hid_t), dimension(nfields), intent(in) :: field_types ! field types - integer(hsize_t), intent(in) :: chunk_size ! chunk size - integer, intent(in) :: compress ! compress - integer :: namelen ! name length - integer :: namelen1 ! name length - integer, dimension(nfields) :: namelen2 ! name lengths - end function h5tbmake_table_c - end interface - - namelen = len(dset_name) - namelen1 = len(table_title) - do i = 1, nfields - namelen2(i) = len(field_names(i)); - end do + CHARACTER(LEN=*), INTENT(in) :: table_title ! name of the dataset + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(in) :: nfields ! fields + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), DIMENSION(1:nfields), INTENT(in) :: field_names ! field names + INTEGER(size_t), DIMENSION(1:nfields), INTENT(in) :: field_offset ! field offset + INTEGER(hid_t), DIMENSION(1:nfields), INTENT(in) :: field_types ! field types + INTEGER(hsize_t), INTENT(in) :: chunk_size ! chunk size + INTEGER, INTENT(in) :: compress ! compress + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code + INTEGER, DIMENSION(1:nfields) :: char_len_field_names ! field name lengths + INTEGER :: max_char_size_field_names ! character len of field names + INTEGER :: i ! general purpose integer + + + INTERFACE + INTEGER FUNCTION h5tbmake_table_c(namelen1,& + table_title,& + loc_id,& + namelen,& + dset_name,& + nfields,& + nrecords,& + type_size,& + field_offset,& + field_types,& + chunk_size,& + compress,& + char_len_field_names,& + max_char_size_field_names,& + field_names) + + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBMAKE_TABLE_C'::h5tbmake_table_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + !DEC$ATTRIBUTES reference :: table_title + CHARACTER(LEN=*), INTENT(in) :: table_title ! name of the dataset + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(in) :: nfields ! fields + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), DIMENSION(nfields), INTENT(in) :: field_names ! field names + INTEGER(size_t), DIMENSION(nfields), INTENT(in) :: field_offset ! field offset + INTEGER(hid_t), DIMENSION(nfields), INTENT(in) :: field_types ! field types + INTEGER(hsize_t), INTENT(in) :: chunk_size ! chunk size + INTEGER, INTENT(in) :: compress ! compress + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER, DIMENSION(nfields) :: char_len_field_names ! field name's lengths + INTEGER :: max_char_size ! character len of field names + END FUNCTION h5tbmake_table_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(table_title) + + ! Find the size of each character string in the array + DO i = 1, nfields + char_len_field_names(i) = LEN_TRIM(field_names(i)) + END DO + + max_char_size_field_names = LEN(field_names(1)) errcode = h5tbmake_table_c(namelen1,& table_title,& @@ -176,10 +183,11 @@ subroutine h5tbmake_table_f(table_title,& field_types,& chunk_size,& compress,& - namelen2,& + char_len_field_names, & + max_char_size_field_names, & field_names) -end subroutine h5tbmake_table_f +END SUBROUTINE h5tbmake_table_f !------------------------------------------------------------------------- @@ -197,7 +205,7 @@ end subroutine h5tbmake_table_f ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_name_f_int(loc_id,& +SUBROUTINE h5tbwrite_field_name_f_int(loc_id,& dset_name,& field_name,& start,& @@ -206,7 +214,7 @@ subroutine h5tbwrite_field_name_f_int(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -215,47 +223,47 @@ subroutine h5tbwrite_field_name_f_int(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_INT_C'::h5tbwrite_field_name_int_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbwrite_field_name_int_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbwrite_field_name_int_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbwrite_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_name_f_int +END SUBROUTINE h5tbwrite_field_name_f_int !------------------------------------------------------------------------- ! Function: h5tbwrite_field_name_f_float @@ -272,7 +280,7 @@ end subroutine h5tbwrite_field_name_f_int ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_name_f_float(loc_id,& +SUBROUTINE h5tbwrite_field_name_f_float(loc_id,& dset_name,& field_name,& start,& @@ -281,7 +289,7 @@ subroutine h5tbwrite_field_name_f_float(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -290,47 +298,47 @@ subroutine h5tbwrite_field_name_f_float(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_FL_C'::h5tbwrite_field_name_fl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbwrite_field_name_fl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbwrite_field_name_fl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbwrite_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_name_f_float +END SUBROUTINE h5tbwrite_field_name_f_float @@ -349,7 +357,7 @@ end subroutine h5tbwrite_field_name_f_float ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_name_f_double(loc_id,& +SUBROUTINE h5tbwrite_field_name_f_double(loc_id,& dset_name,& field_name,& start,& @@ -358,7 +366,7 @@ subroutine h5tbwrite_field_name_f_double(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -367,47 +375,47 @@ subroutine h5tbwrite_field_name_f_double(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_DL_C'::h5tbwrite_field_name_dl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbwrite_field_name_dl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbwrite_field_name_dl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbwrite_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_name_f_double +END SUBROUTINE h5tbwrite_field_name_f_double !------------------------------------------------------------------------- ! Function: h5tbwrite_field_name_f_string @@ -424,7 +432,7 @@ end subroutine h5tbwrite_field_name_f_double ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_name_f_string(loc_id,& +SUBROUTINE h5tbwrite_field_name_f_string(loc_id,& dset_name,& field_name,& start,& @@ -433,7 +441,7 @@ subroutine h5tbwrite_field_name_f_string(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -442,47 +450,47 @@ subroutine h5tbwrite_field_name_f_string(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_NAME_ST_C'::h5tbwrite_field_name_st_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbwrite_field_name_st_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbwrite_field_name_st_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbwrite_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_name_f_string +END SUBROUTINE h5tbwrite_field_name_f_string !------------------------------------------------------------------------- @@ -500,7 +508,7 @@ end subroutine h5tbwrite_field_name_f_string ! !------------------------------------------------------------------------- -subroutine h5tbread_field_name_f_int(loc_id,& +SUBROUTINE h5tbread_field_name_f_int(loc_id,& dset_name,& field_name,& start,& @@ -509,7 +517,7 @@ subroutine h5tbread_field_name_f_int(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -518,47 +526,47 @@ subroutine h5tbread_field_name_f_int(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_INT_C'::h5tbread_field_name_int_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbread_field_name_int_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbread_field_name_int_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbread_field_name_int_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_name_f_int +END SUBROUTINE h5tbread_field_name_f_int !------------------------------------------------------------------------- ! Function: h5tbread_field_name_f_float @@ -575,7 +583,7 @@ end subroutine h5tbread_field_name_f_int ! !------------------------------------------------------------------------- -subroutine h5tbread_field_name_f_float(loc_id,& +SUBROUTINE h5tbread_field_name_f_float(loc_id,& dset_name,& field_name,& start,& @@ -584,7 +592,7 @@ subroutine h5tbread_field_name_f_float(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -593,47 +601,47 @@ subroutine h5tbread_field_name_f_float(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_FL_C'::h5tbread_field_name_fl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbread_field_name_fl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbread_field_name_fl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbread_field_name_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_name_f_float +END SUBROUTINE h5tbread_field_name_f_float !------------------------------------------------------------------------- ! Function: h5tbread_field_name_f_double @@ -650,7 +658,7 @@ end subroutine h5tbread_field_name_f_float ! !------------------------------------------------------------------------- -subroutine h5tbread_field_name_f_double(loc_id,& +SUBROUTINE h5tbread_field_name_f_double(loc_id,& dset_name,& field_name,& start,& @@ -659,7 +667,7 @@ subroutine h5tbread_field_name_f_double(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -668,47 +676,47 @@ subroutine h5tbread_field_name_f_double(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_DL_C'::h5tbread_field_name_dl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbread_field_name_dl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbread_field_name_dl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbread_field_name_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_name_f_double +END SUBROUTINE h5tbread_field_name_f_double !------------------------------------------------------------------------- ! Function: h5tbread_field_name_f_string @@ -725,7 +733,7 @@ end subroutine h5tbread_field_name_f_double ! !------------------------------------------------------------------------- -subroutine h5tbread_field_name_f_string(loc_id,& +SUBROUTINE h5tbread_field_name_f_string(loc_id,& dset_name,& field_name,& start,& @@ -734,7 +742,7 @@ subroutine h5tbread_field_name_f_string(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -743,47 +751,47 @@ subroutine h5tbread_field_name_f_string(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length - interface - integer function h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_NAME_ST_C'::h5tbread_field_name_st_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - integer :: namelen1 ! name length - end function h5tbread_field_name_st_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + END FUNCTION h5tbread_field_name_st_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbread_field_name_st_c(loc_id,namelen,dset_name,namelen1,field_name,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_name_f_string +END SUBROUTINE h5tbread_field_name_f_string !------------------------------------------------------------------------- @@ -801,7 +809,7 @@ end subroutine h5tbread_field_name_f_string ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_index_f_int(loc_id,& +SUBROUTINE h5tbwrite_field_index_f_int(loc_id,& dset_name,& field_index,& start,& @@ -810,7 +818,7 @@ subroutine h5tbwrite_field_index_f_int(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -819,43 +827,43 @@ subroutine h5tbwrite_field_index_f_int(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_INT_C'::h5tbwrite_field_index_int_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbwrite_field_index_int_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbwrite_field_index_int_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbwrite_field_index_int_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_index_f_int +END SUBROUTINE h5tbwrite_field_index_f_int !------------------------------------------------------------------------- ! Function: h5tbwrite_field_index_f_float @@ -872,7 +880,7 @@ end subroutine h5tbwrite_field_index_f_int ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_index_f_float(loc_id,& +SUBROUTINE h5tbwrite_field_index_f_float(loc_id,& dset_name,& field_index,& start,& @@ -881,7 +889,7 @@ subroutine h5tbwrite_field_index_f_float(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -890,43 +898,43 @@ subroutine h5tbwrite_field_index_f_float(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_FL_C'::h5tbwrite_field_index_fl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbwrite_field_index_fl_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbwrite_field_index_fl_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbwrite_field_index_fl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_index_f_float +END SUBROUTINE h5tbwrite_field_index_f_float @@ -945,7 +953,7 @@ end subroutine h5tbwrite_field_index_f_float ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_index_f_double(loc_id,& +SUBROUTINE h5tbwrite_field_index_f_double(loc_id,& dset_name,& field_index,& start,& @@ -954,7 +962,7 @@ subroutine h5tbwrite_field_index_f_double(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -963,43 +971,43 @@ subroutine h5tbwrite_field_index_f_double(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_DL_C'::h5tbwrite_field_index_dl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbwrite_field_index_dl_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbwrite_field_index_dl_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbwrite_field_index_dl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_index_f_double +END SUBROUTINE h5tbwrite_field_index_f_double !------------------------------------------------------------------------- ! Function: h5tbwrite_field_index_f_string @@ -1016,7 +1024,7 @@ end subroutine h5tbwrite_field_index_f_double ! !------------------------------------------------------------------------- -subroutine h5tbwrite_field_index_f_string(loc_id,& +SUBROUTINE h5tbwrite_field_index_f_string(loc_id,& dset_name,& field_index,& start,& @@ -1025,7 +1033,7 @@ subroutine h5tbwrite_field_index_f_string(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1034,43 +1042,43 @@ subroutine h5tbwrite_field_index_f_string(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBWRITE_FIELD_INDEX_ST_C'::h5tbwrite_field_index_st_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbwrite_field_index_st_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbwrite_field_index_st_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbwrite_field_index_st_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbwrite_field_index_f_string +END SUBROUTINE h5tbwrite_field_index_f_string !------------------------------------------------------------------------- @@ -1088,7 +1096,7 @@ end subroutine h5tbwrite_field_index_f_string ! !------------------------------------------------------------------------- -subroutine h5tbread_field_index_f_int(loc_id,& +SUBROUTINE h5tbread_field_index_f_int(loc_id,& dset_name,& field_index,& start,& @@ -1097,7 +1105,7 @@ subroutine h5tbread_field_index_f_int(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1106,43 +1114,43 @@ subroutine h5tbread_field_index_f_int(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_INT_C'::h5tbread_field_index_int_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbread_field_index_int_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbread_field_index_int_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbread_field_index_int_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_index_f_int +END SUBROUTINE h5tbread_field_index_f_int !------------------------------------------------------------------------- ! Function: h5tbread_field_index_f_float @@ -1159,7 +1167,7 @@ end subroutine h5tbread_field_index_f_int ! !------------------------------------------------------------------------- -subroutine h5tbread_field_index_f_float(loc_id,& +SUBROUTINE h5tbread_field_index_f_float(loc_id,& dset_name,& field_index,& start,& @@ -1168,7 +1176,7 @@ subroutine h5tbread_field_index_f_float(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1177,43 +1185,43 @@ subroutine h5tbread_field_index_f_float(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_FL_C'::h5tbread_field_index_fl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - real, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbread_field_index_fl_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbread_field_index_fl_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbread_field_index_fl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_index_f_float +END SUBROUTINE h5tbread_field_index_f_float !------------------------------------------------------------------------- ! Function: h5tbread_field_index_f_double @@ -1230,7 +1238,7 @@ end subroutine h5tbread_field_index_f_float ! !------------------------------------------------------------------------- -subroutine h5tbread_field_index_f_double(loc_id,& +SUBROUTINE h5tbread_field_index_f_double(loc_id,& dset_name,& field_index,& start,& @@ -1239,7 +1247,7 @@ subroutine h5tbread_field_index_f_double(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1248,43 +1256,43 @@ subroutine h5tbread_field_index_f_double(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_DL_C'::h5tbread_field_index_dl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbread_field_index_dl_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbread_field_index_dl_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbread_field_index_dl_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_index_f_double +END SUBROUTINE h5tbread_field_index_f_double !------------------------------------------------------------------------- ! Function: h5tbread_field_index_f_string @@ -1301,7 +1309,7 @@ end subroutine h5tbread_field_index_f_double ! !------------------------------------------------------------------------- -subroutine h5tbread_field_index_f_string(loc_id,& +SUBROUTINE h5tbread_field_index_f_string(loc_id,& dset_name,& field_index,& start,& @@ -1310,7 +1318,7 @@ subroutine h5tbread_field_index_f_string(loc_id,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1319,43 +1327,43 @@ subroutine h5tbread_field_index_f_string(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,& + INTERFACE + INTEGER FUNCTION h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBREAD_FIELD_INDEX_ST_C'::h5tbread_field_index_st_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer, intent(in) :: field_index ! index - integer(hsize_t), intent(in) :: start ! start record - integer(hsize_t), intent(in) :: nrecords ! records - integer(size_t), intent(in) :: type_size ! type size - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: errcode ! error code - integer :: namelen ! name length - end function h5tbread_field_index_st_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER, INTENT(in) :: field_index ! index + INTEGER(hsize_t), INTENT(in) :: start ! start record + INTEGER(hsize_t), INTENT(in) :: nrecords ! records + INTEGER(size_t), INTENT(in) :: type_size ! type size + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length + END FUNCTION h5tbread_field_index_st_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbread_field_index_st_c(loc_id,namelen,dset_name,field_index,& start,nrecords,type_size,buf) -end subroutine h5tbread_field_index_f_string +END SUBROUTINE h5tbread_field_index_f_string !------------------------------------------------------------------------- @@ -1373,14 +1381,14 @@ end subroutine h5tbread_field_index_f_string ! !------------------------------------------------------------------------- -subroutine h5tbinsert_field_f_int(loc_id,& +SUBROUTINE h5tbinsert_field_f_int(loc_id,& dset_name,& field_name,& field_type,& field_index,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1389,45 +1397,45 @@ subroutine h5tbinsert_field_f_int(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code - interface - integer function h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_INT_C'::h5tbinsert_field_int_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - integer, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length length - end function h5tbinsert_field_int_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + INTEGER, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length length + END FUNCTION h5tbinsert_field_int_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbinsert_field_int_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) -end subroutine h5tbinsert_field_f_int +END SUBROUTINE h5tbinsert_field_f_int @@ -1446,14 +1454,14 @@ end subroutine h5tbinsert_field_f_int ! !------------------------------------------------------------------------- -subroutine h5tbinsert_field_f_float(loc_id,& +SUBROUTINE h5tbinsert_field_f_float(loc_id,& dset_name,& field_name,& field_type,& field_index,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1462,45 +1470,45 @@ subroutine h5tbinsert_field_f_float(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - real, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code - interface - integer function h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_FL_C'::h5tbinsert_field_fl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - real, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length length - end function h5tbinsert_field_fl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + REAL, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length length + END FUNCTION h5tbinsert_field_fl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbinsert_field_fl_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) -end subroutine h5tbinsert_field_f_float +END SUBROUTINE h5tbinsert_field_f_float @@ -1519,14 +1527,14 @@ end subroutine h5tbinsert_field_f_float ! !------------------------------------------------------------------------- -subroutine h5tbinsert_field_f_double(loc_id,& +SUBROUTINE h5tbinsert_field_f_double(loc_id,& dset_name,& field_name,& field_type,& field_index,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1535,45 +1543,45 @@ subroutine h5tbinsert_field_f_double(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code - interface - integer function h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_DL_C'::h5tbinsert_field_dl_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - double precision, intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length length - end function h5tbinsert_field_dl_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + DOUBLE PRECISION, INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length length + END FUNCTION h5tbinsert_field_dl_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbinsert_field_dl_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) -end subroutine h5tbinsert_field_f_double +END SUBROUTINE h5tbinsert_field_f_double @@ -1593,14 +1601,14 @@ end subroutine h5tbinsert_field_f_double ! !------------------------------------------------------------------------- -subroutine h5tbinsert_field_f_string(loc_id,& +SUBROUTINE h5tbinsert_field_f_string(loc_id,& dset_name,& field_name,& field_type,& field_index,& buf,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1609,45 +1617,45 @@ subroutine h5tbinsert_field_f_string(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code - interface - integer function h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,& + INTERFACE + INTEGER FUNCTION h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBINSERT_FIELD_ST_C'::h5tbinsert_field_st_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer(hid_t), intent(in) :: field_type ! field type - integer, intent(in) :: field_index ! field_index - character(len=*), intent(in), dimension(*) :: buf ! data buffer - integer :: namelen ! name length - integer :: namelen1 ! name length length - end function h5tbinsert_field_st_c - end interface - - namelen = len(dset_name) - namelen1 = len(field_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER(hid_t), INTENT(in) :: field_type ! field type + INTEGER, INTENT(in) :: field_index ! field_index + CHARACTER(LEN=*), INTENT(in), DIMENSION(*) :: buf ! data buffer + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length length + END FUNCTION h5tbinsert_field_st_c + END INTERFACE + + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbinsert_field_st_c(loc_id,namelen,dset_name,namelen1,field_name,& field_type,field_index,buf) -end subroutine h5tbinsert_field_f_string +END SUBROUTINE h5tbinsert_field_f_string @@ -1667,11 +1675,11 @@ end subroutine h5tbinsert_field_f_string ! !------------------------------------------------------------------------- -subroutine h5tbdelete_field_f(loc_id,& +SUBROUTINE h5tbdelete_field_f(loc_id,& dset_name,& field_name,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1680,37 +1688,37 @@ subroutine h5tbdelete_field_f(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - character(len=*), intent(in) :: field_name ! name of the field - integer :: namelen ! name length - integer :: namelen1 ! name length - integer :: errcode ! error code + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(in) :: field_name ! name of the field + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length + INTEGER :: errcode ! error code - interface - integer function h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name) + INTERFACE + INTEGER FUNCTION h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name) - use h5global + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBDELETE_FIELD_C'::h5tbdelete_field_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name !DEC$ATTRIBUTES reference :: field_name - integer(HID_T), intent(IN) :: loc_id ! file or group identifier - character(LEN=*), intent(IN) :: dset_name ! name of the dataset - character(LEN=*), intent(IN) :: field_name ! name of the field - integer :: namelen ! name length - integer :: namelen1 ! name length length - end function h5tbdelete_field_c - end interface + INTEGER(HID_T), INTENT(IN) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(IN) :: dset_name ! name of the dataset + CHARACTER(LEN=*), INTENT(IN) :: field_name ! name of the field + INTEGER :: namelen ! name length + INTEGER :: namelen1 ! name length length + END FUNCTION h5tbdelete_field_c + END INTERFACE - namelen = len(dset_name) - namelen1 = len(field_name) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) errcode = h5tbdelete_field_c(loc_id,namelen,dset_name,namelen1,field_name) -end subroutine h5tbdelete_field_f +END SUBROUTINE h5tbdelete_field_f @@ -1731,13 +1739,13 @@ end subroutine h5tbdelete_field_f ! !------------------------------------------------------------------------- -subroutine h5tbget_table_info_f(loc_id,& +SUBROUTINE h5tbget_table_info_f(loc_id,& dset_name,& nfields,& nrecords,& errcode ) - implicit none + IMPLICIT NONE ! !This definition is needed for Windows DLLs @@ -1746,32 +1754,32 @@ subroutine h5tbget_table_info_f(loc_id,& !DEC$endif ! - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(inout):: nfields ! nfields - integer(hsize_t), intent(inout):: nrecords ! nrecords - integer :: errcode ! error code - integer :: namelen ! name length + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(inout):: nfields ! nfields + INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords + INTEGER :: errcode ! error code + INTEGER :: namelen ! name length - interface - integer function h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords) - use h5global + INTERFACE + INTEGER FUNCTION h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords) + USE h5global !DEC$IF DEFINED(HDF5F90_WINDOWS) !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_TABLE_INFO_C'::h5tbget_table_info_c !DEC$ENDIF !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(inout):: nfields ! nfields - integer(hsize_t), intent(inout):: nrecords ! nrecords - integer :: namelen ! name length - end function h5tbget_table_info_c - end interface - - namelen = len(dset_name) + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(inout):: nfields ! nfields + INTEGER(hsize_t), INTENT(inout):: nrecords ! nrecords + INTEGER :: namelen ! name length + END FUNCTION h5tbget_table_info_c + END INTERFACE + + namelen = LEN(dset_name) errcode = h5tbget_table_info_c(loc_id,namelen,dset_name,nfields,nrecords) -end subroutine h5tbget_table_info_f +END SUBROUTINE h5tbget_table_info_f !------------------------------------------------------------------------- @@ -1787,75 +1795,81 @@ end subroutine h5tbget_table_info_f ! ! Comments: ! -! Modifications: +! Modifications: +! Added optional parameter for returning the maximum character lenght +! in the field name array. March 3, 2011 ! !------------------------------------------------------------------------- -subroutine h5tbget_field_info_f(loc_id,& +SUBROUTINE h5tbget_field_info_f(loc_id,& dset_name,& nfields,& field_names,& - field_sizes,& - field_offsets,& - type_size,& - errcode ) - - implicit none + field_sizes,& + field_offsets,& + type_size,& + errcode, maxlen_out ) + IMPLICIT NONE ! !This definition is needed for Windows DLLs !DEC$if defined(BUILD_HDF5_DLL) !DEC$attributes dllexport :: h5tbget_field_info_f !DEC$endif ! - - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(in):: nfields ! nfields - character(len=*), dimension(nfields), intent(inout) :: field_names ! field names - integer(size_t), dimension(nfields), intent(inout) :: field_sizes ! field sizes - integer(size_t), dimension(nfields), intent(inout) :: field_offsets ! field offsets - integer(size_t), intent(inout):: type_size ! type size - integer :: errcode ! error code - integer :: namelen ! name length - integer, dimension(nfields) :: namelen2 ! name lengths - integer :: i ! general purpose integer - - interface - integer function h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,& - field_sizes,field_offsets,type_size,namelen2,field_names) - - use h5global - !DEC$IF DEFINED(HDF5F90_WINDOWS) - !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_FIELD_INFO_C'::h5tbget_field_info_c - !DEC$ENDIF - !DEC$ATTRIBUTES reference :: dset_name - integer(hid_t), intent(in) :: loc_id ! file or group identifier - character(len=*), intent(in) :: dset_name ! name of the dataset - integer(hsize_t), intent(in):: nfields ! nfields - character(len=*), dimension(nfields), intent(inout) :: field_names ! field names - integer(size_t), dimension(nfields), intent(inout) :: field_sizes ! field sizes - integer(size_t), dimension(nfields), intent(inout) :: field_offsets ! field offsets - integer(size_t), intent(inout):: type_size ! type size - integer :: namelen ! name length - integer, dimension(nfields) :: namelen2 ! name lengths - end function h5tbget_field_info_c - end interface - - namelen = len(dset_name) - do i = 1, nfields - namelen2(i) = len(field_names(i)); - end do - errcode = h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,& - field_sizes,field_offsets,type_size,namelen2,field_names) - -end subroutine h5tbget_field_info_f - - - -! end -! -end module H5TB + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(in) :: nfields ! nfields + CHARACTER(LEN=*), DIMENSION(nfields), INTENT(inout) :: field_names ! field names + INTEGER(size_t), DIMENSION(nfields), INTENT(inout) :: field_sizes ! field sizes + INTEGER(size_t), DIMENSION(nfields), INTENT(inout) :: field_offsets ! field offsets + INTEGER(size_t), INTENT(inout):: type_size ! type size + INTEGER :: errcode ! error code + INTEGER, OPTIONAL :: maxlen_out ! maximum character len of the field names + INTEGER :: namelen ! name length + INTEGER, DIMENSION(nfields) :: namelen2 ! name lengths + INTEGER :: i ! general purpose integer + INTEGER :: maxlen + INTEGER :: c_maxlen_out + + INTERFACE + INTEGER FUNCTION h5tbget_field_info_c(loc_id,namelen,dset_name,nfields,& + field_sizes,field_offsets,type_size,namelen2, maxlen, field_names, c_maxlen_out) + + USE h5global + !DEC$IF DEFINED(HDF5F90_WINDOWS) + !DEC$ATTRIBUTES C,reference,decorate,alias:'H5TBGET_FIELD_INFO_C'::h5tbget_field_info_c + !DEC$ENDIF + !DEC$ATTRIBUTES reference :: dset_name + INTEGER(hid_t), INTENT(in) :: loc_id ! file or group identifier + CHARACTER(LEN=*), INTENT(in) :: dset_name ! name of the dataset + INTEGER(hsize_t), INTENT(in):: nfields ! nfields + CHARACTER(LEN=*), DIMENSION(1:nfields), INTENT(inout) :: field_names ! field names + INTEGER(size_t), DIMENSION(1:nfields), INTENT(inout) :: field_sizes ! field sizes + INTEGER(size_t), DIMENSION(1:nfields), INTENT(inout) :: field_offsets ! field offsets + INTEGER(size_t), INTENT(inout):: type_size ! type size + INTEGER :: namelen ! name length + INTEGER :: maxlen ! maxiumum length of input field names + INTEGER, DIMENSION(1:nfields) :: namelen2 ! name lengths + INTEGER :: c_maxlen_out ! maximum character length of a field array element + END FUNCTION h5tbget_field_info_c + END INTERFACE + + namelen = LEN(dset_name) + DO i = 1, nfields + namelen2(i) = LEN_TRIM(field_names(i)) + END DO + maxlen = LEN(field_names(1)) + c_maxlen_out = 0 + + errcode = h5tbget_field_info_c(loc_id, namelen,dset_name, nfields, & + field_sizes, field_offsets, type_size, namelen2, maxlen, field_names, c_maxlen_out) + + IF(PRESENT(maxlen_out)) maxlen_out = c_maxlen_out + +END SUBROUTINE h5tbget_field_info_f + +END MODULE H5TB |