Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Futility
Futility
Commits
abca9921
Commit
abca9921
authored
Sep 02, 2021
by
Graham, Aaron
Browse files
Allows bool attributes to be written to and read from in HDF5
vera/vera-dev#3638
parent
3e3e7edf
Changes
2
Show whitespace changes
Inline
Side-by-side
src/FileType_HDF5.f90
View file @
abca9921
...
...
@@ -454,9 +454,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType
!> @copybrief FileType_HDF5::write_attribute_d0
!> @copydoc FileType_HDF5_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
::
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
!> @copydoc FileType_HDF5_read_str_attribure_help
PROCEDURE
,
PASS
,
PRIVATE
::
read_attribute_st0
...
...
@@ -469,9 +472,12 @@ TYPE,EXTENDS(BaseFileType) :: HDF5FileType
!> @copybrief FileType_HDF5::read_attribute_d0
!> @copydoc FileType_HDF5_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
::
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
!> @copydoc FileType_HDF5::getDataShape
PROCEDURE
,
PASS
::
getDataShape
...
...
@@ -7203,6 +7209,45 @@ SUBROUTINE write_attribute_d0(this,obj_name,attr_name,attr_val)
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
!>
!> @param obj_name the relative path to the dataset
...
...
@@ -7341,6 +7386,49 @@ SUBROUTINE read_attribute_d0(this,obj_name,attr_name,attr_val)
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`
!>
!> @param obj_name the relative path to the dataset
...
...
src/ParameterLists.f90
View file @
abca9921
...
...
@@ -5941,7 +5941,7 @@ SUBROUTINE set_ParamType_List(thisParam,name,paramlist,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,paramlist,description)
...
...
@@ -6014,7 +6014,7 @@ SUBROUTINE get_ParamType_List(thisParam,name,paramlist)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -6228,7 +6228,7 @@ SUBROUTINE set_ParamType_SSK(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be REAL(SSK)!')
p
%dataType//' and must be REAL(SSK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -6278,7 +6278,7 @@ SUBROUTINE get_ParamType_SSK(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be REAL(SSK)!')
p
%dataType//' and must be REAL(SSK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -6493,7 +6493,7 @@ SUBROUTINE set_ParamType_SDK(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be REAL(SDK)!')
p
%dataType//' and must be REAL(SDK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -6543,7 +6543,7 @@ SUBROUTINE get_ParamType_SDK(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be REAL(SDK)!')
p
%dataType//' and must be REAL(SDK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -6758,7 +6758,7 @@ SUBROUTINE set_ParamType_SNK(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be INTEGER(SNK)!')
p
%dataType//' and must be INTEGER(SNK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -6808,7 +6808,7 @@ SUBROUTINE get_ParamType_SNK(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be INTEGER(SNK)!')
p
%dataType//' and must be INTEGER(SNK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -7019,7 +7019,7 @@ SUBROUTINE set_ParamType_SLK(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be INTEGER(SLK)!')
p
%dataType//' and must be INTEGER(SLK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -7069,7 +7069,7 @@ SUBROUTINE get_ParamType_SLK(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be INTEGER(SLK)!')
p
%dataType//' and must be INTEGER(SLK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -7280,7 +7280,7 @@ SUBROUTINE set_ParamType_SBK(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be LOGICAL(SBK)!')
p
%dataType//' and must be LOGICAL(SBK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -7330,7 +7330,7 @@ SUBROUTINE get_ParamType_SBK(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be LOGICAL(SBK)!')
p
%dataType//' and must be LOGICAL(SBK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -7534,7 +7534,7 @@ SUBROUTINE set_ParamType_STR(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be TYPE(StringType)!')
p
%dataType//' and must be TYPE(StringType)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -7584,7 +7584,7 @@ SUBROUTINE get_ParamType_STR(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be TYPE(StringType)!')
p
%dataType//' and must be TYPE(StringType)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -7908,7 +7908,7 @@ SUBROUTINE set_ParamType_SSK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -7958,7 +7958,7 @@ SUBROUTINE get_ParamType_SSK_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -8191,7 +8191,7 @@ SUBROUTINE set_ParamType_SDK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -8241,7 +8241,7 @@ SUBROUTINE get_ParamType_SDK_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -8472,7 +8472,7 @@ SUBROUTINE set_ParamType_SNK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -8522,7 +8522,7 @@ SUBROUTINE get_ParamType_SNK_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -8754,7 +8754,7 @@ SUBROUTINE set_ParamType_SLK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -8804,7 +8804,7 @@ SUBROUTINE get_ParamType_SLK_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -9033,7 +9033,7 @@ SUBROUTINE set_ParamType_SBK_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -9083,7 +9083,7 @@ SUBROUTINE get_ParamType_SBK_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -9319,7 +9319,7 @@ SUBROUTINE set_ParamType_STR_a1(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -9369,7 +9369,7 @@ SUBROUTINE get_ParamType_STR_a1(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -9595,7 +9595,7 @@ SUBROUTINE set_ParamType_SSK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -9645,7 +9645,7 @@ SUBROUTINE get_ParamType_SSK_a2(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -9866,7 +9866,7 @@ SUBROUTINE set_ParamType_SDK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -9916,7 +9916,7 @@ SUBROUTINE get_ParamType_SDK_a2(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -10137,7 +10137,7 @@ SUBROUTINE set_ParamType_SNK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -10187,7 +10187,7 @@ SUBROUTINE get_ParamType_SNK_a2(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -10408,7 +10408,7 @@ SUBROUTINE set_ParamType_SLK_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -10458,7 +10458,7 @@ SUBROUTINE get_ParamType_SLK_a2(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -10682,7 +10682,7 @@ SUBROUTINE set_ParamType_STR_a2(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -10732,7 +10732,7 @@ SUBROUTINE get_ParamType_STR_a2(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -10959,7 +10959,7 @@ SUBROUTINE set_ParamType_SSK_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -11009,7 +11009,7 @@ SUBROUTINE get_ParamType_SSK_a3(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - 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
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -11231,7 +11231,7 @@ SUBROUTINE set_ParamType_SDK_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 3-D ARRAY REAL(SDK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -11281,7 +11281,7 @@ SUBROUTINE get_ParamType_SDK_a3(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 3-D ARRAY REAL(SDK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -11503,7 +11503,7 @@ SUBROUTINE set_ParamType_SNK_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 3-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -11553,7 +11553,7 @@ SUBROUTINE get_ParamType_SNK_a3(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 3-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -11775,7 +11775,7 @@ SUBROUTINE set_ParamType_SLK_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 3-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -11825,7 +11825,7 @@ SUBROUTINE get_ParamType_SLK_a3(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 3-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -12053,7 +12053,7 @@ SUBROUTINE set_ParamType_STR_a3(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY TYPE(StringType)!')
p
%dataType//' and must be 3-D ARRAY TYPE(StringType)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -12103,7 +12103,7 @@ SUBROUTINE get_ParamType_STR_a3(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 3-D ARRAY TYPE(StringType)!')
p
%dataType//' and must be 3-D ARRAY TYPE(StringType)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -12332,7 +12332,7 @@ SUBROUTINE set_ParamType_SSK_a4(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY REAL(SSK)!')
p
%dataType//' and must be 4-D ARRAY REAL(SSK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -12382,7 +12382,7 @@ SUBROUTINE get_ParamType_SSK_a4(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY REAL(SSK)!')
p
%dataType//' and must be 4-D ARRAY REAL(SSK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -12606,7 +12606,7 @@ SUBROUTINE set_ParamType_SDK_a4(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 4-D ARRAY REAL(SDK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -12656,7 +12656,7 @@ SUBROUTINE get_ParamType_SDK_a4(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 4-D ARRAY REAL(SDK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -12880,7 +12880,7 @@ SUBROUTINE set_ParamType_SNK_a4(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 4-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -12930,7 +12930,7 @@ SUBROUTINE get_ParamType_SNK_a4(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 4-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -13154,7 +13154,7 @@ SUBROUTINE set_ParamType_SLK_a4(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 4-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -13204,7 +13204,7 @@ SUBROUTINE get_ParamType_SLK_a4(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 4-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 4-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -13436,7 +13436,7 @@ SUBROUTINE set_ParamType_SSK_a5(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY REAL(SSK)!')
p
%dataType//' and must be 5-D ARRAY REAL(SSK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -13486,7 +13486,7 @@ SUBROUTINE get_ParamType_SSK_a5(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY REAL(SSK)!')
p
%dataType//' and must be 5-D ARRAY REAL(SSK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -13712,7 +13712,7 @@ SUBROUTINE set_ParamType_SDK_a5(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 5-D ARRAY REAL(SDK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -13762,7 +13762,7 @@ SUBROUTINE get_ParamType_SDK_a5(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY REAL(SDK)!')
p
%dataType//' and must be 5-D ARRAY REAL(SDK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -13988,7 +13988,7 @@ SUBROUTINE set_ParamType_SNK_a5(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 5-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -14038,7 +14038,7 @@ SUBROUTINE get_ParamType_SNK_a5(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY INTEGER(SNK)!')
p
%dataType//' and must be 5-D ARRAY INTEGER(SNK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -14264,7 +14264,7 @@ SUBROUTINE set_ParamType_SLK_a5(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 5-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSEIF(lAddMissing) THEN
CALL thisParam%add(name,param,description)
...
...
@@ -14314,7 +14314,7 @@ SUBROUTINE get_ParamType_SLK_a5(thisParam,name,val)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 5-D ARRAY INTEGER(SLK)!')
p
%dataType//' and must be 5-D ARRAY INTEGER(SLK)!')
ENDSELECT
ELSE
CALL eParams%raiseError(modName//'::'//myName// &
...
...
@@ -14549,7 +14549,7 @@ SUBROUTINE set_ParamType_SSK_a6(thisParam,name,param,description,addMissing)
CLASS DEFAULT
CALL eParams%raiseError(modName//'::'//myName// &
' - parameter data type mismatch! Parameter '//TRIM(name)//' type is '// &
tmpParam
%dataType//' and must be 6-D ARRAY REAL(SSK)!')