ESMF_CompStatusGet Subroutine

public recursive subroutine ESMF_CompStatusGet(compStatus, clockIsPresent, configIsPresent, configFileIsPresent, vmIsPresent, isIsPresent, esIsPresent, gridIsPresent, meshIsPresent, locstreamIsPresent, xgridIsPresent, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_CompStatus), intent(in) :: compStatus
logical, intent(out), optional :: clockIsPresent
logical, intent(out), optional :: configIsPresent
logical, intent(out), optional :: configFileIsPresent
logical, intent(out), optional :: vmIsPresent
logical, intent(out), optional :: isIsPresent
logical, intent(out), optional :: esIsPresent
logical, intent(out), optional :: gridIsPresent
logical, intent(out), optional :: meshIsPresent
logical, intent(out), optional :: locstreamIsPresent
logical, intent(out), optional :: xgridIsPresent
integer, intent(out), optional :: rc

Source Code

  recursive subroutine ESMF_CompStatusGet(compStatus, clockIsPresent, &
    configIsPresent, configFileIsPresent, vmIsPresent, isIsPresent, &
    esIsPresent, gridIsPresent, meshIsPresent, locstreamIsPresent, &
    xgridIsPresent, rc)
!
! !ARGUMENTS:
    type(ESMF_CompStatus), intent(in)            :: compStatus
    logical,               intent(out), optional :: clockIsPresent
    logical,               intent(out), optional :: configIsPresent
    logical,               intent(out), optional :: configFileIsPresent
    logical,               intent(out), optional :: vmIsPresent
    logical,               intent(out), optional :: isIsPresent
    logical,               intent(out), optional :: esIsPresent
    logical,               intent(out), optional :: gridIsPresent
    logical,               intent(out), optional :: meshIsPresent
    logical,               intent(out), optional :: locstreamIsPresent
    logical,               intent(out), optional :: xgridIsPresent
    integer,               intent(out), optional :: rc

!
! !DESCRIPTION:
!      Returns information about the component status bits.
!
!EOPI
!------------------------------------------------------------------------------
    integer                 :: localrc      ! local return code
    
    ! Initialize return code; assume not implemented until success is certain
    localrc = ESMF_RC_NOT_IMPL
    if (present(rc)) rc = ESMF_RC_NOT_IMPL
    
    ESMF_INIT_CHECK_SHALLOW(ESMF_CompStatusGetInit, compStatus, rc)
    
    if (present(clockIsPresent)) then
      clockIsPresent = compStatus%clockIsPresent
    endif

    if (present(configIsPresent)) then
      configIsPresent = compStatus%configIsPresent
    endif

    if (present(configFileIsPresent)) then
      configFileIsPresent = compStatus%configFileIsPresent
    endif

    if (present(vmIsPresent)) then
      vmIsPresent = compStatus%vmIsPresent
    endif

    if (present(isIsPresent)) then
      isIsPresent = compStatus%isIsPresent
    endif

    if (present(esIsPresent)) then
      esIsPresent = compStatus%esIsPresent
    endif

    if (present(gridIsPresent)) then
      gridIsPresent = compStatus%gridIsPresent
    endif

    if (present(meshIsPresent)) then
      meshIsPresent = compStatus%meshIsPresent
    endif

    if (present(locstreamIsPresent)) then
      locstreamIsPresent = compStatus%locstreamIsPresent
    endif

    if (present(xgridIsPresent)) then
      xgridIsPresent = compStatus%xgridIsPresent
    endif

    ! Return successfully
    if (present(rc)) rc = ESMF_SUCCESS

  end subroutine ESMF_CompStatusGet