Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ESMF_Config), | intent(inout) | :: | config | |||
character(len=1), | intent(out) | :: | value | |||
type(ESMF_KeywordEnforcer), | optional | :: | keywordEnforcer | |||
character(len=*), | intent(in), | optional | :: | label | ||
character(len=1), | intent(in), | optional | :: | default | ||
integer, | intent(out), | optional | :: | rc |
subroutine ESMF_ConfigGetChar(config, value, & keywordEnforcer, label, default, rc) ! !ARGUMENTS: type(ESMF_Config), intent(inout) :: config character, intent(out) :: value type(ESMF_KeywordEnforcer), optional:: keywordEnforcer ! must use keywords below character(len=*), intent(in), optional :: label character, intent(in), optional :: default integer, intent(out), optional :: rc ! ! ! !STATUS: ! \begin{itemize} ! \item\apiStatusCompatibleVersion{5.2.0r} ! \end{itemize} ! ! !DESCRIPTION: ! Gets a character {\tt value} from the {\tt config} object. ! ! The arguments are: ! \begin{description} ! \item [config] ! Already created {\tt ESMF\_Config} object. ! \item [value] ! Returned value. ! \item [{[label]}] ! Identifying label. ! \item [{[default]}] ! Default value if label is not found in configuration object. ! \item [{[rc]}] ! Return code; equals {\tt ESMF\_SUCCESS} if there are no errors. ! \end{description} ! ! !EOP ------------------------------------------------------------------- character(len=NBUF_MAX) :: string integer :: localrc ! Initialize return code; assume routine not implemented if (present(rc)) rc = ESMF_RC_NOT_IMPL localrc = ESMF_SUCCESS !check variables ESMF_INIT_CHECK_DEEP(ESMF_ConfigGetInit,config,rc) ! Default setting if( present( default ) ) then value = default else value = BLK endif ! Processing if (present (label ) ) then call ESMF_ConfigGetString( config, string, label=label, rc=localrc) else call ESMF_ConfigGetString( config, string, rc = localrc ) endif if ( localrc == ESMF_SUCCESS ) then value = string(1:1) call ESMF_ConfigSetCurrentAttrUsed(config, used=.true.) else if( present( default )) then localrc = ESMF_SUCCESS endif end if if (present( rc )) then rc = localrc endif end subroutine ESMF_ConfigGetChar