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