diff options
Diffstat (limited to 'fortran/src/H5VLff.F90')
-rw-r--r-- | fortran/src/H5VLff.F90 | 254 |
1 files changed, 101 insertions, 153 deletions
diff --git a/fortran/src/H5VLff.F90 b/fortran/src/H5VLff.F90 index 364f0ae..3ebd2f1 100644 --- a/fortran/src/H5VLff.F90 +++ b/fortran/src/H5VLff.F90 @@ -1,10 +1,13 @@ -!****h* ROBODoc/H5VL -! -! NAME -! MODULE H5VL -! -! PURPOSE -! This file contains Fortran interfaces for H5VL (VOL) functions. +!> @defgroup FH5VL Fortran Datatype (H5VL) Interface +!! +!! @see H5VL, C-API +!! +!! @see @ref H5VL_UG, User Guide +!! + +!> @ingroup FH5VL +!! +!! @brief This module contains Fortran interfaces for H5VL (VOL) functions. ! ! COPYRIGHT ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * @@ -32,7 +35,6 @@ ! Windows dll file 'hdf5_fortrandll.def.in' in the fortran/src directory. ! This is needed for Windows based operating systems. ! -!***** MODULE H5VL @@ -46,30 +48,22 @@ CONTAINS ! H5VLregister_connector -! -!****s* H5VL/H5VLregister_connector_by_name_f -! -! NAME -! H5VLregister_connector_by_name_f -! -! PURPOSE -! Registers a new VOL connector as a member of the virtual object -! layer class by name. -! -! INPUTS -! name - Connector name -! OUTPUTS -! vol_id - VOL id -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Registers a new VOL connector as a member of the virtual object layer class by name. +!! +!! \param name Connector name. +!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F. +!! \param hdferr \fortran_error +!! \param vipl_id VOL initialization property list identifier. +!! SUBROUTINE H5VLregister_connector_by_name_f(name, vol_id, hdferr, vipl_id) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(HID_T), INTENT(OUT) :: vol_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), OPTIONAL, INTENT(IN) :: vipl_id -!***** CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name INTEGER(HID_T) :: vipl_id_default @@ -93,14 +87,22 @@ CONTAINS IF(vol_id.LT.0) hdferr = H5I_INVALID_HID_F END SUBROUTINE H5VLregister_connector_by_name_f - +!> +!! \ingroup FH5V +!! +!! \brief Registers a new VOL connector by value. +!! +!! \param connector_value Connector value. +!! \param vol_id VOL connector identifier if successful; otherwise returns H5I_INVALID_HID_F. +!! \param hdferr \fortran_error +!! \param vipl_id VOL initialization property list identifier. +!! SUBROUTINE H5VLregister_connector_by_value_f(connector_value, vol_id, hdferr, vipl_id) IMPLICIT NONE INTEGER, INTENT(IN) :: connector_value INTEGER(HID_T), INTENT(OUT) :: vol_id INTEGER, INTENT(OUT) :: hdferr INTEGER(HID_T), OPTIONAL, INTENT(IN) :: vipl_id -!***** INTEGER(HID_T) :: vipl_id_default INTERFACE @@ -123,29 +125,20 @@ CONTAINS END SUBROUTINE H5VLregister_connector_by_value_f -! -!****s* H5VL/H5VLis_connector_registered_by_name_f -! -! NAME -! H5VLis_connector_registered_by_name_f -! -! PURPOSE -! Tests whether a VOL class has been registered or not -! according to a specified connector name. -! -! INPUTS -! name - Connector name -! OUTPUTS -! registered - state of VOL class registration -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Determines whether a VOL class has been registered or not ccording to a specified connector name. +!! +!! \param name Connector name. +!! \param registered State of VOL class registration. +!! \param hdferr \fortran_error +!! SUBROUTINE H5VLis_connector_registered_by_name_f(name, registered, hdferr) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name LOGICAL, INTENT(OUT) :: registered INTEGER, INTENT(OUT) :: hdferr -!***** CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name INTEGER(C_INT) :: registered_c @@ -167,29 +160,20 @@ CONTAINS END SUBROUTINE H5VLis_connector_registered_by_name_f -! -!****s* H5VL/H5VLis_connector_registered_by_value_f -! -! NAME -! H5VLis_connector_registered_by_value_f -! -! PURPOSE -! Tests whether a VOL class has been registered or not -! according to a specified connector value (ID). -! -! INPUTS -! value - Connector value -! OUTPUTS -! registered - state of VOL class registration -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Determines whether a VOL class has been registered or not according to a specified connector value (ID). +!! +!! \param value ConneConnector value. +!! \param registered State of VOL class registration. +!! \param hdferr Retu\fortran_error +!! SUBROUTINE H5VLis_connector_registered_by_value_f(value, registered, hdferr) IMPLICIT NONE INTEGER, INTENT(IN) :: value LOGICAL, INTENT(OUT) :: registered INTEGER, INTENT(OUT) :: hdferr -!***** INTEGER(C_INT) :: registered_c INTERFACE @@ -208,28 +192,20 @@ CONTAINS END SUBROUTINE H5VLis_connector_registered_by_value_f -! -!****s* H5VL/H5VLget_connector_id_f -! -! NAME -! H5VLget_connector_id_f -! -! PURPOSE -! Retrieves the ID for a registered VOL connector. -! -! INPUTS -! obj_id - Object id -! OUTPUTS -! vol_id - Connector id -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Retrieves the ID for a registered VOL connector. +!! +!! \param obj_id Object id. +!! \param vol_id Connector id. +!! \param hdferr \fortran_error +!! SUBROUTINE H5VLget_connector_id_f(obj_id, vol_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: obj_id INTEGER(HID_T), INTENT(OUT) :: vol_id INTEGER, INTENT(OUT) :: hdferr -!***** INTERFACE INTEGER(HID_T) FUNCTION H5VLget_connector_id(obj_id) BIND(C,NAME='H5VLget_connector_id') @@ -247,28 +223,20 @@ CONTAINS END SUBROUTINE H5VLget_connector_id_f -! -!****s* H5VL/H5VLget_connector_id_by_name_f -! -! NAME -! H5VLget_connector_id_by_name_f -! -! PURPOSE -! Retrieves the ID for a registered VOL connector. -! -! INPUTS -! name - Connector name -! OUTPUTS -! vol_id - Connector id -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Retrieves the ID for a registered VOL connector. +!! +!! \param name Connector name. +!! \param vol_id Connector id. +!! \param hdferr \fortran_error +!! SUBROUTINE H5VLget_connector_id_by_name_f(name, vol_id, hdferr) IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(HID_T), INTENT(OUT) :: vol_id INTEGER, INTENT(OUT) :: hdferr -!***** CHARACTER(LEN=LEN_TRIM(name)+1,KIND=C_CHAR) :: c_name INTERFACE @@ -290,28 +258,20 @@ CONTAINS END SUBROUTINE H5VLget_connector_id_by_name_f -! -!****s* H5VL/H5VLget_connector_id_by_value_f -! -! NAME -! H5VLget_connector_id_by_value_f -! -! PURPOSE -! Retrieves the ID for a registered VOL connector. -! -! INPUTS -! value - Connector value -! OUTPUTS -! vol_id - Connector id -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Retrieves the ID for a registered VOL connector. +!! +!! \param value CConnector value. +!! \param vol_id Connector id. +!! \param hdferr \fortran_error +!! SUBROUTINE H5VLget_connector_id_by_value_f(value, vol_id, hdferr) IMPLICIT NONE INTEGER, INTENT(IN) :: value INTEGER(HID_T), INTENT(OUT) :: vol_id INTEGER, INTENT(OUT) :: hdferr -!***** INTERFACE INTEGER(HID_T) FUNCTION H5VLget_connector_id_by_value(value) BIND(C,NAME='H5VLget_connector_id_by_value') IMPORT :: C_INT @@ -329,14 +289,22 @@ CONTAINS ENDIF END SUBROUTINE H5VLget_connector_id_by_value_f - +!> +!! \ingroup FH5V +!! +!! \brief Retrieves a connector name for a VOL. +!! +!! \param obj_id Object identifier or file identifier. +!! \param name Connector name. +!! \param hdferr \fortran_error +!! \param name_len Maximum length of the name to retrieve. +!! SUBROUTINE H5VLget_connector_name_f(obj_id, name, hdferr, name_len) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: obj_id CHARACTER(LEN=*), INTENT(OUT) :: name INTEGER, INTENT(OUT) :: hdferr INTEGER(SIZE_T), OPTIONAL :: name_len -!***** CHARACTER(LEN=1,KIND=C_CHAR), DIMENSION(1:LEN(name)+1), TARGET :: c_name INTEGER(SIZE_T) :: l @@ -346,7 +314,6 @@ CONTAINS IMPLICIT NONE INTEGER(HID_T) , INTENT(IN), VALUE :: obj_id CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(OUT) :: name - ! TYPE(C_PTR), value :: name INTEGER(SIZE_T), INTENT(IN), VALUE :: size END FUNCTION H5VLget_connector_name END INTERFACE @@ -367,28 +334,18 @@ CONTAINS END SUBROUTINE H5VLget_connector_name_f -! -! -!****s* H5VL/H5VLclose_f -! -! NAME -! H5VLclose_f -! -! PURPOSE -! Closes a VOL connector ID. -! -! INPUTS -! vol_id - A valid identifier of the connectory to unregister. -! -! OUTPUTS -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Closes a VOL connector ID. +!! +!! \param vol_id A valid identifier of the connectory to unregister. +!! \param hdferr \fortran_error +!! SUBROUTINE H5VLclose_f(vol_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: vol_id INTEGER, INTENT(OUT) :: hdferr -!***** INTERFACE INTEGER FUNCTION H5VLclose(vol_id) BIND(C, NAME='H5VLclose') @@ -401,27 +358,18 @@ CONTAINS END SUBROUTINE H5VLclose_f -! -!****s* H5VL/H5VLunregister_connector_f -! -! NAME -! H5VLunregister_connector_f -! -! PURPOSE -! Removes a VOL connector ID from the library. -! -! INPUTS -! plugin_id - A valid identifier of the connector to unregister. -! -! OUTPUTS -! hdferr - Returns 0 if successful and -1 if fails -! SOURCE - +!> +!! \ingroup FH5V +!! +!! \brief Removes a VOL connector ID from the library. +!! +!! \param plugin_id A valid identifier of the connector to unregister.. +!! \param hdferr Ret\fortran_error +!! SUBROUTINE H5VLunregister_connector_f(plugin_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: plugin_id INTEGER, INTENT(OUT) :: hdferr -!***** INTERFACE INTEGER FUNCTION H5VLunregister_connector(plugin_id) BIND(C, NAME='H5VLunregister_connector') |