ESMF_InfoFormatKey Subroutine

public subroutine ESMF_InfoFormatKey(key, name, rc, convention, purpose)

Arguments

Type IntentOptional Attributes Name
character(len=:), intent(out), allocatable :: key
character(len=*), intent(in) :: name
integer, intent(out) :: rc
character(len=*), intent(in), optional :: convention
character(len=*), intent(in), optional :: purpose

Calls

proc~~esmf_infoformatkey~~CallsGraph proc~esmf_infoformatkey ESMF_InfoFormatKey proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_infoformatkey->proc~esmf_logfounderror esmf_breakpoint esmf_breakpoint proc~esmf_logfounderror->esmf_breakpoint proc~esmf_logrc2msg ESMF_LogRc2Msg proc~esmf_logfounderror->proc~esmf_logrc2msg proc~esmf_logwrite ESMF_LogWrite proc~esmf_logfounderror->proc~esmf_logwrite c_esmc_loggeterrormsg c_esmc_loggeterrormsg proc~esmf_logrc2msg->c_esmc_loggeterrormsg c_esmc_vmwtime c_esmc_vmwtime proc~esmf_logwrite->c_esmc_vmwtime proc~esmf_logclose ESMF_LogClose proc~esmf_logwrite->proc~esmf_logclose proc~esmf_logflush ESMF_LogFlush proc~esmf_logwrite->proc~esmf_logflush proc~esmf_logopenfile ESMF_LogOpenFile proc~esmf_logwrite->proc~esmf_logopenfile proc~esmf_utiliounitflush ESMF_UtilIOUnitFlush proc~esmf_logwrite->proc~esmf_utiliounitflush proc~esmf_utilstring2array ESMF_UtilString2Array proc~esmf_logwrite->proc~esmf_utilstring2array proc~esmf_logclose->proc~esmf_logflush proc~esmf_logflush->proc~esmf_utiliounitflush proc~esmf_utilarray2string ESMF_UtilArray2String proc~esmf_logflush->proc~esmf_utilarray2string proc~esmf_logopenfile->proc~esmf_utiliounitflush proc~esmf_utiliounitget ESMF_UtilIOUnitGet proc~esmf_logopenfile->proc~esmf_utiliounitget

Called by

