This page includes information on:
HDF5 Fortran Datatypes
HDF5 Fortran datatypes are listed in HDF5 Predefined Datatypes.
HDF5 Fortran Flags
HDF5 Fortran flags have the same meanings as the C flags defined in the HDF5 Reference Manual and HDF5 User's Guide - Old.
File access flags
H5F_ACC_RDWR_F H5F_ACC_RDONLY_F H5F_ACC_TRUNC_F | H5F_ACC_EXCL_F H5F_ACC_DEBUG_F | H5F_SCOPE_LOCAL_F H5F_SCOPE_GLOBAL_F |
Group management flags
H5G_UNKNOWN_F H5G_LINK_F H5G_GROUP_F | H5G_DATASET_F H5G_TYPE_F H5G_LINK_ERROR_F | H5G_LINK_HARD_F H5G_LINK_SOFT_F |
Dataset format flags
H5D_COMPACT_F | H5D_CONTIGUOUS_F | H5D_CHUNKED_F |
MPI IO data transfer flags
H5FD_MPIO_INDEPENDENT_F | H5FD_MPIO_COLLECTIVE_F |
Error flags
H5E_NONE_MAJOR_F H5E_ARGS_F H5E_RESOURCE_F H5E_INTERNAL_F H5E_FILE_F H5E_IO_F H5E_FUNC_F H5E_ATOM_F | H5E_CACHE_F H5E_BTREE_F H5E_SYM_F H5E_HEAP_F H5E_OHDR_F H5E_DATATYPE_F H5E_DATASPACE_F H5E_DATASET_F | H5E_STORAGE_F H5E_PLIST_F H5E_ATTR_F H5E_PLINE_F H5E_EFL_F H5E_REFERENCE_F H5E_VFL_F H5E_TBBT_F |
Object identifier flags
H5I_FILE_F H5I_GROUP_F H5I_DATATYPE_F | H5I_DATASPACE_F H5I_DATASET_F H5I_ATTR_F | H5I_BADID_F |
Property list flags
H5P_FILE_CREATE_F H5P_FILE_ACCESS_F | H5P_DATASET_CREATE_F H5P_DATASET_XFER_F | H5P_MOUNT_F H5P_DEFAULT_F |
Reference pointer flags
H5R_OBJECT_F | H5R_DATASET_REGION_F |
Dataspace flags
H5S_SCALAR_F H5S_SIMPLE_F | H5S_SELECT_SET_F H5S_SELECT_OR_F | H5S_UNLIMITED_F H5S_ALL_F |
Datatype flags
H5T_NO_CLASS_F H5T_INTEGER_F H5T_FLOAT_F H5T_TIME_F H5T_STRING_F H5T_BITFIELD_F H5T_OPAQUE_F H5T_COMPOUND_F H5T_REFERENCE_F H5T_ENUM_F | H5T_ORDER_LE_F H5T_ORDER_BE_F H5T_ORDER_VAX_F H5T_PAD_ZERO_F H5T_PAD_ONE_F H5T_PAD_BACKGROUND_F H5T_PAD_ERROR_F H5T_SGN_NONE_F H5T_SGN_2_F H5T_SGN_ERROR_F | H5T_NORM_IMPLIED_F H5T_NORM_MSBSET_F H5T_NORM_NONE_F H5T_CSET_ASCII_F H5T_CSET_UTF8_F H5T_STR_NULLTERM_F H5T_STR_NULLPAD_F H5T_STR_SPACEPAD_F H5T_STR_ERROR_F |
HDF5 Fortran Required Calls
HDF5 Fortran applications must begin and end, respectively, with the subroutines described below. h5open_f
initializes the HDF5 Fortran interface, providing the application with access to the HDF5 library. h5close_f
closes the HDF5 Fortran interface without closing the HDF5 library, thereby leaving HDF5 available to other software that may require that resource.
h5open_f
SUBROUTINE h5open_f(error) INTEGER, INTENT(OUT) :: error
Outputs:
error - Returns 0 if successful and -1 if fails
h5close_f
SUBROUTINE h5close_f(error) INTEGER, INTENT(OUT) :: error
Outputs:
error - Returns 0 if successful and -1 if fails
HDF5 Fortran Utility Functions
The HDF5 Fortran library offers the following utility functions to facilitate the development of HDF5 Fortran applications.h5offsetof
is available only in Fortran 2003 environments; h5kind_to_type
and h5gmtime
are available in any Fortran environment:
h5offsetof
FUNCTION h5offsetof(start,end) RESULT(offset) USE, INTRINSIC :: ISO_C_BINDING USE H5GLOBAL IMPLICIT NONE INTEGER(SIZE_T) :: offset TYPE(C_PTR), VALUE, INTENT(IN) :: start, end
Inputs:
start - starting pointer address end - ending pointer address
Outputs:
offset - offset
h5kind_to_type
INTEGER(HID_T) FUNCTION h5kind_to_type(kind, flag) RESULT(h5_type) INTEGER, INTENT(IN) :: kind INTEGER, INTENT(IN) :: flag
Inputs:
kind - Fortran KIND parameter flag - Whether KIND is of type INTEGER or REAL: H5_INTEGER_KIND - integer H5_REAL_KIND - real
Outputs:
h5_type - Returns the type
h5gmtime
Purpose:
Convert time_t structure (C) to Fortran DATE AND TIME storage format.
Signature:
FUNCTION h5gmtime(stdtime_t)
INTEGER(KIND=TIME_T), INTENT(IN) :: stdtime_t
INTEGER, DIMENSION(1:8) :: h5gmtime
Inputs:
stdtime_t - Object of type time_t that contains a time value
Outputs:
datetime - A date/time array using Fortran conventions:
datetime(1) = year
datetime(2) = month
datetime(3) = day
datetime(4) = 0 ! time is expressed as UTC (or GMT timezone) */
datetime(5) = hour
datetime(6) = minute
datetime(7) = second
datetime(8) = millisecond -- not available, assigned - HUGE(0)
--- Last Modified: February 22, 2019 | 10:30 AM