| Path: | gtvardelattr.f90 |
| Last Update: | Tue Sep 23 18:56:15 +0900 2008 |
| Authors: | Eizi TOYODA, Yasuhiro MORIKAWA |
| Version: | $Id: gtvardelattr.f90,v 1.1.1.1 2008-09-23 09:56:15 morikawa Exp $ |
| Tag Name: | $Name: gtool5-20081005 $ |
| Copyright: | Copyright (C) GFD Dennou Club, 2000-2005. All rights reserved. |
| License: | See COPYRIGHT |
以下のサブルーチン、関数は gtdata_generic から gtdata_generic#Del_Attr として提供されます。
| Subroutine : | |
| var : | type(GT_VARIABLE), intent(inout) |
| name : | character(len = *), intent(in) |
| err : | logical, intent(out), optional |
変数 var の属性 name を削除します。
属性の削除時にエラーが生じた場合、メッセージを出力 してプログラムは強制終了します。err を与えてある場合には の引数に .true. が返り、プログラムは終了しません。
subroutine GTVarDelAttr(var, name, err)
!
!== 属性の削除
!
! 変数 *var* の属性 *name* を削除します。
!
! 属性の削除時にエラーが生じた場合、メッセージを出力
! してプログラムは強制終了します。*err* を与えてある場合には
! の引数に .true. が返り、プログラムは終了しません。
!
use gtdata_types, only: GT_VARIABLE
use gt_map, only: var_class, vtb_class_netcdf, vtb_class_memory
use an_generic, only: del_attr, an_variable
use gt_mem, only: del_attr, mem_variable
use dc_error, only: GT_EBADVAR, StoreError
implicit none
type(GT_VARIABLE), intent(inout):: var
character(len = *), intent(in):: name
logical, intent(out), optional:: err
integer:: class, cid
continue
call var_class(var, class, cid)
if (class == vtb_class_netcdf) then
call del_attr(an_variable(cid), name, err)
else if (class == vtb_class_memory) then
call del_attr(mem_variable(cid), name, err)
else
call StoreError(GT_EBADVAR, 'GTVarDelAttr', err)
endif
end subroutine GTVarDelAttr