ESMF_AttributeGetCountArraywESMF_InfoFormatKey
w
ESMF_AttributeGetCountArrayBundlew
w
ESMF_AttributeGetCountCplCompw
w
ESMF_AttributeGetCountDistGridw
w
ESMF_AttributeGetCountFieldw
w
ESMF_AttributeGetCountFieldBundlew
w
ESMF_AttributeGetCountGridw
w
ESMF_AttributeGetCountGridCompw
w
ESMF_AttributeGetCountLocStreamw
w
ESMF_AttributeGetCountMeshw
w
ESMF_AttributeGetCountSciCompw
w
ESMF_AttributeGetCountStatew
w
ESMF_AttributeGetInfoByNamArrayw
w
ESMF_AttributeGetInfoByNamArrayBundlew
w
ESMF_AttributeGetInfoByNamCplCompw
w
ESMF_AttributeGetInfoByNamDistGridw
w
ESMF_AttributeGetInfoByNamFieldw
w
ESMF_AttributeGetInfoByNamFieldBundlew
w
ESMF_AttributeGetInfoByNamGridw
w
ESMF_AttributeGetInfoByNamGridCompw
w
ESMF_AttributeGetInfoByNamLocStreamw
w
ESMF_AttributeGetInfoByNamMeshw
w
ESMF_AttributeGetInfoByNamSciCompw
w
ESMF_AttributeGetInfoByNamStatew
w
ESMF_AttributeGetInfoByNumArrayw
w
ESMF_AttributeGetInfoByNumArrayBundlew
w
ESMF_AttributeGetInfoByNumCplCompw
w
ESMF_AttributeGetInfoByNumDistGridw
w
ESMF_AttributeGetInfoByNumFieldw
w
ESMF_AttributeGetInfoByNumFieldBundlew
w
ESMF_AttributeGetInfoByNumGridw
w
ESMF_AttributeGetInfoByNumGridCompw
w
ESMF_AttributeGetInfoByNumLocStreamw
w
ESMF_AttributeGetInfoByNumMeshw
w
ESMF_AttributeGetInfoByNumSciCompw
w
ESMF_AttributeGetInfoByNumStatew
w
ESMF_AttributeGetObjArrayBundleCHw
w
ESMF_AttributeGetObjArrayBundleCHListw
w
ESMF_AttributeGetObjArrayBundleI4w
w
ESMF_AttributeGetObjArrayBundleI4Listw
w
ESMF_AttributeGetObjArrayBundleI8w
w
ESMF_AttributeGetObjArrayBundleI8Listw
w
ESMF_AttributeGetObjArrayBundleLGw
w
ESMF_AttributeGetObjArrayBundleLGListw
w
ESMF_AttributeGetObjArrayBundleR4w
w
ESMF_AttributeGetObjArrayBundleR4Listw
w
ESMF_AttributeGetObjArrayBundleR8w
w
ESMF_AttributeGetObjArrayBundleR8Listw
w
ESMF_AttributeGetObjArrayCHw
w
ESMF_AttributeGetObjArrayCHListw
w
ESMF_AttributeGetObjArrayI4w
w
ESMF_AttributeGetObjArrayI4Listw
w
ESMF_AttributeGetObjArrayI8w
w
ESMF_AttributeGetObjArrayI8Listw
w
ESMF_AttributeGetObjArrayLGw
w
ESMF_AttributeGetObjArrayLGListw
w
ESMF_AttributeGetObjArrayR4w
w
ESMF_AttributeGetObjArrayR4Listw
w
ESMF_AttributeGetObjArrayR8w
w
ESMF_AttributeGetObjArrayR8Listw
w
ESMF_AttributeGetObjCplCompCHw
w
ESMF_AttributeGetObjCplCompCHListw
w
ESMF_AttributeGetObjCplCompI4w
w
ESMF_AttributeGetObjCplCompI4Listw
w
ESMF_AttributeGetObjCplCompI8w
w
ESMF_AttributeGetObjCplCompI8Listw
w
ESMF_AttributeGetObjCplCompLGw
w
ESMF_AttributeGetObjCplCompLGListw
w
ESMF_AttributeGetObjCplCompR4w
w
ESMF_AttributeGetObjCplCompR4Listw
w
ESMF_AttributeGetObjCplCompR8w
w
ESMF_AttributeGetObjCplCompR8Listw
w
ESMF_AttributeGetObjDistGridCHw
w
ESMF_AttributeGetObjDistGridCHListw
w
ESMF_AttributeGetObjDistGridI4w
w
ESMF_AttributeGetObjDistGridI4Listw
w
ESMF_AttributeGetObjDistGridI8w
w
ESMF_AttributeGetObjDistGridI8Listw
w
ESMF_AttributeGetObjDistGridLGw
w
ESMF_AttributeGetObjDistGridLGListw
w
ESMF_AttributeGetObjDistGridR4w
w
ESMF_AttributeGetObjDistGridR4Listw
w
ESMF_AttributeGetObjDistGridR8w
w
ESMF_AttributeGetObjDistGridR8Listw
w
ESMF_AttributeGetObjFieldBundleCHw
w
ESMF_AttributeGetObjFieldBundleCHListw
w
ESMF_AttributeGetObjFieldBundleI4w
w
ESMF_AttributeGetObjFieldBundleI4Listw
w
ESMF_AttributeGetObjFieldBundleI8w
w
ESMF_AttributeGetObjFieldBundleI8Listw
w
ESMF_AttributeGetObjFieldBundleLGw
w
ESMF_AttributeGetObjFieldBundleLGListw
w
ESMF_AttributeGetObjFieldBundleR4w
w
ESMF_AttributeGetObjFieldBundleR4Listw
w
ESMF_AttributeGetObjFieldBundleR8w
w
ESMF_AttributeGetObjFieldBundleR8Listw
w
ESMF_AttributeGetObjFieldCHw
w
ESMF_AttributeGetObjFieldCHListw
w
ESMF_AttributeGetObjFieldI4w
w
ESMF_AttributeGetObjFieldI4Listw
w
ESMF_AttributeGetObjFieldI8w
w
ESMF_AttributeGetObjFieldI8Listw
w
ESMF_AttributeGetObjFieldLGw
w
ESMF_AttributeGetObjFieldLGListw
w
ESMF_AttributeGetObjFieldR4w
w
ESMF_AttributeGetObjFieldR4Listw
w
ESMF_AttributeGetObjFieldR8w
w
ESMF_AttributeGetObjFieldR8Listw
w
ESMF_AttributeGetObjGridCHw
w
ESMF_AttributeGetObjGridCHListw
w
ESMF_AttributeGetObjGridCompCHw
w
ESMF_AttributeGetObjGridCompCHListw
w
ESMF_AttributeGetObjGridCompI4w
w
ESMF_AttributeGetObjGridCompI4Listw
w
ESMF_AttributeGetObjGridCompI8w
w
ESMF_AttributeGetObjGridCompI8Listw
w
ESMF_AttributeGetObjGridCompLGw
w
ESMF_AttributeGetObjGridCompLGListw
w
ESMF_AttributeGetObjGridCompR4w
w
ESMF_AttributeGetObjGridCompR4Listw
w
ESMF_AttributeGetObjGridCompR8w
w
ESMF_AttributeGetObjGridCompR8Listw
w
ESMF_AttributeGetObjGridI4w
w
ESMF_AttributeGetObjGridI4Listw
w
ESMF_AttributeGetObjGridI8w
w
ESMF_AttributeGetObjGridI8Listw
w
ESMF_AttributeGetObjGridLGw
w
ESMF_AttributeGetObjGridLGListw
w
ESMF_AttributeGetObjGridR4w
w
ESMF_AttributeGetObjGridR4Listw
w
ESMF_AttributeGetObjGridR8w
w
ESMF_AttributeGetObjGridR8Listw
w
ESMF_AttributeGetObjLocStreamCHw
w
ESMF_AttributeGetObjLocStreamCHListw
w
ESMF_AttributeGetObjLocStreamI4w
w
ESMF_AttributeGetObjLocStreamI4Listw
w
ESMF_AttributeGetObjLocStreamI8w
w
ESMF_AttributeGetObjLocStreamI8Listw
w
ESMF_AttributeGetObjLocStreamLGw
w
ESMF_AttributeGetObjLocStreamLGListw
w
ESMF_AttributeGetObjLocStreamR4w
w
ESMF_AttributeGetObjLocStreamR4Listw
w
ESMF_AttributeGetObjLocStreamR8w
w
ESMF_AttributeGetObjLocStreamR8Listw
w
ESMF_AttributeGetObjMeshCHw
w
ESMF_AttributeGetObjMeshCHListw
w
ESMF_AttributeGetObjMeshI4w
w
ESMF_AttributeGetObjMeshI4Listw
w
ESMF_AttributeGetObjMeshI8w
w
ESMF_AttributeGetObjMeshI8Listw
w
ESMF_AttributeGetObjMeshLGw
w
ESMF_AttributeGetObjMeshLGListw
w
ESMF_AttributeGetObjMeshR4w
w
ESMF_AttributeGetObjMeshR4Listw
w
ESMF_AttributeGetObjMeshR8w
w
ESMF_AttributeGetObjMeshR8Listw
w
ESMF_AttributeGetObjSciCompCHw
w
ESMF_AttributeGetObjSciCompCHListw
w
ESMF_AttributeGetObjSciCompI4w
w
ESMF_AttributeGetObjSciCompI4Listw
w
ESMF_AttributeGetObjSciCompI8w
w
ESMF_AttributeGetObjSciCompI8Listw
w
ESMF_AttributeGetObjSciCompLGw
w
ESMF_AttributeGetObjSciCompLGListw
w
ESMF_AttributeGetObjSciCompR4w
w
ESMF_AttributeGetObjSciCompR4Listw
w
ESMF_AttributeGetObjSciCompR8w
w
ESMF_AttributeGetObjSciCompR8Listw
w
ESMF_AttributeGetObjStateCHw
w
ESMF_AttributeGetObjStateCHListw
w
ESMF_AttributeGetObjStateI4w
w
ESMF_AttributeGetObjStateI4Listw
w
ESMF_AttributeGetObjStateI8w
w
ESMF_AttributeGetObjStateI8Listw
w
ESMF_AttributeGetObjStateLGw
w
ESMF_AttributeGetObjStateLGListw
w
ESMF_AttributeGetObjStateR4w
w
ESMF_AttributeGetObjStateR4Listw
w
ESMF_AttributeGetObjStateR8w
w
ESMF_AttributeGetObjStateR8Listw
w
ESMF_AttributeRemoveAttPackArrayw
w
ESMF_AttributeRemoveAttPackArrayBundlew
w
ESMF_AttributeRemoveAttPackCplCompw
w
ESMF_AttributeRemoveAttPackDistGridw
w
ESMF_AttributeRemoveAttPackFieldw
w
ESMF_AttributeRemoveAttPackFieldBundlew
w
ESMF_AttributeRemoveAttPackGridw
w
ESMF_AttributeRemoveAttPackGridCompw
w
ESMF_AttributeRemoveAttPackLocStreamw
w
ESMF_AttributeRemoveAttPackMeshw
w
ESMF_AttributeRemoveAttPackSciCompw
w
ESMF_AttributeRemoveAttPackStatew
w
ESMF_AttributeSetObjArrayBundleCHw
w
ESMF_AttributeSetObjArrayBundleCHListw
w
ESMF_AttributeSetObjArrayBundleI4w
w
ESMF_AttributeSetObjArrayBundleI4Listw
w
ESMF_AttributeSetObjArrayBundleI8w
w
ESMF_AttributeSetObjArrayBundleI8Listw
w
ESMF_AttributeSetObjArrayBundleLGw
w
ESMF_AttributeSetObjArrayBundleLGListw
w
ESMF_AttributeSetObjArrayBundleR4w
w
ESMF_AttributeSetObjArrayBundleR4Listw
w
ESMF_AttributeSetObjArrayBundleR8w
w
ESMF_AttributeSetObjArrayBundleR8Listw
w
ESMF_AttributeSetObjArrayCHw
w
ESMF_AttributeSetObjArrayCHListw
w
ESMF_AttributeSetObjArrayI4w
w
ESMF_AttributeSetObjArrayI4Listw
w
ESMF_AttributeSetObjArrayI8w
w
ESMF_AttributeSetObjArrayI8Listw
w
ESMF_AttributeSetObjArrayLGw
w
ESMF_AttributeSetObjArrayLGListw
w
ESMF_AttributeSetObjArrayR4w
w
ESMF_AttributeSetObjArrayR4Listw
w
ESMF_AttributeSetObjArrayR8w
w
ESMF_AttributeSetObjArrayR8Listw
w
ESMF_AttributeSetObjCplCompCHw
w
ESMF_AttributeSetObjCplCompCHListw
w
ESMF_AttributeSetObjCplCompI4w
w
ESMF_AttributeSetObjCplCompI4Listw
w
ESMF_AttributeSetObjCplCompI8w
w
ESMF_AttributeSetObjCplCompI8Listw
w
ESMF_AttributeSetObjCplCompLGw
w
ESMF_AttributeSetObjCplCompLGListw
w
ESMF_AttributeSetObjCplCompR4w
w
ESMF_AttributeSetObjCplCompR4Listw
w
ESMF_AttributeSetObjCplCompR8w
w
ESMF_AttributeSetObjCplCompR8Listw
w
ESMF_AttributeSetObjDistGridCHw
w
ESMF_AttributeSetObjDistGridCHListw
w
ESMF_AttributeSetObjDistGridI4w
w
ESMF_AttributeSetObjDistGridI4Listw
w
ESMF_AttributeSetObjDistGridI8w
w
ESMF_AttributeSetObjDistGridI8Listw
w
ESMF_AttributeSetObjDistGridLGw
w
ESMF_AttributeSetObjDistGridLGListw
w
ESMF_AttributeSetObjDistGridR4w
w
ESMF_AttributeSetObjDistGridR4Listw
w
ESMF_AttributeSetObjDistGridR8w
w
ESMF_AttributeSetObjDistGridR8Listw
w
ESMF_AttributeSetObjFieldBundleCHw
w
ESMF_AttributeSetObjFieldBundleCHListw
w
ESMF_AttributeSetObjFieldBundleI4w
w
ESMF_AttributeSetObjFieldBundleI4Listw
w
ESMF_AttributeSetObjFieldBundleI8w
w
ESMF_AttributeSetObjFieldBundleI8Listw
w
ESMF_AttributeSetObjFieldBundleLGw
w
ESMF_AttributeSetObjFieldBundleLGListw
w
ESMF_AttributeSetObjFieldBundleR4w
w
ESMF_AttributeSetObjFieldBundleR4Listw
w
ESMF_AttributeSetObjFieldBundleR8w
w
ESMF_AttributeSetObjFieldBundleR8Listw
w
ESMF_AttributeSetObjFieldCHw
w
ESMF_AttributeSetObjFieldCHListw
w
ESMF_AttributeSetObjFieldI4w
w
ESMF_AttributeSetObjFieldI4Listw
w
ESMF_AttributeSetObjFieldI8w
w
ESMF_AttributeSetObjFieldI8Listw
w
ESMF_AttributeSetObjFieldLGw
w
ESMF_AttributeSetObjFieldLGListw
w
ESMF_AttributeSetObjFieldR4w
w
ESMF_AttributeSetObjFieldR4Listw
w
ESMF_AttributeSetObjFieldR8w
w
ESMF_AttributeSetObjFieldR8Listw
w
ESMF_AttributeSetObjGridCHw
w
ESMF_AttributeSetObjGridCHListw
w
ESMF_AttributeSetObjGridCompCHw
w
ESMF_AttributeSetObjGridCompCHListw
w
ESMF_AttributeSetObjGridCompI4w
w
ESMF_AttributeSetObjGridCompI4Listw
w
ESMF_AttributeSetObjGridCompI8w
w
ESMF_AttributeSetObjGridCompI8Listw
w
ESMF_AttributeSetObjGridCompLGw
w
ESMF_AttributeSetObjGridCompLGListw
w
ESMF_AttributeSetObjGridCompR4w
w
ESMF_AttributeSetObjGridCompR4Listw
w
ESMF_AttributeSetObjGridCompR8w
w
ESMF_AttributeSetObjGridCompR8Listw
w
ESMF_AttributeSetObjGridI4w
w
ESMF_AttributeSetObjGridI4Listw
w
ESMF_AttributeSetObjGridI8w
w
ESMF_AttributeSetObjGridI8Listw
w
ESMF_AttributeSetObjGridLGw
w
ESMF_AttributeSetObjGridLGListw
w
ESMF_AttributeSetObjGridR4w
w
ESMF_AttributeSetObjGridR4Listw
w
ESMF_AttributeSetObjGridR8w
w
ESMF_AttributeSetObjGridR8Listw
w
ESMF_AttributeSetObjLocStreamCHw
w
ESMF_AttributeSetObjLocStreamCHListw
w
ESMF_AttributeSetObjLocStreamI4w
w
ESMF_AttributeSetObjLocStreamI4Listw
w
ESMF_AttributeSetObjLocStreamI8w
w
ESMF_AttributeSetObjLocStreamI8Listw
w
ESMF_AttributeSetObjLocStreamLGw
w
ESMF_AttributeSetObjLocStreamLGListw
w
ESMF_AttributeSetObjLocStreamR4w
w
ESMF_AttributeSetObjLocStreamR4Listw
w
ESMF_AttributeSetObjLocStreamR8w
w
ESMF_AttributeSetObjLocStreamR8Listw
w
ESMF_AttributeSetObjMeshCHw
w
ESMF_AttributeSetObjMeshCHListw
w
ESMF_AttributeSetObjMeshI4w
w
ESMF_AttributeSetObjMeshI4Listw
w
ESMF_AttributeSetObjMeshI8w
w
ESMF_AttributeSetObjMeshI8Listw
w
ESMF_AttributeSetObjMeshLGw
w
ESMF_AttributeSetObjMeshLGListw
w
ESMF_AttributeSetObjMeshR4w
w
ESMF_AttributeSetObjMeshR4Listw
w
ESMF_AttributeSetObjMeshR8w
w
ESMF_AttributeSetObjMeshR8Listw
w
ESMF_AttributeSetObjSciCompCHw
w
ESMF_AttributeSetObjSciCompCHListw
w
ESMF_AttributeSetObjSciCompI4w
w
ESMF_AttributeSetObjSciCompI4Listw
w
ESMF_AttributeSetObjSciCompI8w
w
ESMF_AttributeSetObjSciCompI8Listw
w
ESMF_AttributeSetObjSciCompLGw
w
ESMF_AttributeSetObjSciCompLGListw
w
ESMF_AttributeSetObjSciCompR4w
w
ESMF_AttributeSetObjSciCompR4Listw
w
ESMF_AttributeSetObjSciCompR8w
w
ESMF_AttributeSetObjSciCompR8Listw
w
ESMF_AttributeSetObjStateCHw
w
ESMF_AttributeSetObjStateCHListw
w
ESMF_AttributeSetObjStateI4w
w
ESMF_AttributeSetObjStateI4Listw
w
ESMF_AttributeSetObjStateI8w
w
ESMF_AttributeSetObjStateI8Listw
w
ESMF_AttributeSetObjStateLGw
w
ESMF_AttributeSetObjStateLGListw
w
ESMF_AttributeSetObjStateR4w
w
ESMF_AttributeSetObjStateR4Listw
w
ESMF_AttributeSetObjStateR8w
w
ESMF_AttributeSetObjStateR8Listw
w
ESMF_AttributeUtilUTestw
w
ESMF_AttributeWriteArrayw
w
ESMF_AttributeWriteArrayBundlew
w
ESMF_AttributeWriteCplCompw
w
ESMF_AttributeWriteDistGridw
w
ESMF_AttributeWriteFieldw
w
ESMF_AttributeWriteFieldBundlew
w
ESMF_AttributeWriteGridw
w
ESMF_AttributeWriteGridCompw
w
ESMF_AttributeWriteLocStreamw
w
ESMF_AttributeWriteMeshw
w
ESMF_AttributeWriteSciCompw
w
ESMF_AttributeWriteStatew
w

