Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ESMF_KeywordEnforcer), | optional | :: | keywordEnforcer | |||
type(ESMF_VM), | intent(in), | optional | :: | vm | ||
integer, | intent(out), | optional | :: | rc |
function ESMF_GridEmptyCreate(keywordEnforcer, vm, rc) ! ! !RETURN VALUE: type(ESMF_Grid) :: ESMF_GridEmptyCreate ! ! !ARGUMENTS: type(ESMF_KeywordEnforcer), optional:: keywordEnforcer ! must use keywords below type(ESMF_VM), intent(in), optional :: vm integer, intent(out), optional :: rc ! ! !STATUS: ! \begin{itemize} ! \item\apiStatusCompatibleVersion{5.2.0r} ! \item\apiStatusModifiedSinceVersion{5.2.0r} ! \begin{description} ! \item[7.1.0r] Added argument {\tt vm} to support object creation on a ! different VM than that of the current context. ! \end{description} ! \end{itemize} ! ! !DESCRIPTION: ! Partially create an {\tt ESMF\_Grid} object. This function allocates ! an {\tt ESMF\_Grid} object, but doesn't allocate any coordinate storage or other ! internal structures. The {\tt ESMF\_GridEmptyComplete()} calls ! can be used to set the values in the grid object and to construct the ! internal structure. ! ! The arguments are: ! \begin{description} ! \item[{[vm]}] ! If present, the Grid object is created on the specified ! {\tt ESMF\_VM} object. The default is to create on the VM of the ! current context. ! \item[{[rc]}] ! Return code; equals {\tt ESMF\_SUCCESS} if there are no errors. ! \end{description} ! !EOP integer :: localrc ! local error status type(ESMF_Grid) :: grid ! Initialize this grid object as invalid grid%this = ESMF_NULL_POINTER ! Check init status of arguments if (present(vm)) then ESMF_INIT_CHECK_DEEP_SHORT(ESMF_VMGetInit, vm, rc) endif ! Call C++ Subroutine to do the create call c_ESMC_gridcreateempty(grid%this, vm, localrc) if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, & ESMF_CONTEXT, rcToReturn=rc)) return ! Set return value ESMF_GridEmptyCreate = grid ! Set init status ESMF_INIT_SET_CREATED(ESMF_GridEmptyCreate) ! Return successfully if (present(rc)) rc = ESMF_SUCCESS end function ESMF_GridEmptyCreate