gtool5 Fortran 90/95 ライブラリ 1.0.0-rc5
English
Loading...
Searching...
No Matches
gdncvardelattr.f90 File Reference

netCDF 変数から属性を削除 More...

Go to the source code of this file.

Functions/Subroutines

subroutine gdncvardelattr (var, name, err)

Detailed Description

netCDF 変数から属性を削除

Author
GFD Dennou Club

Definition in file gdncvardelattr.f90.

Function/Subroutine Documentation

◆ gdncvardelattr()

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

指定された属性を削除

変数から属性を削除します。名前が '+' で始まる場合、 グローバル属性として扱われます。

Parameters
[in]var変数ハンドル
[in]name属性名
[out]errエラーフラグ (省略可能)

Definition at line 35 of file gdncvardelattr.f90.

39 use netcdf, only: nf90_noerr, nf90_del_att, nf90_global, nf90_enotindefine
40 use dc_url, only: gt_plus
41 use dc_error
42 implicit none
43 type(GD_NC_VARIABLE), intent(in):: var
44 character(len = *), intent(in):: name
45 logical, intent(out), optional:: err
46 type(GD_NC_VARIABLE_ENTRY):: ent
47 integer:: stat
48continue
49 stat = vtable_lookup(var, ent)
50 if (stat /= nf90_noerr) goto 999
51 stat = nf90_del_att(ent%fileid, ent%varid, name=name)
52 if (stat == 0) goto 999
53 if (stat /= nf90_enotindefine) goto 999
54 stat = gdncfiledefinemode(ent%fileid)
55 if (stat /= nf90_noerr) goto 999
56 if (name(1:1) == gt_plus) then
57 stat = nf90_del_att(ent%fileid, nf90_global, name=name(2:))
58 else
59 stat = nf90_del_att(ent%fileid, ent%varid, name=name)
60 endif
61
62999 continue
63 call storeerror(stat, 'GDNcVarPutAttrChar', err)
エラー処理用モジュール
Definition dc_error.f90:454
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition dc_error.f90:891
変数 URL の文字列解析
Definition dc_url.f90:61
character, parameter, public gt_plus
Definition dc_url.f90:109
integer function, public vtable_lookup(var, entry)

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

Here is the call graph for this function: