summaryrefslogtreecommitdiffstats
path: root/fortran/src/H5Pff.f90
diff options
context:
space:
mode:
authorElena Pourmal <epourmal@hdfgroup.org>2002-10-02 19:15:43 (GMT)
committerElena Pourmal <epourmal@hdfgroup.org>2002-10-02 19:15:43 (GMT)
commitacb356d30928d02170dd275073d19344e2f0cb9b (patch)
tree5a9e0a7c45954580f5e7eea33378807e4f99ea35 /fortran/src/H5Pff.f90
parent26cd535ff23e4f6f440a4aa28e409f474ef92f66 (diff)
downloadhdf5-acb356d30928d02170dd275073d19344e2f0cb9b.zip
hdf5-acb356d30928d02170dd275073d19344e2f0cb9b.tar.gz
hdf5-acb356d30928d02170dd275073d19344e2f0cb9b.tar.bz2
[svn-r5958]
Purpose: Added missing fortran functions h5set(get)_buffer_f. Also added docs and tests for them. Solution: Currently functions do not accept conversion and background buffers. This corresponds to H5set(get)_buffer call with buffer pointers set to NULL. If there is a demand, I can overload the functions to have new parameters and go through all trouble creating functions for all supported datatypes. Platforms tested: Solaris 2.7, Linux 2.2., IRIX64-6.5
Diffstat (limited to 'fortran/src/H5Pff.f90')
-rw-r--r--fortran/src/H5Pff.f90103
1 files changed, 103 insertions, 0 deletions
diff --git a/fortran/src/H5Pff.f90 b/fortran/src/H5Pff.f90
index b2eed09..f360660 100644
--- a/fortran/src/H5Pff.f90
+++ b/fortran/src/H5Pff.f90
@@ -3327,4 +3327,107 @@
if (c_flag .GT. 0) flag = .TRUE.
END SUBROUTINE h5pequal_f
+!----------------------------------------------------------------------
+! Name: h5pset_buffer_f
+!
+! Purpose: Sets sixe for conversion buffer
+!
+! Inputs:
+! plist_id - data transfer property list identifier
+! size - buffer size
+! Outputs:
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+! Optional parameters:
+! NONE
+!
+! Programmer: Elena Pourmal
+! October 2, 2002
+!
+! Modifications:
+!
+! Comment:
+!----------------------------------------------------------------------
+
+ SUBROUTINE h5pset_buffer_f(plist_id, size, hdferr)
+!
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$attributes dllexport :: h5pset_buffer_f
+!DEC$endif
+!
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier
+ INTEGER(HSIZE_T), INTENT(IN) :: size ! Buffer size in bytes;
+ ! buffer is allocated and freed by
+ ! the library.
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTERFACE
+ INTEGER FUNCTION h5pset_buffer_c(plist_id, size)
+ USE H5GLOBAL
+ !DEC$ IF DEFINED(HDF5F90_WINDOWS)
+ !MS$ATTRIBUTES C,reference,alias:'_H5PSET_BUFFER_C'::h5pset_buffer_c
+ !DEC$ ENDIF
+ INTEGER(HID_T), INTENT(IN) :: plist_id
+ INTEGER(HSIZE_T), INTENT(IN) :: size
+ END FUNCTION h5pset_buffer_c
+ END INTERFACE
+
+ hdferr = h5pset_buffer_c(plist_id, size)
+ END SUBROUTINE h5pset_buffer_f
+
+!----------------------------------------------------------------------
+! Name: h5pget_buffer_f
+!
+! Purpose: Gets size for conversion buffer
+!
+! Inputs:
+! plist_id - data transfer property list identifier
+! Outputs:
+! size - buffer size
+! hdferr: - error code
+! Success: 0
+! Failure: -1
+! Optional parameters:
+! NONE
+!
+! Programmer: Elena Pourmal
+! October 2, 2002
+!
+! Modifications:
+!
+! Comment:
+!----------------------------------------------------------------------
+
+ SUBROUTINE h5pget_buffer_f(plist_id, size, hdferr)
+!
+!This definition is needed for Windows DLLs
+!DEC$if defined(BUILD_HDF5_DLL)
+!DEC$attributes dllexport :: h5pget_buffer_f
+!DEC$endif
+!
+ IMPLICIT NONE
+ INTEGER(HID_T), INTENT(IN) :: plist_id ! Data transfer property list identifier
+ INTEGER(HSIZE_T), INTENT(OUT) :: size ! Buffer size in bytes;
+ ! buffer is allocated and freed by
+ ! the library.
+ INTEGER, INTENT(OUT) :: hdferr ! Error code
+
+ INTERFACE
+ INTEGER FUNCTION h5pget_buffer_c(plist_id, size)
+ USE H5GLOBAL
+ !DEC$ IF DEFINED(HDF5F90_WINDOWS)
+ !MS$ATTRIBUTES C,reference,alias:'_H5PGET_BUFFER_C'::h5pget_buffer_c
+ !DEC$ ENDIF
+ INTEGER(HID_T), INTENT(IN) :: plist_id
+ INTEGER(HSIZE_T), INTENT(OUT) :: size
+ END FUNCTION h5pget_buffer_c
+ END INTERFACE
+
+ hdferr = h5pget_buffer_c(plist_id, size)
+ END SUBROUTINE h5pget_buffer_f
+
+
END MODULE H5P