Source Code

subroutine ESMF_InfoFormatKey(key, name, rc, convention, purpose)
  character(:), allocatable, intent(out) :: key
  character(len=*), intent(in) :: name
  integer, intent(out) :: rc
  character(len=*), intent(in), optional :: convention
  character(len=*), intent(in), optional :: purpose

  character(*), parameter :: msg="Both convention & purpose are required if either is present"

  if (present(convention)) then
    if (.not. present(purpose)) then
      if (ESMF_LogFoundError(ESMF_RC_ARG_BAD, msg=msg, ESMF_CONTEXT, rcToReturn=rc)) return
    endif
  endif
  if (present(purpose)) then
    if (.not. present(convention)) then
      if (ESMF_LogFoundError(ESMF_RC_ARG_BAD, msg=msg, ESMF_CONTEXT, rcToReturn=rc)) return
    endif
  endif

  if (present(convention)) then
    if (LEN(name) > 0) then
      key = "/"//trim(convention)//"/"//trim(purpose)//"/"//trim(name)
    else
      key = "/"//trim(convention)//"/"//trim(purpose)
    end if
  else
    if (LEN(name) > 0) then
      key = ESMF_ATTR_DEFAULT_ROOTKEY//"/"//trim(name)
    else
      key = ESMF_ATTR_DEFAULT_ROOTKEY
    end if
  endif

  rc = ESMF_SUCCESS
end subroutine ESMF_InfoFormatKey