opntext Subroutine

private subroutine opntext(lu, filename, status, rc)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: lu
character(len=*), intent(in) :: filename
character(len=*), intent(in) :: status
integer, intent(out) :: rc

Calls

proc~~opntext~~CallsGraph proc~opntext opntext proc~esmf_utilstringuppercase ESMF_UtilStringUpperCase proc~opntext->proc~esmf_utilstringuppercase

Called by

proc~~opntext~~CalledByGraph proc~opntext opntext proc~esmf_configloadfile_1proc_ ESMF_ConfigLoadFile_1proc_ proc~esmf_configloadfile_1proc_->proc~opntext proc~esmf_configloadfile ESMF_ConfigLoadFile proc~esmf_configloadfile->proc~esmf_configloadfile_1proc_ proc~complianceinitialize ComplianceInitialize proc~complianceinitialize->proc~esmf_configloadfile proc~esmf_compconstruct ESMF_CompConstruct proc~esmf_compconstruct->proc~esmf_configloadfile proc~esmf_compset ESMF_CompSet proc~esmf_compset->proc~esmf_configloadfile proc~esmf_frameworkinternalinit ESMF_FrameworkInternalInit proc~esmf_frameworkinternalinit->proc~esmf_configloadfile proc~f_esmf_configloadfile f_esmf_configloadfile proc~f_esmf_configloadfile->proc~esmf_configloadfile proc~initialization Initialization proc~initialization->proc~esmf_configloadfile proc~read_descriptor_files read_descriptor_files proc~read_descriptor_files->proc~esmf_configloadfile proc~read_dist_specification read_dist_specification proc~read_dist_specification->proc~esmf_configloadfile proc~read_grid_specification read_grid_specification proc~read_grid_specification->proc~esmf_configloadfile proc~read_redistribution_grid read_redistribution_grid proc~read_redistribution_grid->proc~esmf_configloadfile proc~read_regridding_grid read_regridding_grid proc~read_regridding_grid->proc~esmf_configloadfile proc~read_testharness_config Read_TestHarness_Config proc~read_testharness_config->proc~esmf_configloadfile program~esmf_appdriver ESMF_AppDriver program~esmf_appdriver->proc~esmf_configloadfile program~esmf_configoverviewex ESMF_ConfigOverviewEx program~esmf_configoverviewex->proc~esmf_configloadfile program~esmf_hconfigex ESMF_HConfigEx program~esmf_hconfigex->proc~esmf_configloadfile program~esmf_hconfigutest ESMF_HConfigUTest program~esmf_hconfigutest->proc~esmf_configloadfile

Source Code

    subroutine opntext(lu, filename, status, rc)

      integer,         intent(in) :: lu     ! logical unit number
      character(len=*),intent(in) :: filename  ! filename to be opened
      character(len=*),intent(in) :: status ! the value for STATUS=<>
      integer,         intent(out):: rc     ! the status

!-----------------------------------------------------------------------
!

                ! local parameter

        character(len=len(status)) :: Ustat
        integer :: iostat


#ifdef _UNICOS
        call asnunit(lu,'-R',iostat)         ! remove any set attributes
        if (iostat /= 0) then
          rc = ESMF_FAILURE
          return  ! let the parent handle it
        end if
#endif

        Ustat = ESMF_UtilStringUpperCase (string=status)
        select case(Ustat)

        case ('APPEND')

          open(                           &
            unit        =lu,              &
            file        =filename,        &
            form        ='formatted',     &
            access      ='sequential',    &
            status      ='unknown',       &
            action      ='readwrite',     &
            position    ='append',        &
            iostat      =iostat            )

        case default

          open(                           &
            unit        =lu,              &
            file        =filename,        &
            form        ='formatted',     &
            access      ='sequential',    &
            status      =status,          &
            action      ='read',          &
            position    ='asis',          &
            iostat      =iostat            )

        end select

        if (iostat == 0) then
          rc = ESMF_SUCCESS
        else
          rc = ESMF_RC_FILE_OPEN
        endif

        end subroutine opntext