gdncvardelattr.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine gdncvardelattr (var, name, err)
 

Function/Subroutine Documentation

◆ gdncvardelattr()

subroutine gdncvardelattr ( type(gd_nc_variable), intent(in)  var,
character(len = *), intent(in)  name,
logical, intent(out), optional  err 
)

Definition at line 4 of file gdncvardelattr.f90.

References gdncfiledefinemode(), dc_url::gt_plus, dc_error::storeerror(), and gtdata_netcdf_internal::vtable_lookup().

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
16 continue
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 
30 999 continue
31  call storeerror(stat, 'GDNcVarPutAttrChar', err)
integer function, public vtable_lookup(var, entry)
integer function gdncfiledefinemode(fileid)
character, parameter, public gt_plus
Definition: dc_url.f90:92
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition: dc_error.f90:830
Here is the call graph for this function: