Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ESMF_Mesh), | intent(in) | :: | mesh | |||
integer(kind=ESMF_KIND_I4), | optional | :: | maskValues(:) | |||
integer, | intent(out), | optional | :: | rc |
subroutine ESMF_MeshTurnOnCellMask(mesh, maskValues, rc) ! ! !ARGUMENTS: type(ESMF_Mesh), intent(in) :: mesh integer(ESMF_KIND_I4), optional :: maskValues(:) integer, intent(out) , optional :: rc ! ! !DESCRIPTION: ! Turn on mesh masking ! ! \begin{description} ! \item [mesh] ! The mesh to turn on masking for ! \item [maskValues] ! Values to set as masked ! \item [{[rc]}] ! Return code; equals {\tt ESMF\_SUCCESS} if there are no errors. ! \end{description} ! !EOPI !------------------------------------------------------------------------------ integer :: localrc type(ESMF_InterArray) :: maskValuesArg ! Init localrc localrc = ESMF_SUCCESS ! If not present, then don't need to turn anything on if (.not. present(maskValues)) then if (present(rc)) rc = ESMF_SUCCESS return endif ! convert mask values maskValuesArg = ESMF_InterArrayCreate(maskValues, rc=localrc) if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, & ESMF_CONTEXT, rcToReturn=rc)) return call c_esmc_meshturnoncellmask(mesh, maskValuesArg, localrc) if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, & ESMF_CONTEXT, rcToReturn=rc)) return call ESMF_InterArrayDestroy(maskValuesArg, rc=localrc) if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, & ESMF_CONTEXT, rcToReturn=rc)) return if (present(rc)) rc = ESMF_SUCCESS end subroutine ESMF_MeshTurnOnCellMask