24 use dc_string
, only: printf
25 use dc_trace
, only: beginsub, endsub
29 type(dc_datetime),
intent(in) :: time
30 integer,
intent(in),
optional :: unit
36 character(*),
intent(in),
optional:: indent
43 character(STRING):: indent_str
44 character(*),
parameter :: subname =
'DCDateTimePutLine' 46 call beginsub(subname)
47 if (
present(unit))
then 55 if (
present(indent) )
then 56 if ( len(indent) /= 0 )
then 57 indent_len = len(indent)
58 indent_str(1:indent_len) = indent
62 call printf(out_unit, &
63 & indent_str(1:indent_len) // &
64 &
'#<DC_DATETIME:: @date=%c @caltype=%d @zone=%c', &
65 & i=(/time % caltype/), c1=trim(
tochar(time)), c2=trim(time % zone) )
67 call printf(out_unit, &
68 & indent_str(1:indent_len) // &
71 & indent = indent_str(1:indent_len) // &
74 call printf(out_unit, &
75 & indent_str(1:indent_len) // &
78 & indent = indent_str(1:indent_len) // &
81 call printf(out_unit, &
82 & indent_str(1:indent_len) //
'>' )
100 use dc_string
, only: printf
101 use dc_trace
, only: beginsub, endsub
105 type(dc_difftime),
intent(in) :: diff
106 integer,
intent(in),
optional :: unit
112 character(*),
intent(in),
optional:: indent
119 character(STRING):: indent_str
120 character(*),
parameter :: subname =
'DCDiffTimePutLine' 122 call beginsub(subname)
123 if (
present(unit))
then 131 if (
present(indent) )
then 132 if ( len(indent) /= 0 )
then 133 indent_len = len(indent)
134 indent_str(1:indent_len) = indent
138 call printf(out_unit, &
139 & indent_str(1:indent_len) // &
140 &
'#<DC_DIFFTIME:: @diff=%c @nondim=%b', &
141 & c1 = trim(
tochar(diff)), l = (/ diff % nondim_flag /) )
143 call printf(out_unit, &
144 & indent_str(1:indent_len) // &
147 & indent = indent_str(1:indent_len) // &
150 call printf(out_unit, &
151 & indent_str(1:indent_len) // &
154 & indent = indent_str(1:indent_len) // &
157 call printf(out_unit, &
158 & indent_str(1:indent_len) // &
161 & indent = indent_str(1:indent_len) // &
164 call printf(out_unit, &
165 & indent_str(1:indent_len) //
'>' )
178 type(dc_datetime),
intent(in) :: time
179 integer,
intent(in),
optional :: unit
187 type(dc_difftime),
intent(in) :: diff
188 integer,
intent(in),
optional :: unit
subroutine dcdatetimeputline(time, unit, indent)
subroutine dcdifftimeputline(diff, unit, indent)
subroutine dcdifftimeputline_bc(diff, unit)
subroutine dcdatetimeputline_bc(time, unit)
integer, parameter, public stdout
Unit number for Standard OUTPUT.
Provides kind type parameter values.
subroutine, public dcscaledsecputline(sclsec, unit, indent)
integer, parameter, public string
Character length for string.