2
5 use netcdf, only: nf90_enotnc
7 use dc_trace, only: beginsub, endsub, dbgmessage
8 implicit none
9 integer, intent(in):: fileid
10 logical, intent(out), optional:: err
11 type(GD_NC_FILE_ID_ENTRY), pointer:: identptr
12 character(*), parameter:: subname = "GDNcFileReopen"
13continue
14 call beginsub(subname, 'file=%d', i=(/fileid/))
17 do
18 if (identptr % id == fileid) then
19 identptr % count = identptr % count + 1
20 if (present(err)) err = .false.
21 call endsub(subname, 'count=%d', i=(/identptr % count/))
22 return
23 endif
24 identptr => identptr % next
25 if (.not. associated(identptr)) exit
26 enddo
27 endif
28 call storeerror(nf90_enotnc,
'GDNcFileReopen', err, cause_i=fileid)
29 call endsub(subname, 'err')
subroutine, public storeerror(number, where, err, cause_c, cause_i)
type(gd_nc_file_id_entry), pointer, save id_head