diff options
Diffstat (limited to 'hl/fortran/src/H5DSff.F90')
-rw-r--r-- | hl/fortran/src/H5DSff.F90 | 518 |
1 files changed, 0 insertions, 518 deletions
diff --git a/hl/fortran/src/H5DSff.F90 b/hl/fortran/src/H5DSff.F90 deleted file mode 100644 index 00cf4d8..0000000 --- a/hl/fortran/src/H5DSff.F90 +++ /dev/null @@ -1,518 +0,0 @@ -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -! Copyright by The HDF Group. * -! Copyright by the Board of Trustees of the University of Illinois. * -! All rights reserved. * -! * -! This file is part of HDF5. The full HDF5 copyright notice, including * -! terms governing use, modification, and redistribution, is contained in * -! the files COPYING and Copyright.html. COPYING can be found at the root * -! of the source code distribution tree; Copyright.html can be found at the * -! root level of an installed copy of the electronic HDF5 document set and * -! is linked from the top-level documents page. It can also be found at * -! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * -! access to either file, you may request a copy from help@hdfgroup.org. * -! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -! -! -! This file contains FORTRAN90 interfaces for H5DS functions -! - -MODULE h5ds - - USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_CHAR, C_FLOAT, C_DOUBLE, C_LOC, C_CHAR - USE h5fortran_types - USE hdf5 - -CONTAINS - -!------------------------------------------------------------------------- -! Function: H5DSset_scale_f -! -! Purpose: Convert dataset dsid to a dimension scale, with optional name, dimname. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 17, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSset_scale_f( dsid, errcode, dimname) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsset_scale_f -!DEC$endif -! - - INTEGER(hid_t), INTENT(in) :: dsid ! The dataset to be made a Dimension Scale - CHARACTER(LEN=*), INTENT(in), OPTIONAL :: dimname ! The dimension name - INTEGER :: errcode ! Error code - - INTEGER(SIZE_T) :: dimname_len ! length of dimname (if present) - - INTERFACE - INTEGER FUNCTION H5DSset_scale_c(dsid, dimname, dimname_len) & - BIND(C,NAME='h5dsset_scale_c') - IMPORT :: C_CHAR - IMPORT :: HID_T, SIZE_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: dsid ! The dataset to be made a Dimension Scale - CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: dimname ! The dimension name - INTEGER(SIZE_T), INTENT(in) :: dimname_len - END FUNCTION H5DSset_scale_c - END INTERFACE - - IF(PRESENT(dimname))THEN - dimname_len = LEN(dimname) - errcode = H5DSset_scale_c(dsid, dimname, dimname_len ) - ELSE - errcode = H5DSset_scale_c(dsid, " ", INT(0,SIZE_T) ) - ENDIF - - END SUBROUTINE H5DSset_scale_f - -!------------------------------------------------------------------------- -! Function: H5DSattach_scale_f -! -! Purpose: Attach dimension scale dsid to dimension idx of dataset did. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 17, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSattach_scale_f( did, dsid, idx, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsattach_scale_f -!DEC$endif -! - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached - INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with. - INTEGER :: errcode ! error code - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSattach_scale_c(did, dsid, idx) & - BIND(C,NAME='h5dsattach_scale_c') - IMPORT :: HID_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached - INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with. - END FUNCTION H5DSattach_scale_c - END INTERFACE - - c_idx = idx -1 ! account for C-dimensions starting at 0 - - errcode = H5DSattach_scale_c( did, dsid, c_idx) - - END SUBROUTINE H5DSattach_scale_f - -!------------------------------------------------------------------------- -! Function: H5DSdetach_scale_f -! -! Purpose: Detach dimension scale dsid from the dimension idx of Dataset did. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 17, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSdetach_scale_f( did, dsid, idx, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsdetach_scale_f -!DEC$endif -! - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached - INTEGER , INTENT(in) :: idx ! the dimension of did to detach - INTEGER :: errcode ! error code - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSdetach_scale_c(did, dsid, idx) & - BIND(C,NAME='h5dsdetach_scale_c') - IMPORT :: HID_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached - INTEGER , INTENT(in) :: idx ! the dimension of did to detach - END FUNCTION H5DSdetach_scale_c - END INTERFACE - - c_idx = idx - 1 ! account for C-dimensions starting at 0 - - errcode = H5DSdetach_scale_c( did, dsid, c_idx) - - END SUBROUTINE H5DSdetach_scale_f - - -!------------------------------------------------------------------------- -! Function: H5DSis_attached_f -! -! Purpose: Report if dimension scale dsid is currently attached to dimension idx of dataset did. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 17, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSis_attached_f( did, dsid, idx, is_attached, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsis_attached_f -!DEC$endif -! - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be attached - INTEGER , INTENT(in) :: idx ! the dimension of did that dsid is associated with - LOGICAL , INTENT(out) :: is_attached ! logical: dimension scale dsid is currently attached to - ! dimension idx of dataset did - INTEGER :: errcode ! error code - INTEGER :: c_is_attached - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSis_attached_c(did, dsid, idx, c_is_attached) & - BIND(C,NAME='h5dsis_attached_c') - IMPORT :: HID_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER(hid_t), INTENT(in) :: dsid ! the scale to be detached - INTEGER , INTENT(in) :: idx ! the dimension of did to detach - INTEGER , INTENT(out) :: c_is_attached ! dimension scale dsid is currently attached to - END FUNCTION H5DSis_attached_c - END INTERFACE - - c_idx = idx - 1 ! account for C-dimensions starting at 0 - - errcode = H5DSis_attached_c(did, dsid, c_idx, c_is_attached) - - is_attached = .FALSE. ! default - IF(c_is_attached.GT.0)THEN - is_attached = .TRUE. - ELSE IF(errcode.LT.0)THEN - errcode = -1 - ENDIF - - END SUBROUTINE H5DSis_attached_f - -! -! H5DSiterate_scales: Impliment in F2003 -! - -!------------------------------------------------------------------------- -! Function: H5DSis_scale_f -! -! Purpose: Determines whether dset is a Dimension Scale. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 18, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSis_scale_f( did, is_scale, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsis_scale_f -!DEC$endif -! - INTEGER(hid_t), INTENT(in) :: did ! the data set to query - LOGICAL , INTENT(out) :: is_scale ! logical: - ! .TRUE. if did is a Dimension Scale - INTEGER :: errcode ! error code - INTEGER :: c_is_scale - - INTERFACE - INTEGER FUNCTION H5DSis_scale_c(did,c_is_scale) & - BIND(C,NAME='h5dsis_scale_c') - IMPORT :: HID_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did - INTEGER, INTENT(out) :: c_is_scale - END FUNCTION H5DSis_scale_c - END INTERFACE - - errcode = H5DSis_scale_c(did, c_is_scale) - - is_scale = .FALSE. ! default - IF(c_is_scale.GT.0)THEN - is_scale = .TRUE. - ELSE IF(errcode.LT.0)THEN - errcode = -1 - ENDIF - - END SUBROUTINE H5DSis_scale_f - -!------------------------------------------------------------------------- -! Function: H5DSset_label_f -! -! Purpose: Set label for the dimension idx of did to the value label -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 18, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSset_label_f( did, idx, label, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsset_label_f -!DEC$endif -! - - INTEGER(hid_t), INTENT(in) :: did ! The dataset - INTEGER , INTENT(in) :: idx ! The dimension - CHARACTER(LEN=*), INTENT(in) :: label ! The label - INTEGER :: errcode ! Error code - - INTEGER(SIZE_T) :: label_len ! Length of label - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSset_label_c(did, idx, label, label_len) & - BIND(C,NAME='h5dsset_label_c') - IMPORT :: C_CHAR - IMPORT :: HID_T, SIZE_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! The dataset - INTEGER , INTENT(in) :: idx ! The dimension - CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label - INTEGER(SIZE_T), INTENT(in) :: label_len ! Length of label - END FUNCTION H5DSset_label_c - END INTERFACE - - c_idx = idx - 1 - - label_len = LEN(label) - errcode = H5DSset_label_c(did, c_idx, label, label_len) - - END SUBROUTINE H5DSset_label_f - -!------------------------------------------------------------------------- -! Function: H5DSget_label_f -! -! Purpose: Read the label for dimension idx of did into buffer label. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 18, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSget_label_f( did, idx, label, size, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsget_label_f -!DEC$endif -! - - INTEGER(hid_t), INTENT(in) :: did ! The dataget - INTEGER , INTENT(in) :: idx ! The dimension - CHARACTER(LEN=*), INTENT(in) :: label ! The label - INTEGER(size_t) , INTENT(inout) :: size ! The length of the label buffer - INTEGER :: errcode ! Error code - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSget_label_c(did, idx, label, size) & - BIND(C,NAME='h5dsget_label_c') - IMPORT :: C_CHAR - IMPORT :: HID_T, SIZE_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! The dataget - INTEGER , INTENT(in) :: idx ! The dimension - CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(in) :: label ! The label - INTEGER(SIZE_T), INTENT(inout) :: size ! Length of label - END FUNCTION H5DSget_label_c - END INTERFACE - - c_idx = idx - 1 - - errcode = H5DSget_label_c(did, c_idx, label, size) - - END SUBROUTINE H5DSget_label_f - - -!------------------------------------------------------------------------- -! Function: H5DSget_scale_name_f -! -! Purpose: Read the name of scale did into buffer name. -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 18, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSget_scale_name_f(did, name, size, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsget_scale_name_f -!DEC$endif -! - - INTEGER(hid_t), INTENT(in) :: did ! The dataget - CHARACTER(LEN=*), INTENT(out) :: name ! The name - INTEGER(size_t) , INTENT(inout) :: size ! The length of the name buffer - INTEGER :: errcode ! Error code - - INTERFACE - INTEGER FUNCTION H5DSget_scale_name_c(did, name, size) & - bind(c,name='h5dsget_scale_name_c') - IMPORT :: C_CHAR - IMPORT :: HID_T, SIZE_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! The dataget - CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(out) :: name ! The name - INTEGER(SIZE_T), INTENT(inout) :: size ! Length of name - END FUNCTION H5DSget_scale_name_c - END INTERFACE - - errcode = H5DSget_scale_name_c(did, name, size) - - END SUBROUTINE H5DSget_scale_name_f - -!------------------------------------------------------------------------- -! Function: H5DSget_num_scales_f -! -! Purpose: Determines how many Dimension Scales are attached to dimension idx of did -! -! Return: Success: 0, Failure: -1 -! -! Programmer: M. Scot Breitenfeld -! -! Date: April 18, 2011 -! -! Comments: -! -! Modifications: -! -!------------------------------------------------------------------------- - - SUBROUTINE H5DSget_num_scales_f( did, idx, num_scales, errcode) - - IMPLICIT NONE - -! -!This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_HL_DLL) -!DEC$attributes dllexport :: h5dsget_num_scales_f -!DEC$endif -! - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER , INTENT(in) :: idx ! the dimension of did to query - INTEGER , INTENT(out) :: num_scales ! the number of Dimension Scales associated with did - INTEGER :: errcode ! error code - INTEGER :: c_idx - - INTERFACE - INTEGER FUNCTION H5DSget_num_scales_c(did, idx, num_scales) & - BIND(C,NAME='h5dsget_num_scales_c') - IMPORT :: HID_T - IMPLICIT NONE - INTEGER(hid_t), INTENT(in) :: did ! the dataset - INTEGER , INTENT(in) :: idx ! the dimension of did to query - INTEGER , INTENT(out) :: num_scales ! the number of Dimension Scales associated with did - END FUNCTION H5DSget_num_scales_c - END INTERFACE - - c_idx = idx - 1 - errcode = H5DSget_num_scales_c(did, c_idx, num_scales) - - END SUBROUTINE H5DSget_num_scales_f - -END MODULE h5ds - - - - - - |