67 & time_average, average, &
69 & origin_value, origin_unit, &
70 & terminus_value, terminus_unit, &
71 & slice_start, slice_end, slice_stride, &
73 & newfile_intvalue, newfile_intunit, &
82 character(*),
intent(in),
optional:: name
88 character(*),
intent(out),
optional:: file
91 real(DP),
intent(out),
optional:: interval_value
97 character(*),
intent(out),
optional:: interval_unit
100 character(*),
intent(out),
optional:: precision
103 logical,
intent(out),
optional:: time_average
106 logical,
intent(out),
optional:: average
109 character(*),
intent(out),
optional:: fileprefix
112 real(DP),
intent(out),
optional:: origin_value
115 character(*),
intent(out),
optional:: origin_unit
118 real(DP),
intent(out),
optional:: terminus_value
121 character(*),
intent(out),
optional:: terminus_unit
124 integer,
intent(out),
optional:: slice_start(:)
127 integer,
intent(out),
optional:: slice_end(:)
130 integer,
intent(out),
optional:: slice_stride(:)
133 logical,
intent(out),
optional:: space_average(:)
136 integer,
intent(out),
optional:: newfile_intvalue
139 character(*),
intent(out),
optional:: newfile_intunit
143 logical,
intent(out),
optional:: err
162 character(STRING):: name_work
163 integer:: stat, ary_size
164 character(STRING):: cause_c
165 character(*),
parameter:: subname =
'HstNmlInfoInquire'
175 if ( .not. gthstnml % initialized )
then
177 cause_c =
'GTHST_NMLINFO'
185 if (
present(name) )
then
190 hptr => gthstnml % gthstnml_list
194 if ( .not.
associated( hptr ) )
then
196 cause_c = adjustl( name_work )
200 if ( hptr % name ==
'' )
then
201 if (
present(file) ) file =
''
203 if (
present(file) ) file = trim( hptr % fileprefix ) // hptr % file
205 if (
present(interval_value) ) interval_value = hptr % interval_value
206 if (
present(interval_unit) ) interval_unit = hptr % interval_unit
207 if (
present(precision) ) precision = hptr % precision
208 if (
present(average) ) average = hptr % time_average
209 if (
present(time_average) ) time_average = hptr % time_average
210 if (
present(fileprefix) ) fileprefix = hptr % fileprefix
212 if (
present(origin_value ) ) origin_value = hptr % origin_value
213 if (
present(origin_unit ) ) origin_unit = hptr % origin_unit
214 if (
present(terminus_value ) ) terminus_value = hptr % terminus_value
215 if (
present(terminus_unit ) ) terminus_unit = hptr % terminus_unit
216 if (
present(slice_start ) )
then
217 ary_size =
size(slice_start)
218 slice_start = hptr % slice_start(1:ary_size)
220 if (
present(slice_end ) )
then
221 ary_size =
size(slice_end)
222 slice_end = hptr % slice_end(1:ary_size)
224 if (
present(slice_stride ) )
then
225 ary_size =
size(slice_stride)
226 slice_stride = hptr % slice_stride(1:ary_size)
228 if (
present(space_average ) )
then
229 ary_size =
size(space_average)
230 space_average = hptr % space_average(1:ary_size)
232 if (
present(newfile_intvalue) ) newfile_intvalue = hptr % newfile_intvalue
233 if (
present(newfile_intunit ) ) newfile_intunit = hptr % newfile_intunit
242 call storeerror( stat, subname, err, cause_c )
subroutine hstnmlinfoinquire(gthstnml, name, file, interval_value, interval_unit, precision, time_average, average, fileprefix, origin_value, origin_unit, terminus_value, terminus_unit, slice_start, slice_end, slice_stride, space_average, newfile_intvalue, newfile_intunit, err)
subroutine, public beginsub(name, fmt, i, r, d, l, n, c1, c2, c3, ca, version)
subroutine, public endsub(name, fmt, i, r, d, l, n, c1, c2, c3, ca)