11 & name, dims, longname, units, xtype )
37 logical,
intent(out),
optional:: err
38 character(*) ,
intent(in),
optional:: name
39 character(*) ,
intent(in),
optional,
target:: dims(:)
40 character(*) ,
intent(in),
optional:: longname
41 character(*) ,
intent(in),
optional:: units
42 character(*) ,
intent(in),
optional:: xtype
45 character(STRING):: cause_c
46 character(TOKEN),
pointer :: srcdims(:) =>null()
47 character(*),
parameter:: subname =
"HistoryVarinfoCopy1" 53 if ( .not. varinfo_src % initialized )
then 55 cause_c =
'GT_HISTORY_VARINFO' 59 if ( varinfo_dest % initialized )
then 61 cause_c =
'GT_HISTORY_VARINFO' 66 varinfo_dest % longname =
present_select(
'', varinfo_src % longname, longname)
67 varinfo_dest % units =
present_select(
'', varinfo_src % units, units)
68 varinfo_dest % xtype =
present_select(
'', varinfo_src % xtype, xtype)
70 if (
present(dims))
then 73 srcdims => varinfo_src % dims
79 allocate( varinfo_dest % dims(
size( srcdims ) ) )
80 do i = 1,
size(srcdims)
81 varinfo_dest % dims(i) = srcdims(i)
85 & c1=trim(
joinchar(varinfo_dest % dims)))
87 if (
associated( varinfo_src % attrs ) )
then 88 allocate( varinfo_dest % attrs(
size( varinfo_src % attrs) ) )
90 & to = varinfo_dest % attrs, err = err)
93 varinfo_dest % initialized = .true.
100 & name, dims, longname, units, xtype )
116 logical,
intent(out),
optional:: err
117 character(*) ,
intent(in),
optional:: name
118 character(*) ,
intent(in),
optional,
target:: dims(:)
119 character(*) ,
intent(in),
optional:: longname
120 character(*) ,
intent(in),
optional:: units
121 character(*) ,
intent(in),
optional:: xtype
123 character(*),
parameter:: subname =
"HistoryVarinfoCopy2" 127 & name, dims, longname, units, xtype )
type(gt_history), target, save, public default
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
subroutine historyvarinfocopy2(varinfo_dest, varinfo_src, err, name, dims, longname, units, xtype)
character(string) function, public joinchar(carray, expr)
subroutine, public dbgmessage(fmt, i, r, d, L, n, c1, c2, c3, ca)
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
Handling character types.
Provides kind type parameter values.
subroutine historyvarinfocopy1(varinfo_dest, varinfo_src, err, name, dims, longname, units, xtype)
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
integer, parameter, public dc_ealreadyinit
integer, parameter, public string
Character length for string.