Loading...
Searching...
No Matches
gdncvardelattr.f90
Go to the documentation of this file.
1! Copyright (C) GFD Dennou Club, 2000. All rights reserved
2
3subroutine gdncvardelattr(var, name, err)
7 use netcdf, only: nf90_noerr, nf90_del_att, nf90_global, nf90_enotindefine
8 use dc_url, only: gt_plus
9 use dc_error
10 implicit none
11 type(gd_nc_variable), intent(in):: var
12 character(len = *), intent(in):: name
13 logical, intent(out), optional:: err
14 type(gd_nc_variable_entry):: ent
15 integer:: stat
16continue
17 stat = vtable_lookup(var, ent)
18 if (stat /= nf90_noerr) goto 999
19 stat = nf90_del_att(ent%fileid, ent%varid, name=name)
20 if (stat == 0) goto 999
21 if (stat /= nf90_enotindefine) goto 999
22 stat = gdncfiledefinemode(ent%fileid)
23 if (stat /= nf90_noerr) goto 999
24 if (name(1:1) == gt_plus) then
25 stat = nf90_del_att(ent%fileid, nf90_global, name=name(2:))
26 else
27 stat = nf90_del_att(ent%fileid, ent%varid, name=name)
28 endif
29
30999 continue
31 call storeerror(stat, 'GDNcVarPutAttrChar', err)
32end subroutine
subroutine gdncvardelattr(var, name, err)
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition dc_error.f90:830
character, parameter, public gt_plus
Definition dc_url.f90:92
integer function, public vtable_lookup(var, entry)