ESMF_TraceClock Subroutine

public subroutine ESMF_TraceClock(clock, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_Clock) :: clock
integer, intent(out), optional :: rc

Calls

proc~~esmf_traceclock~~CallsGraph proc~esmf_traceclock ESMF_TraceClock c_esmftrace_clock c_esmftrace_clock proc~esmf_traceclock->c_esmftrace_clock proc~esmf_clockget ESMF_ClockGet proc~esmf_traceclock->proc~esmf_clockget proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_traceclock->proc~esmf_logfounderror proc~esmf_timeget ESMF_TimeGet proc~esmf_traceclock->proc~esmf_timeget proc~esmf_clockget->proc~esmf_logfounderror c_esmc_clockget c_esmc_clockget proc~esmf_clockget->c_esmc_clockget proc~esmf_calendarsetinitcreated ESMF_CalendarSetInitCreated proc~esmf_clockget->proc~esmf_calendarsetinitcreated proc~esmf_clockgetinit ESMF_ClockGetInit proc~esmf_clockget->proc~esmf_clockgetinit proc~esmf_imerr ESMF_IMErr proc~esmf_clockget->proc~esmf_imerr proc~esmf_timeinit ESMF_TimeInit proc~esmf_clockget->proc~esmf_timeinit proc~esmf_timeintervalinit ESMF_TimeIntervalInit proc~esmf_clockget->proc~esmf_timeintervalinit 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 proc~esmf_timeget->proc~esmf_logfounderror c_esmc_timeget c_esmc_timeget proc~esmf_timeget->c_esmc_timeget proc~esmf_timeget->proc~esmf_calendarsetinitcreated proc~esmf_imerrs ESMF_IMErrS proc~esmf_timeget->proc~esmf_imerrs proc~esmf_timegetinit ESMF_TimeGetInit proc~esmf_timeget->proc~esmf_timegetinit proc~esmf_timeget->proc~esmf_timeinit proc~esmf_timeget->proc~esmf_timeintervalinit proc~esmf_imerr->proc~esmf_logfounderror proc~esmf_initcheckdeep ESMF_InitCheckDeep proc~esmf_imerr->proc~esmf_initcheckdeep proc~esmf_imerrs->proc~esmf_logfounderror proc~esmf_initcheckshallow ESMF_InitCheckShallow proc~esmf_imerrs->proc~esmf_initcheckshallow 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

Called by

proc~~esmf_traceclock~~CalledByGraph proc~esmf_traceclock ESMF_TraceClock proc~ic_final~2 ic_final proc~ic_final~2->proc~esmf_traceclock proc~ic_init~2 ic_init proc~ic_init~2->proc~esmf_traceclock proc~ic_run~2 ic_run proc~ic_run~2->proc~esmf_traceclock

Source Code

  subroutine ESMF_TraceClock(clock, rc)
! !ARGUMENTS: 
    type(ESMF_Clock) :: clock
    integer, intent(out), optional  :: rc
!
!EOPI
!-------------------------------------------------------------------------------
    ! locals
    type(ESMF_Time) :: currTime
    integer :: yy, mm, dd, h, m, s
    
    if (present(rc)) rc = ESMF_SUCCESS 

    call ESMF_ClockGet(clock, currTime=currTime, rc=rc)
    if (ESMF_LogFoundError(rc, ESMF_ERR_PASSTHRU, &
         ESMF_CONTEXT, rcToReturn=rc)) return
    call ESMF_TimeGet(currTime, yy=yy, mm=mm, dd=dd, h=h, m=m, s=s, rc=rc)
    if (ESMF_LogFoundError(rc, ESMF_ERR_PASSTHRU, &
         ESMF_CONTEXT, rcToReturn=rc)) return
    call c_esmftrace_clock(yy, mm, dd, h, m, s, rc)
    if (ESMF_LogFoundError(rc, ESMF_ERR_PASSTHRU, &
         ESMF_CONTEXT, rcToReturn=rc)) return
    
  end subroutine ESMF_TraceClock