Commit abca9921 authored by Graham, Aaron's avatar Graham, Aaron
Browse files

Allows bool attributes to be written to and read from in HDF5

vera/vera-dev#3638
parent 3e3e7edf
...@@ -454,9 +454,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType ...@@ -454,9 +454,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType
!> @copybrief FileType_HDF5::write_attribute_d0 !> @copybrief FileType_HDF5::write_attribute_d0
!> @copydoc FileType_HDF5_write_attribute_d0 !> @copydoc FileType_HDF5_write_attribute_d0
PROCEDURE,PASS,PRIVATE :: write_attribute_d0 PROCEDURE,PASS,PRIVATE :: write_attribute_d0
!> @copybrief FileType_HDF5::write_attribute_b0
!> @copydoc FileType_HDF5_write_attribute_b0
PROCEDURE,PASS,PRIVATE :: write_attribute_b0
!> Generic typebound interface for all @c attribute writes !> Generic typebound interface for all @c attribute writes
GENERIC :: write_attribute => write_attribute_st0, write_attribute_c0,& GENERIC :: write_attribute => write_attribute_st0, write_attribute_c0,&
write_attribute_i0, write_attribute_d0 write_attribute_i0, write_attribute_d0,write_attribute_b0
!> @copybrief FileType_HDF5::read_str_attribure_help !> @copybrief FileType_HDF5::read_str_attribure_help
!> @copydoc FileType_HDF5_read_str_attribure_help !> @copydoc FileType_HDF5_read_str_attribure_help
PROCEDURE,PASS,PRIVATE :: read_attribute_st0 PROCEDURE,PASS,PRIVATE :: read_attribute_st0
...@@ -469,9 +472,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType ...@@ -469,9 +472,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType
!> @copybrief FileType_HDF5::read_attribute_d0 !> @copybrief FileType_HDF5::read_attribute_d0
!> @copydoc FileType_HDF5_read_attribute_d0 !> @copydoc FileType_HDF5_read_attribute_d0
PROCEDURE,PASS,PRIVATE :: read_attribute_d0 PROCEDURE,PASS,PRIVATE :: read_attribute_d0
!> @copybrief FileType_HDF5::read_attribute_b0
!> @copydoc FileType_HDF5_read_attribute_b0
PROCEDURE,PASS,PRIVATE :: read_attribute_b0
!> Generic typebound interface for all @c attribute writes !> Generic typebound interface for all @c attribute writes
GENERIC :: read_attribute => read_attribute_st0, read_attribute_c0,& GENERIC :: read_attribute => read_attribute_st0, read_attribute_c0,&
read_attribute_i0, read_attribute_d0 read_attribute_i0, read_attribute_d0,read_attribute_b0
!> @copybrief FileType_HDF5::getDataShape !> @copybrief FileType_HDF5::getDataShape
!> @copydoc FileType_HDF5::getDataShape !> @copydoc FileType_HDF5::getDataShape
PROCEDURE,PASS :: getDataShape PROCEDURE,PASS :: getDataShape
...@@ -7203,6 +7209,45 @@ SUBROUTINE write_attribute_d0(this,obj_name,attr_name,attr_val) ...@@ -7203,6 +7209,45 @@ SUBROUTINE write_attribute_d0(this,obj_name,attr_name,attr_val)
ENDSUBROUTINE write_attribute_d0 ENDSUBROUTINE write_attribute_d0
! !
!------------------------------------------------------------------------------- !-------------------------------------------------------------------------------
!> @brief Writes an attribute name and logical value to a known dataset
!>
!> @param obj_name the relative path to the dataset
!> @param attr_name the desired name of the attribute
!> @param attr_value the desired value of the attrbute
!>
SUBROUTINE write_attribute_b0(this,obj_name,attr_name,attr_val)
CLASS(HDF5FileType),INTENT(INOUT) :: this
CHARACTER(LEN=*),INTENT(IN) :: obj_name, attr_name
LOGICAL(SBK),INTENT(IN) :: attr_val
#ifdef FUTILITY_HAVE_HDF5
CHARACTER :: char_attr_val
INTEGER :: num_dims
INTEGER(HID_T) :: attr_id, dspace_id, obj_id
INTEGER(HSIZE_T),DIMENSION(1) :: dims
num_dims=1
dims(1)=1
!Prepare the File and object for the attribute
CALL open_object(this,obj_name,obj_id)
!Create the data space for memory type and size
CALL h5screate_simple_f(num_dims,dims,dspace_id,error)
!Create and write to the attribute within the dataspce
char_attr_val = MERGE('T','F',attr_val)
CALL createAttribute(this,obj_id,attr_name,H5T_NATIVE_CHARACTER,&
dspace_id,attr_id)
CALL h5awrite_f(attr_id,H5T_NATIVE_CHARACTER,char_attr_val,dims,error)
CALL h5sclose_f(dspace_id,error)
CALL close_attribute(this,attr_id)
CALL close_object(this,obj_id)
#endif
ENDSUBROUTINE write_attribute_b0
!
!-------------------------------------------------------------------------------
!> @brief Set-up to read a string value attribute from a known dataset !> @brief Set-up to read a string value attribute from a known dataset
!> !>
!> @param obj_name the relative path to the dataset !> @param obj_name the relative path to the dataset
...@@ -7341,6 +7386,49 @@ SUBROUTINE read_attribute_d0(this,obj_name,attr_name,attr_val) ...@@ -7341,6 +7386,49 @@ SUBROUTINE read_attribute_d0(this,obj_name,attr_name,attr_val)
ENDSUBROUTINE read_attribute_d0 ENDSUBROUTINE read_attribute_d0
! !
!------------------------------------------------------------------------------- !-------------------------------------------------------------------------------
!> @brief Reads a logical value attribute from a known dataset
!>
!> @param obj_name the relative path to the dataset
!> @param attr_name the desired name of the attribute
!> @param attr_value the desired value of the attrbute
!>
SUBROUTINE read_attribute_b0(this,obj_name,attr_name,attr_val)
CLASS(HDF5FileType),INTENT(INOUT) :: this
CHARACTER(LEN=*),INTENT(IN) :: obj_name, attr_name
LOGICAL(SBK),INTENT(INOUT) :: attr_val
#ifdef FUTILITY_HAVE_HDF5
CHARACTER :: char_attr_val
CHARACTER(LEN=*),PARAMETER :: myName='read_attribute_b0'
INTEGER(HID_T) :: attr_id, obj_id
INTEGER(HSIZE_T),DIMENSION(1) :: dims
dims(1)=1
!Prepare the File and object for the attribute
CALL open_object(this,obj_name,obj_id)
CALL open_attribute(this,obj_id,attr_name,attr_id)
CALL h5aread_f(attr_id,H5T_NATIVE_CHARACTER,char_attr_val,dims,error)
IF(error /= 0) THEN
CALL this%e%raiseError(modName//'::'//myName// &
' - Failed to read attribute.')
RETURN
ENDIF
IF(char_attr_val == 'T') THEN
attr_val=.TRUE.
ELSEIF(char_attr_val == 'F') THEN
attr_val=.FALSE.
ELSE
CALL this%e%raiseError(modName//'::'//myName//' - Character "'// &
char_attr_val//'" is being read as a logical, which is not supported!')
ENDIF
CALL close_attribute(this,attr_id)
CALL close_object(this,obj_id)
#endif
ENDSUBROUTINE read_attribute_b0
!
!-------------------------------------------------------------------------------
!> @brief Sets up all attribute operations by checking links and opening object` !> @brief Sets up all attribute operations by checking links and opening object`
!> !>
!> @param obj_name the relative path to the dataset !> @param obj_name the relative path to the dataset
......
...@@ -5941,7 +5941,7 @@ SUBROUTINE set_ParamType_List(thisParam,name,paramlist,description,addMissing) ...@@ -5941,7 +5941,7 @@ SUBROUTINE set_ParamType_List(thisParam,name,paramlist,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be TYPE(ParamType_List)!') p%dataType//' and must be TYPE(ParamType_List)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,paramlist,description) CALL thisParam%add(name,paramlist,description)
...@@ -6014,7 +6014,7 @@ SUBROUTINE get_ParamType_List(thisParam,name,paramlist) ...@@ -6014,7 +6014,7 @@ SUBROUTINE get_ParamType_List(thisParam,name,paramlist)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be TYPE(ParamType_List)!') p%dataType//' and must be TYPE(ParamType_List)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -6228,7 +6228,7 @@ SUBROUTINE set_ParamType_SSK(thisParam,name,param,description,addMissing) ...@@ -6228,7 +6228,7 @@ SUBROUTINE set_ParamType_SSK(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be REAL(SSK)!') p%dataType//' and must be REAL(SSK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -6278,7 +6278,7 @@ SUBROUTINE get_ParamType_SSK(thisParam,name,val) ...@@ -6278,7 +6278,7 @@ SUBROUTINE get_ParamType_SSK(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be REAL(SSK)!') p%dataType//' and must be REAL(SSK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -6493,7 +6493,7 @@ SUBROUTINE set_ParamType_SDK(thisParam,name,param,description,addMissing) ...@@ -6493,7 +6493,7 @@ SUBROUTINE set_ParamType_SDK(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be REAL(SDK)!') p%dataType//' and must be REAL(SDK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -6543,7 +6543,7 @@ SUBROUTINE get_ParamType_SDK(thisParam,name,val) ...@@ -6543,7 +6543,7 @@ SUBROUTINE get_ParamType_SDK(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be REAL(SDK)!') p%dataType//' and must be REAL(SDK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -6758,7 +6758,7 @@ SUBROUTINE set_ParamType_SNK(thisParam,name,param,description,addMissing) ...@@ -6758,7 +6758,7 @@ SUBROUTINE set_ParamType_SNK(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be INTEGER(SNK)!') p%dataType//' and must be INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -6808,7 +6808,7 @@ SUBROUTINE get_ParamType_SNK(thisParam,name,val) ...@@ -6808,7 +6808,7 @@ SUBROUTINE get_ParamType_SNK(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be INTEGER(SNK)!') p%dataType//' and must be INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -7019,7 +7019,7 @@ SUBROUTINE set_ParamType_SLK(thisParam,name,param,description,addMissing) ...@@ -7019,7 +7019,7 @@ SUBROUTINE set_ParamType_SLK(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be INTEGER(SLK)!') p%dataType//' and must be INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -7069,7 +7069,7 @@ SUBROUTINE get_ParamType_SLK(thisParam,name,val) ...@@ -7069,7 +7069,7 @@ SUBROUTINE get_ParamType_SLK(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be INTEGER(SLK)!') p%dataType//' and must be INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -7280,7 +7280,7 @@ SUBROUTINE set_ParamType_SBK(thisParam,name,param,description,addMissing) ...@@ -7280,7 +7280,7 @@ SUBROUTINE set_ParamType_SBK(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be LOGICAL(SBK)!') p%dataType//' and must be LOGICAL(SBK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -7330,7 +7330,7 @@ SUBROUTINE get_ParamType_SBK(thisParam,name,val) ...@@ -7330,7 +7330,7 @@ SUBROUTINE get_ParamType_SBK(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be LOGICAL(SBK)!') p%dataType//' and must be LOGICAL(SBK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -7534,7 +7534,7 @@ SUBROUTINE set_ParamType_STR(thisParam,name,param,description,addMissing) ...@@ -7534,7 +7534,7 @@ SUBROUTINE set_ParamType_STR(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be TYPE(StringType)!') p%dataType//' and must be TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -7584,7 +7584,7 @@ SUBROUTINE get_ParamType_STR(thisParam,name,val) ...@@ -7584,7 +7584,7 @@ SUBROUTINE get_ParamType_STR(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be TYPE(StringType)!') p%dataType//' and must be TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -7908,7 +7908,7 @@ SUBROUTINE set_ParamType_SSK_a1(thisParam,name,param,description,addMissing) ...@@ -7908,7 +7908,7 @@ SUBROUTINE set_ParamType_SSK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY REAL(SSK)!') p%dataType//' and must be 1-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -7958,7 +7958,7 @@ SUBROUTINE get_ParamType_SSK_a1(thisParam,name,val) ...@@ -7958,7 +7958,7 @@ SUBROUTINE get_ParamType_SSK_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY REAL(SSK)!') p%dataType//' and must be 1-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -8191,7 +8191,7 @@ SUBROUTINE set_ParamType_SDK_a1(thisParam,name,param,description,addMissing) ...@@ -8191,7 +8191,7 @@ SUBROUTINE set_ParamType_SDK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY REAL(SDK)!') p%dataType//' and must be 1-D ARRAY REAL(SDK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -8241,7 +8241,7 @@ SUBROUTINE get_ParamType_SDK_a1(thisParam,name,val) ...@@ -8241,7 +8241,7 @@ SUBROUTINE get_ParamType_SDK_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY REAL(SDK)!') p%dataType//' and must be 1-D ARRAY REAL(SDK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -8472,7 +8472,7 @@ SUBROUTINE set_ParamType_SNK_a1(thisParam,name,param,description,addMissing) ...@@ -8472,7 +8472,7 @@ SUBROUTINE set_ParamType_SNK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY INTEGER(SNK)!') p%dataType//' and must be 1-D ARRAY INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -8522,7 +8522,7 @@ SUBROUTINE get_ParamType_SNK_a1(thisParam,name,val) ...@@ -8522,7 +8522,7 @@ SUBROUTINE get_ParamType_SNK_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY INTEGER(SNK)!') p%dataType//' and must be 1-D ARRAY INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -8754,7 +8754,7 @@ SUBROUTINE set_ParamType_SLK_a1(thisParam,name,param,description,addMissing) ...@@ -8754,7 +8754,7 @@ SUBROUTINE set_ParamType_SLK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY INTEGER(SLK)!') p%dataType//' and must be 1-D ARRAY INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -8804,7 +8804,7 @@ SUBROUTINE get_ParamType_SLK_a1(thisParam,name,val) ...@@ -8804,7 +8804,7 @@ SUBROUTINE get_ParamType_SLK_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY INTEGER(SLK)!') p%dataType//' and must be 1-D ARRAY INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -9033,7 +9033,7 @@ SUBROUTINE set_ParamType_SBK_a1(thisParam,name,param,description,addMissing) ...@@ -9033,7 +9033,7 @@ SUBROUTINE set_ParamType_SBK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY LOGICAL(SBK)!') p%dataType//' and must be 1-D ARRAY LOGICAL(SBK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -9083,7 +9083,7 @@ SUBROUTINE get_ParamType_SBK_a1(thisParam,name,val) ...@@ -9083,7 +9083,7 @@ SUBROUTINE get_ParamType_SBK_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY LOGICAL(SBK)!') p%dataType//' and must be 1-D ARRAY LOGICAL(SBK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -9319,7 +9319,7 @@ SUBROUTINE set_ParamType_STR_a1(thisParam,name,param,description,addMissing) ...@@ -9319,7 +9319,7 @@ SUBROUTINE set_ParamType_STR_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY TYPE(StringType)!') p%dataType//' and must be 1-D ARRAY TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -9369,7 +9369,7 @@ SUBROUTINE get_ParamType_STR_a1(thisParam,name,val) ...@@ -9369,7 +9369,7 @@ SUBROUTINE get_ParamType_STR_a1(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 1-D ARRAY TYPE(StringType)!') p%dataType//' and must be 1-D ARRAY TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -9595,7 +9595,7 @@ SUBROUTINE set_ParamType_SSK_a2(thisParam,name,param,description,addMissing) ...@@ -9595,7 +9595,7 @@ SUBROUTINE set_ParamType_SSK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY REAL(SSK)!') p%dataType//' and must be 2-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -9645,7 +9645,7 @@ SUBROUTINE get_ParamType_SSK_a2(thisParam,name,val) ...@@ -9645,7 +9645,7 @@ SUBROUTINE get_ParamType_SSK_a2(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY REAL(SSK)!') p%dataType//' and must be 2-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -9866,7 +9866,7 @@ SUBROUTINE set_ParamType_SDK_a2(thisParam,name,param,description,addMissing) ...@@ -9866,7 +9866,7 @@ SUBROUTINE set_ParamType_SDK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY REAL(SDK)!') p%dataType//' and must be 2-D ARRAY REAL(SDK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -9916,7 +9916,7 @@ SUBROUTINE get_ParamType_SDK_a2(thisParam,name,val) ...@@ -9916,7 +9916,7 @@ SUBROUTINE get_ParamType_SDK_a2(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY REAL(SDK)!') p%dataType//' and must be 2-D ARRAY REAL(SDK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -10137,7 +10137,7 @@ SUBROUTINE set_ParamType_SNK_a2(thisParam,name,param,description,addMissing) ...@@ -10137,7 +10137,7 @@ SUBROUTINE set_ParamType_SNK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY INTEGER(SNK)!') p%dataType//' and must be 2-D ARRAY INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -10187,7 +10187,7 @@ SUBROUTINE get_ParamType_SNK_a2(thisParam,name,val) ...@@ -10187,7 +10187,7 @@ SUBROUTINE get_ParamType_SNK_a2(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY INTEGER(SNK)!') p%dataType//' and must be 2-D ARRAY INTEGER(SNK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -10408,7 +10408,7 @@ SUBROUTINE set_ParamType_SLK_a2(thisParam,name,param,description,addMissing) ...@@ -10408,7 +10408,7 @@ SUBROUTINE set_ParamType_SLK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY INTEGER(SLK)!') p%dataType//' and must be 2-D ARRAY INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -10458,7 +10458,7 @@ SUBROUTINE get_ParamType_SLK_a2(thisParam,name,val) ...@@ -10458,7 +10458,7 @@ SUBROUTINE get_ParamType_SLK_a2(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY INTEGER(SLK)!') p%dataType//' and must be 2-D ARRAY INTEGER(SLK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -10682,7 +10682,7 @@ SUBROUTINE set_ParamType_STR_a2(thisParam,name,param,description,addMissing) ...@@ -10682,7 +10682,7 @@ SUBROUTINE set_ParamType_STR_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY TYPE(StringType)!') p%dataType//' and must be 2-D ARRAY TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -10732,7 +10732,7 @@ SUBROUTINE get_ParamType_STR_a2(thisParam,name,val) ...@@ -10732,7 +10732,7 @@ SUBROUTINE get_ParamType_STR_a2(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 2-D ARRAY TYPE(StringType)!') p%dataType//' and must be 2-D ARRAY TYPE(StringType)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
...@@ -10959,7 +10959,7 @@ SUBROUTINE set_ParamType_SSK_a3(thisParam,name,param,description,addMissing) ...@@ -10959,7 +10959,7 @@ SUBROUTINE set_ParamType_SSK_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 3-D ARRAY REAL(SSK)!') p%dataType//' and must be 3-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSEIF(lAddMissing) THEN ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description) CALL thisParam%add(name,param,description)
...@@ -11009,7 +11009,7 @@ SUBROUTINE get_ParamType_SSK_a3(thisParam,name,val) ...@@ -11009,7 +11009,7 @@ SUBROUTINE get_ParamType_SSK_a3(thisParam,name,val)
CLASS DEFAULT CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// & CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// & ' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam%dataType//' and must be 3-D ARRAY REAL(SSK)!') p%dataType//' and must be 3-D ARRAY REAL(SSK)!')
ENDSELECT ENDSELECT
ELSE ELSE
CALL eParams%raiseError(modName//'::'//myName// &