summaryrefslogtreecommitdiffstats
path: root/fortran/src/H5Off.f90
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2009-09-15 20:19:02 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2009-09-15 20:19:02 (GMT)
commit84527bc7ac95a86ec04fac16872408f8139eb29c (patch)
tree6a7ce37b76ed641d5914fd100f0ce25227444490 /fortran/src/H5Off.f90
parent8537263df1cb4fd30c0d32ff2b75b1dbb7f61152 (diff)
downloadhdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.zip
hdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.tar.gz
hdf5-84527bc7ac95a86ec04fac16872408f8139eb29c.tar.bz2
[svn-r17482]
Bug 1652 - h5lget_info_by_idx_f missing/broken functionalit * added returned val_sel, link_type and address that were missing In the process, fixed the integer type in H5lget_info_f for address and val_sel * wrote test for val_sel, address, and link_type returned values * to check address values added h5Oopen_by_addr_f function and test program. Tested: smirom (pgf90/pgcc, ifort/icc) linew jam (gcc/g95)
Diffstat (limited to 'fortran/src/H5Off.f90')
-rw-r--r--fortran/src/H5Off.f9044
1 files changed, 44 insertions, 0 deletions
diff --git a/fortran/src/H5Off.f90 b/fortran/src/H5Off.f90
index a541502..0328fbc 100644
--- a/fortran/src/H5Off.f90
+++ b/fortran/src/H5Off.f90
@@ -153,5 +153,49 @@ CONTAINS
END SUBROUTINE h5oopen_f
+!----------------------------------------------------------------------
+! Name: h5oopen_by_addr_f
+!
+! Purpose: Opens an object using its address within an HDF5 file.
+!
+! Inputs:
+! loc_id - File or group identifier
+! addr - Object’s address in the file
+! Outputs:
+! obj_id - Object identifier for the opened object
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+!
+! Programmer: M. Scot Breitenfeld
+! September 14, 2009
+!
+! Modifications: N/A
+!
+!----------------------------------------------------------------------
+
+ SUBROUTINE h5oopen_by_addr_f(loc_id, addr, obj_id, hdferr)
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: loc_id ! File or group identifier
+ INTEGER(HADDR_T), INTENT(IN) :: addr ! Object’s address in the file
+ INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object identifier for the opened object
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+ ! Success: 0
+ ! Failure: -1
+ INTERFACE
+ INTEGER FUNCTION h5oopen_by_addr_c(loc_id, addr, obj_id)
+ USE H5GLOBAL
+ !DEC$IF DEFINED(HDF5F90_WINDOWS)
+ !DEC$ATTRIBUTES C,reference,decorate,alias:'H5OOPEN_BY_ADDR_C'::h5oopen_by_addr_c
+ !DEC$ENDIF
+ INTEGER(HID_T), INTENT(IN) :: loc_id
+ INTEGER(HADDR_T), INTENT(IN) :: addr
+ INTEGER(HID_T), INTENT(OUT) :: obj_id
+ END FUNCTION h5oopen_by_addr_c
+ END INTERFACE
+
+ hdferr = h5oopen_by_addr_c(loc_id, addr, obj_id)
+
+ END SUBROUTINE h5oopen_by_addr_f
END MODULE H5O