user_final Subroutine

public subroutine user_final(comp, importState, exportState, clock, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_GridComp) :: comp
type(ESMF_State) :: importState
type(ESMF_State) :: exportState
type(ESMF_Clock) :: clock
integer, intent(out) :: rc

Calls

proc~~user_final~72~~CallsGraph proc~user_final~72 user_final proc~esmf_clockdestroy ESMF_ClockDestroy proc~user_final~72->proc~esmf_clockdestroy proc~esmf_gridcompget ESMF_GridCompGet proc~user_final~72->proc~esmf_gridcompget c_esmc_clockdestroy c_esmc_clockdestroy proc~esmf_clockdestroy->c_esmc_clockdestroy proc~esmf_clockgetinit ESMF_ClockGetInit proc~esmf_clockdestroy->proc~esmf_clockgetinit proc~esmf_clocksetinitdeleted ESMF_ClockSetInitDeleted proc~esmf_clockdestroy->proc~esmf_clocksetinitdeleted proc~esmf_imerr ESMF_IMErr proc~esmf_clockdestroy->proc~esmf_imerr proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_clockdestroy->proc~esmf_logfounderror proc~esmf_compget ESMF_CompGet proc~esmf_gridcompget->proc~esmf_compget proc~esmf_compstatusget ESMF_CompStatusGet proc~esmf_gridcompget->proc~esmf_compstatusget proc~esmf_gridcompgetinit ESMF_GridCompGetInit proc~esmf_gridcompget->proc~esmf_gridcompgetinit proc~esmf_gridcompget->proc~esmf_imerr proc~esmf_gridcompget->proc~esmf_logfounderror proc~esmf_compget->proc~esmf_imerr proc~esmf_compget->proc~esmf_logfounderror c_esmc_compget c_esmc_compget proc~esmf_compget->c_esmc_compget interface~esmf_vmget ESMF_VMGet proc~esmf_compget->interface~esmf_vmget proc~esmf_basegetstatus ESMF_BaseGetStatus proc~esmf_compget->proc~esmf_basegetstatus proc~esmf_compclassgetinit ESMF_CompClassGetInit proc~esmf_compget->proc~esmf_compclassgetinit proc~esmf_configget ESMF_ConfigGet proc~esmf_compget->proc~esmf_configget proc~esmf_getname ESMF_GetName proc~esmf_compget->proc~esmf_getname proc~esmf_logfoundallocerror ESMF_LogFoundAllocError proc~esmf_compget->proc~esmf_logfoundallocerror proc~esmf_logseterror ESMF_LogSetError proc~esmf_compget->proc~esmf_logseterror proc~esmf_compstatusgetinit ESMF_CompStatusGetInit proc~esmf_compstatusget->proc~esmf_compstatusgetinit proc~esmf_imerrs ESMF_IMErrS proc~esmf_compstatusget->proc~esmf_imerrs proc~esmf_imerr->proc~esmf_logfounderror proc~esmf_initcheckdeep ESMF_InitCheckDeep proc~esmf_imerr->proc~esmf_initcheckdeep 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

Source Code

 subroutine user_final(comp, importState, exportState, clock, rc)
    type(ESMF_GridComp)   :: comp
    type(ESMF_State)      :: importState, exportState
    type(ESMF_Clock)      :: clock
    integer, intent(out)  :: rc

    ! Local variables
    integer               :: localPet
    type(ESMF_Clock)      :: clockInternal
    
    ! Initialize user return code
    rc = ESMF_SUCCESS

    call ESMF_GridCompGet(comp, localPet=localPet, clock=clockInternal, rc=rc)
    if (rc/=ESMF_SUCCESS) return ! bail out

    print *, localPet, "User Comp2 Final starting"

    call ESMF_ClockDestroy(clockInternal, rc=rc)
    if (rc/=ESMF_SUCCESS) return ! bail out

    print *, localPet, "User Comp2 Final returning"

  end subroutine user_final