29 integer,
intent(in),
optional:: unit
35 character(*),
intent(in),
optional:: indent
39 logical,
intent(out),
optional:: err
59 character(STRING):: cause_c
62 character(STRING):: indent_str
63 character(*),
parameter:: subname =
'HstNmlInfoPutLine' 73 if (
present(unit) )
then 81 if (
present(indent) )
then 82 if ( len(indent) /= 0 )
then 83 indent_len = len(indent)
84 indent_str(1:indent_len) = indent
92 if ( gthstnml % initialized )
then 94 & indent_str(1:indent_len) // &
95 &
'#<GTHST_NMLINFO:: @initialized=%y define_mode=%y', &
96 & l = (/gthstnml % initialized, gthstnml % define_mode/) )
98 hptr => gthstnml % gthstnml_list
100 do while (
associated( hptr ) )
103 & indent_str(1:indent_len) // &
104 &
' #<GTHST_NMLINFO_ENTRY:: @name=%c @file=%c', &
105 & c1 = trim(hptr % name), &
106 & c2 = trim(hptr % file) )
109 & indent_str(1:indent_len) // &
110 &
' @interval_value=%r @interval_unit=%c', &
111 & r = (/hptr % interval_value/), &
112 & c1 = trim(hptr % interval_unit) )
115 & indent_str(1:indent_len) // &
116 &
' @output_step_disable=%y', &
117 & l = (/hptr % output_step_disable/) )
120 & indent_str(1:indent_len) // &
121 &
' @precision=%c @time_average=%y', &
122 & c1 = trim(hptr % precision), &
123 & l = (/ hptr % time_average /) )
126 & indent_str(1:indent_len) // &
127 &
' @fileprefix=%c', &
128 & c1 = trim(hptr % fileprefix) )
131 & indent_str(1:indent_len) // &
132 &
' @origin_value=%r @origin_unit=%c', &
133 & r = (/hptr % origin_value/), &
134 & c1 = trim(hptr % origin_unit) )
137 & indent_str(1:indent_len) // &
138 &
' @terminus_value=%r @terminus_unit=%c', &
139 & r = (/hptr % terminus_value/), &
140 & c1 = trim(hptr % terminus_unit) )
143 & indent_str(1:indent_len) // &
144 &
' @slice_start=%*d ...', &
145 & i = (/hptr % slice_start(1:10)/), n = (/ 10 /) )
148 & indent_str(1:indent_len) // &
149 &
' @slice_end=%*d ...', &
150 & i = (/hptr % slice_end(1:10)/), n = (/ 10 /) )
153 & indent_str(1:indent_len) // &
154 &
' @slice_stride=%*d ...', &
155 & i = (/hptr % slice_stride(1:10)/), n = (/ 10 /) )
158 & indent_str(1:indent_len) // &
159 &
' @space_average=%*b ...', &
160 & l = (/hptr % space_average(1:10)/), n =(/ 10 /) )
163 & indent_str(1:indent_len) // &
164 &
' @newfile_intvalue=%d @newfile_intunit=%c', &
165 & i = (/hptr % newfile_intvalue/), &
166 & c1 = trim(hptr % newfile_intunit) )
168 if ( .not. gthstnml % define_mode )
then 170 & indent_str(1:indent_len) // &
175 & indent = indent_str(1:indent_len) // &
179 call listnext( gthstnml_list = hptr )
183 & indent_str(1:indent_len) // &
187 & indent_str(1:indent_len) // &
191 & indent_str(1:indent_len) // &
192 &
'#<GTHST_NMLINFO:: @initialized=%y>', &
193 & l = (/gthstnml % initialized/) )
201 call storeerror( stat, subname, err, cause_c )
integer, parameter, public dc_enotinit
integer, parameter, public token
Character length for word, token.
subroutine, public storeerror(number, where, err, cause_c, cause_i)
integer, parameter, public dc_noerr
character(string) function, public joinchar(carray, expr)
integer, parameter, public dp
Double Precision Real number.
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
integer, parameter, public stdout
Unit number for Standard OUTPUT.
Handling character types.
Provides kind type parameter values.
subroutine hstnmlinfoputline(gthstnml, unit, indent, err)
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
integer, parameter, public string
Character length for string.