ParseFileTypeArg Subroutine

subroutine ParseFileTypeArg(argName, fileTypeArg, fileType)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: argName
character(len=*), intent(in) :: fileTypeArg
type(ESMF_FileFormat_Flag), intent(out) :: fileType

Calls

proc~~parsefiletypearg~~CallsGraph proc~parsefiletypearg ParseFileTypeArg proc~esmf_finalize ESMF_Finalize proc~parsefiletypearg->proc~esmf_finalize c_esmc_getcompliancechecktrace c_esmc_getcompliancechecktrace proc~esmf_finalize->c_esmc_getcompliancechecktrace proc~esmf_calendarfinalize ESMF_CalendarFinalize proc~esmf_finalize->proc~esmf_calendarfinalize proc~esmf_logfinalize ESMF_LogFinalize proc~esmf_finalize->proc~esmf_logfinalize proc~esmf_logflush ESMF_LogFlush proc~esmf_finalize->proc~esmf_logflush proc~esmf_logrc2msg ESMF_LogRc2Msg proc~esmf_finalize->proc~esmf_logrc2msg proc~esmf_logwrite ESMF_LogWrite proc~esmf_finalize->proc~esmf_logwrite proc~esmf_traceclose ESMF_TraceClose proc~esmf_finalize->proc~esmf_traceclose proc~esmf_vmabort ESMF_VMAbort proc~esmf_finalize->proc~esmf_vmabort proc~esmf_vmfinalize ESMF_VMFinalize proc~esmf_finalize->proc~esmf_vmfinalize c_esmc_calendarfinalize c_esmc_calendarfinalize proc~esmf_calendarfinalize->c_esmc_calendarfinalize proc~esmf_logfounderror ESMF_LogFoundError proc~esmf_calendarfinalize->proc~esmf_logfounderror c_esmc_logfinalize c_esmc_logfinalize proc~esmf_logfinalize->c_esmc_logfinalize proc~esmf_logclose ESMF_LogClose proc~esmf_logfinalize->proc~esmf_logclose proc~esmf_utilarray2string ESMF_UtilArray2String proc~esmf_logflush->proc~esmf_utilarray2string proc~esmf_utiliounitflush ESMF_UtilIOUnitFlush proc~esmf_logflush->proc~esmf_utiliounitflush c_esmc_loggeterrormsg c_esmc_loggeterrormsg proc~esmf_logrc2msg->c_esmc_loggeterrormsg proc~esmf_logwrite->proc~esmf_logflush c_esmc_vmwtime c_esmc_vmwtime proc~esmf_logwrite->c_esmc_vmwtime proc~esmf_logwrite->proc~esmf_logclose proc~esmf_logopenfile ESMF_LogOpenFile proc~esmf_logwrite->proc~esmf_logopenfile proc~esmf_logwrite->proc~esmf_utiliounitflush proc~esmf_utilstring2array ESMF_UtilString2Array proc~esmf_logwrite->proc~esmf_utilstring2array c_esmftrace_close c_esmftrace_close proc~esmf_traceclose->c_esmftrace_close proc~esmf_traceclose->proc~esmf_logfounderror c_esmc_vmabort c_esmc_vmabort proc~esmf_vmabort->c_esmc_vmabort c_esmc_vmfinalize c_esmc_vmfinalize proc~esmf_vmfinalize->c_esmc_vmfinalize proc~esmf_logclose->proc~esmf_logflush proc~esmf_logfounderror->proc~esmf_logrc2msg proc~esmf_logfounderror->proc~esmf_logwrite esmf_breakpoint esmf_breakpoint proc~esmf_logfounderror->esmf_breakpoint proc~esmf_logopenfile->proc~esmf_utiliounitflush proc~esmf_utiliounitget ESMF_UtilIOUnitGet proc~esmf_logopenfile->proc~esmf_utiliounitget

Called by

proc~~parsefiletypearg~~CalledByGraph proc~parsefiletypearg ParseFileTypeArg program~esmf_regridweightgenapp ESMF_RegridWeightGenApp program~esmf_regridweightgenapp->proc~parsefiletypearg

Source Code

  subroutine ParseFileTypeArg(argName, fileTypeArg, fileType)
    ! Parse a given file type argument, returning the appropriate file type constant
    character(len=*), intent(in) :: argName             ! name of the argument, just used for error messages
    character(len=*), intent(in) :: fileTypeArg         ! value of the file type argument
    type(ESMF_FileFormat_Flag), intent(out) :: fileType ! determined file type constant

    select case (fileTypeArg)
    case ('SCRIP')
       fileType = ESMF_FILEFORMAT_SCRIP
    case ('ESMFMESH')
       fileType = ESMF_FILEFORMAT_ESMFMESH
    case ('UGRID')
       fileType = ESMF_FILEFORMAT_UGRID
    case ('CFGRID')
       fileType = ESMF_FILEFORMAT_CFGRID
    case ('GRIDSPEC')
       fileType = ESMF_FILEFORMAT_GRIDSPEC
    case ('MOSAIC')
       fileType = ESMF_FILEFORMAT_MOSAIC
    case ('TILE')
       fileType = ESMF_FILEFORMAT_TILE
    case default
       write(*,*)
       print *, "ERROR: Unknown ", trim(argName), ": must be one of:"
       print *, "SCRIP, ESMFMESH, UGRID, CFGRID, GRIDSPEC, MOSAIC or TILE."
       print *, "Use the --help argument to see an explanation of usage."
       call ESMF_Finalize(endflag=ESMF_END_ABORT)
    end select
  end subroutine ParseFileTypeArg