historyvarinfoinquire.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine historyvarinfoinquire1 (varinfo, name, dims, longname, units, xtype, time_average, average, err)
 
subroutine historyvarinfoinquire2 (varinfo, name, dims, longname, units, xtype, time_average, average, err)
 

Function/Subroutine Documentation

◆ historyvarinfoinquire1()

subroutine historyvarinfoinquire1 ( type(gt_history_varinfo), intent(in)  varinfo,
character(*), intent(out), optional  name,
character(*), dimension(:), optional, pointer  dims,
character(*), intent(out), optional  longname,
character(*), intent(out), optional  units,
character(*), intent(out), optional  xtype,
logical, intent(out), optional  time_average,
logical, intent(out), optional  average,
logical, intent(out), optional  err 
)

Definition at line 14 of file historyvarinfoinquire.f90.

References dc_trace::beginsub(), dc_trace::dbgmessage(), dc_error::dc_enotinit, dc_error::dc_noerr, gtool_history_internal::default, dc_types::dp, dc_trace::endsub(), dc_error::storeerror(), dc_types::string, and dc_types::token.

14  !
15  !== GT_HISTORY_VARINFO 型変数への問い合わせ
16  !
17  ! GT_HISTORY_VARINFO 型の変数内の各情報を参照します。
18  !
19  ! dims はポインタ配列です。空状態にして与えてください。
20  !
21  use dc_types, only: string, token, dp
22  use dc_trace, only: beginsub, endsub, dbgmessage
26  implicit none
27  type(gt_history_varinfo),intent(in) :: varinfo
28  character(*), intent(out), optional:: name ! 変数名
29  character(*), pointer, optional:: dims(:) !(out) 依存する次元
30  character(*), intent(out), optional:: longname ! 変数の記述的名称
31  character(*), intent(out), optional:: units ! 変数の単位
32  character(*), intent(out), optional:: xtype ! 変数の型
33  logical, intent(out), optional:: time_average ! 時間平均
34  logical, intent(out), optional:: average ! 時間平均 (後方互換用)
35  logical, intent(out), optional:: err
36  ! 例外処理用フラグ.
37  ! デフォルトでは, この手続き内でエラーが
38  ! 生じた場合, プログラムは強制終了します.
39  ! 引数 *err* が与えられる場合,
40  ! プログラムは強制終了せず, 代わりに
41  ! *err* に .true. が代入されます.
42  !
43  ! Exception handling flag.
44  ! By default, when error occur in
45  ! this procedure, the program aborts.
46  ! If this *err* argument is given,
47  ! .true. is substituted to *err* and
48  ! the program does not abort.
49 
50  ! Internal Work
51  integer:: i, numdims, stat
52  character(STRING):: cause_c
53  character(*), parameter:: subname = "HistoryVarinfoInquire1"
54  continue
55  call beginsub(subname)
56  stat = dc_noerr
57  cause_c = ''
58 
59  if ( .not. varinfo % initialized ) then
60  stat = dc_enotinit
61  cause_c = 'GT_HISTORY_VARINFO'
62  goto 999
63  end if
64  if (present(name)) name = varinfo % name
65  if (present(dims)) then
66  numdims = size(varinfo % dims)
67  allocate(dims(numdims))
68  do i = 1, numdims
69  dims(i) = varinfo % dims(i)
70  end do
71  end if
72  if ( present(longname) ) longname = varinfo % longname
73  if ( present(units) ) units = varinfo % units
74  if ( present(xtype) ) xtype = varinfo % xtype
75  if ( present(time_average) ) time_average = varinfo % time_average
76  if ( present(average) ) average = varinfo % time_average
77 
78 999 continue
79  call storeerror(stat, subname, err, cause_c=cause_c)
80  call endsub(subname)
type(gt_history), target, save, public default
integer, parameter, public dc_enotinit
Definition: dc_error.f90:557
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
Definition: dc_types.f90:109
subroutine, public storeerror(number, where, err, cause_c, cause_i)
Definition: dc_error.f90:830
integer, parameter, public dc_noerr
Definition: dc_error.f90:509
integer, parameter, public dp
倍精度実数型変数
Definition: dc_types.f90:83
subroutine, public dbgmessage(fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:509
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
種別型パラメタを提供します。
Definition: dc_types.f90:49
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ
Definition: dc_types.f90:118
Here is the call graph for this function:

◆ historyvarinfoinquire2()

subroutine historyvarinfoinquire2 ( type(gt_history_varinfo), intent(in)  varinfo,
character(*), intent(out), optional  name,
character(*), dimension(:), optional, pointer  dims,
character(*), intent(out), optional  longname,
character(*), intent(out), optional  units,
character(*), intent(out), optional  xtype,
logical, intent(out), optional  time_average,
logical, intent(out), optional  average,
logical, intent(out), optional  err 
)

Definition at line 87 of file historyvarinfoinquire.f90.

References dc_trace::beginsub(), dc_trace::dbgmessage(), and dc_trace::endsub().

87  !
88  ! 使用方法は HistoryVarinfoInquire と同様です.
89  !
90  ! Usage is same as "HistoryVarinfoInquire".
91  !
92  !--
93  ! 総称名 Inquire として提供するためのサブルーチンです.
94  ! 機能は HistoryVarinfoInquire1 と同じです.
95  !++
96  !
99  use dc_trace, only: beginsub, endsub, dbgmessage
100  implicit none
101  type(gt_history_varinfo),intent(in) :: varinfo
102  character(*), intent(out), optional:: name ! 変数名
103  character(*), pointer, optional:: dims(:) !(out) 依存する次元
104  character(*), intent(out), optional:: longname ! 変数の記述的名称
105  character(*), intent(out), optional:: units ! 変数の単位
106  character(*), intent(out), optional:: xtype ! 変数の型
107  logical, intent(out), optional:: time_average ! 時間平均
108  logical, intent(out), optional:: average ! 時間平均 (後方互換用)
109  logical, intent(out), optional:: err
110  character(*), parameter:: subname = "HistoryVarinfoInquire2"
111  continue
112  call beginsub(subname)
113  call historyvarinfoinquire( varinfo, &
114  & name, dims, longname, units, xtype, &
115  & time_average, average, err )
116  call endsub(subname)
subroutine, public dbgmessage(fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:509
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Definition: dc_trace.f90:351
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
Definition: dc_trace.f90:446
Here is the call graph for this function: