f_esmf_localarrayslice Subroutine

subroutine f_esmf_localarrayslice(arrayPtr, trailingTensorSlice, rankIn, rankOut, rc)

Uses

  • proc~~f_esmf_localarrayslice~~UsesGraph proc~f_esmf_localarrayslice f_esmf_localarrayslice module~esmf_basemod ESMF_BaseMod proc~f_esmf_localarrayslice->module~esmf_basemod module~esmf_f90interfacemod ESMF_F90InterfaceMod proc~f_esmf_localarrayslice->module~esmf_f90interfacemod module~esmf_localarraymod ESMF_LocalArrayMod proc~f_esmf_localarrayslice->module~esmf_localarraymod module~esmf_logerrmod ESMF_LogErrMod proc~f_esmf_localarrayslice->module~esmf_logerrmod module~esmf_utiltypesmod ESMF_UtilTypesMod proc~f_esmf_localarrayslice->module~esmf_utiltypesmod module~esmf_basemod->module~esmf_logerrmod module~esmf_basemod->module~esmf_utiltypesmod iso_c_binding iso_c_binding module~esmf_basemod->iso_c_binding module~esmf_initmacrosmod ESMF_InitMacrosMod module~esmf_basemod->module~esmf_initmacrosmod module~esmf_ioutilmod ESMF_IOUtilMod module~esmf_basemod->module~esmf_ioutilmod module~esmf_vmmod ESMF_VMMod module~esmf_basemod->module~esmf_vmmod module~esmf_f90interfacemod->module~esmf_logerrmod module~esmf_f90interfacemod->module~esmf_utiltypesmod ESMF_LocalArrayCreateMod ESMF_LocalArrayCreateMod module~esmf_localarraymod->ESMF_LocalArrayCreateMod ESMF_LocalArrayGetMod ESMF_LocalArrayGetMod module~esmf_localarraymod->ESMF_LocalArrayGetMod module~esmf_logerrmod->module~esmf_utiltypesmod module~esmf_logerrmod->module~esmf_ioutilmod module~esmf_utilstringmod ESMF_UtilStringMod module~esmf_logerrmod->module~esmf_utilstringmod module~esmf_utiltypesmod->iso_c_binding module~esmf_initmacrosmod->module~esmf_logerrmod module~esmf_initmacrosmod->module~esmf_utiltypesmod module~esmf_ioutilmod->module~esmf_utiltypesmod module~esmf_vmmod->module~esmf_f90interfacemod module~esmf_vmmod->module~esmf_logerrmod module~esmf_vmmod->module~esmf_utiltypesmod module~esmf_vmmod->iso_c_binding module~esmf_vmmod->module~esmf_initmacrosmod module~esmf_vmmod->module~esmf_ioutilmod

Arguments

Type IntentOptional Attributes Name
type(ESMF_Pointer) :: arrayPtr
type(ESMF_InterArray) :: trailingTensorSlice
integer :: rankIn
integer :: rankOut
integer :: rc

Calls

proc~~f_esmf_localarrayslice~~CallsGraph proc~f_esmf_localarrayslice f_esmf_localarrayslice esmf_localarrayslice esmf_localarrayslice proc~f_esmf_localarrayslice->esmf_localarrayslice proc~esmf_logfounderror ESMF_LogFoundError proc~f_esmf_localarrayslice->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

Source Code

subroutine f_esmf_localarrayslice(arrayPtr, trailingTensorSlice, rankIn, rankOut, rc)
  use ESMF_UtilTypesMod     ! ESMF base class
  use ESMF_BaseMod          ! ESMF base class
  use ESMF_LogErrMod        ! ESMF error logging
  use ESMF_LocalArrayMod
  use ESMF_F90InterfaceMod

  implicit none

  type(ESMF_Pointer) :: arrayPtr
  type(ESMF_InterArray) :: trailingTensorSlice
  integer :: rankIn, rankOut
  integer :: rc

  type(ESMF_LocalArray) :: array

  array%this = arrayPtr         ! the incoming LocalArray
  ESMF_INIT_SET_CREATED(array)

  call ESMF_LocalArraySlice(array, trailingTensorSlice, rankIn, rankOut, rc=rc)
  if (ESMF_LogFoundError(rcToCheck=rc, &
    ESMF_ERR_PASSTHRU, &
    ESMF_CONTEXT)) return

  arrayPtr = array%this         ! the outgoing LocalArray

end subroutine f_esmf_localarrayslice