gtvaropen.f90

Path: src/gtvaropen.f90
Last Update: Wed Jul 20 18:22:24 JST 2005

gtvaropen.f90 - gtool4 file interface Copyright (C) GFD Dennou Club, 2000. All rights reserved

Methods

GTVarOpen  

Included Modules

dc_string dc_types gtdata_types gtdata_generic gt_map an_generic dc_url dc_error dc_trace

Public Instance methods

var :type(GT_VARIABLE), intent(inout)
url :character(*), intent(in)
writable :logical, intent(in), optional
err :logical, intent(out), optional

[Source]

subroutine GTVarOpen(var, url, writable, err)

    implicit none
    type(GT_VARIABLE), intent(inout):: var
    character(*), intent(in):: url
    logical, intent(in), optional:: writable
    logical, intent(out), optional:: err
    integer:: ndims
    integer, allocatable:: dimlen(:)
    type(an_variable):: an
    character(len = string):: filevar, iorange
continue
    call beginsub('gtvaropen', fmt='<%c>', c1=trim(url))
    call url_chop_iorange(url, iorange=iorange, remainder=filevar)
    if (StrHead(filevar, "memory:")) then
        call StoreError(GT_EFAKE, "GTVarOpen(memory:)", err)
        var = gt_variable(-1)
    else
        call ANVarOpen(an, filevar, writable, err)
        call inquire(an, ndims=ndims)
        allocate(dimlen(max(1, ndims)))
        call inquire(an, dimlen=dimlen)
        call map_create(var, vtb_class_netcdf, an%id, ndims, dimlen)
        deallocate(dimlen)
    endif
    call limit(var, trim(iorange))
    call gtvar_dump(var)
    call endsub('gtvaropen', 'mapid=%d', i=(/var%mapid/))
end subroutine

[Validate]