subroutine SetRunSequence(driver, rc)
type(ESMF_GridComp) :: driver
integer, intent(out) :: rc
! local variables
character(ESMF_MAXSTR) :: name
type(NUOPC_FreeFormat) :: runSeqFF
rc = ESMF_SUCCESS
! query the driver for its name
call ESMF_GridCompGet(driver, name=name, rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
! set up free format run sequence
runSeqFF = NUOPC_FreeFormatCreate(stringList=(/ &
" @* ", &
" Driver ", &
" Driver -> ATM ", &
" ATM ", &
" @ " /), &
rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
! ingest FreeFormat run sequence
call NUOPC_DriverIngestRunSequence(driver, runSeqFF, autoAddConnectors=.true., rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
! clean-up
call NUOPC_FreeFormatDestroy(runSeqFF, rc=rc)
if (ESMF_LogFoundError(rcToCheck=rc, msg=ESMF_LOGERR_PASSTHRU, &
line=__LINE__, &
file=__FILE__)) &
return ! bail out
end subroutine SetRunSequence