Loading...
Searching...
No Matches
Functions/Subroutines
gtvartmpnam.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine gtvartmpnam (file, base, result)
 

Function/Subroutine Documentation

◆ gtvartmpnam()

subroutine gtvartmpnam ( character(len = *), intent(in)  file,
character(len = *), intent(in)  base,
character(len = *), intent(out)  result 
)

Definition at line 14 of file gtvartmpnam.f90.

15 !
16 !== 変数名の自動作成
17 !
18 ! ファイル名 *file* と変数名 *base* から <b>file@base</b> を
19 ! 作成して *result* に返す。
20 ! *file* が空文字の場合は <b>gtool.nc</b> がファイル名として代用され、
21 ! *base* が空文字の場合は <b>tmp</b> が変数名として代用される。
22 !
23 use dc_types, only: string
24 use dc_url, only: urlmerge
25 use gtdata_generic, only: open, close
26 use gtdata_types, only: gt_variable
27 implicit none
28 character(len = *), intent(in):: file
29 character(len = *), intent(in):: base
30 character(len = *), intent(out):: result
31 type(GT_VARIABLE):: var
32 integer:: n
33 logical:: failed
34 character(len = STRING):: fnam, vnam, vnambase
35continue
36 if (file == "") then
37 fnam = "gtool.nc"
38 else
39 fnam = file
40 endif
41 if (base == "") then
42 vnambase = "tmp"
43 else
44 vnambase = base
45 endif
46 n = 0
47 do
48 n = n + 1
49 ! compatibility note (2001-12-02, TOYODA Eizi)
50 ! dc_string の toChar を使いたいのだが FQS Fortran が失敗する
51 write(unit=vnam, fmt="(i32)") n
52 vnam = trim(vnambase) // trim(adjustl(vnam))
53 result = urlmerge(file=fnam, var=vnam)
54 call open(var, result, writable=.false., err=failed)
55 if (failed) return
56 call close(var)
57 enddo
Provides kind type parameter values.
Definition dc_types.f90:49
integer, parameter, public string
Character length for string
Definition dc_types.f90:118

References dc_types::string.