gtvarsearch.f90
Go to the documentation of this file.
1 !
2 != 変数探査
3 !
4 ! Authors:: Yasuhiro MORIKAWA, Eizi TOYODA
5 ! Version:: $Id: gtvarsearch.f90,v 1.4 2009-05-29 15:03:49 morikawa Exp $
6 ! Tag Name:: $Name: $
7 ! Copyright:: Copyright (C) GFD Dennou Club, 2000-2005. All rights reserved.
8 ! License:: See COPYRIGHT[link:../../COPYRIGHT]
9 !
10 ! 以下のサブルーチン、関数は gtdata_generic から gtdata_generic#GTVarSearch
11 ! として提供されます。
12 !
13 
14 subroutine gtvarsearchnext(url, end)
15  !
16  !== 変数探査サブルーチン
17  !
18  ! あるファイル名 urlBase に依存する変数すべてを取得するには、
19  ! まず GTVarSearch(urlBase) (下記のサブルーチン) を呼び出し、
20  ! その後無限ループの中で GTVarSearch(url, end) を呼び出します。
21  ! そうすることで url に1つ1つの変数名が返ります。
22  ! *end* が真になったとき、すべての変数名を探索し終えたことになります。
23  !
24  !=== 例
25  !
26  ! use gtool5
27  ! character(len = STRING) :: filename, varname
28  ! logical :: end
29  !
30  ! write(*,*) "Enter file name: "
31  ! read(*,*) filename
32  !
33  ! call GTVarSearch(filename)
34  ! do
35  ! call GTVarSearch(varname, end)
36  ! if (end) exit
37  ! write(*, *) trim(varname)
38  ! enddo
39  !
42  use dc_trace, only: beginsub, endsub
43  implicit none
44  character(len = *), intent(out):: url
45  logical, intent(out):: end
46 continue
47  call beginsub('gtvarsearchnext')
48  call var_search(gdnc_search, & ! (inout)
49  & url=url, end=end) ! (out)
50  call endsub('gtvarsearchnext', 'url=%c end=%y', c1=trim(url), l=(/end/))
51 end subroutine gtvarsearchnext
52 
53 subroutine gtvarsearchinit(urlBase)
54  !
55  !== 変数探査初期化サブルーチン
56  !
57  ! 上記の GTVarSearch を参照してください。
58  !
61  use dc_trace, only: beginsub, endsub
62  implicit none
63  character(len = *), intent(in):: urlBase
64 continue
65  call beginsub('gtvarsearchinit', 'urlbase=<%c>', c1=trim(urlbase))
66  call var_search(gdnc_search, & ! (out)
67  & urlbase = urlbase ) ! (in)
68  call endsub('gtvarsearchinit')
69 end subroutine gtvarsearchinit
type(gd_nc_variable_search), save, public gdnc_search
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
subroutine gtvarsearchnext(url, end)
Definition: gtvarsearch.f90:15
subroutine gtvarsearchinit(urlBase)
Definition: gtvarsearch.f90:54
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446