36 integer(I4B) :: structarray_col
39 character(LINELENGTH) :: token
52 integer(I4B) :: memtype = 0
53 integer(I4B) :: icol = 0
54 integer(I4B) :: size = 0
55 integer(I4B) :: head_nbody = 0
56 integer(I4B) :: body_start = 0
58 character(len=LENVARNAME) :: varname_override =
''
60 integer(I4B),
dimension(:),
pointer,
contiguous :: int1d => null()
61 integer(I4B),
dimension(:, :),
pointer,
contiguous :: int2d => null()
62 real(dp),
dimension(:),
pointer,
contiguous :: dbl1d => null()
63 real(dp),
dimension(:, :),
pointer,
contiguous :: dbl2d => null()
67 logical(LGP) :: intvector_ragged = .false.
70 integer(I4B),
pointer :: intshape => null()
71 integer(I4B),
dimension(:),
pointer,
contiguous :: intvector_shape => null()
83 function sv_read_token(this, token, structarray_col, col, row)
result(val)
85 character(len=*),
intent(in) :: token
86 integer(I4B),
intent(in) :: structarray_col
87 integer(I4B),
intent(in) :: col
88 integer(I4B),
intent(in) :: row
94 read (token, *, iostat=istat) r
98 call this%add_ts_strloc(token, structarray_col, col, row)
104 character(len=*),
intent(in) :: token
105 integer(I4B),
intent(in) :: structarray_col
106 integer(I4B),
intent(in) :: col
107 integer(I4B),
intent(in) :: row
109 class(*),
pointer :: obj
111 str_field%structarray_col = structarray_col
114 str_field%token = token
116 call this%ts_strlocs%Add(obj)
121 integer(I4B),
intent(in) :: idx
123 class(*),
pointer :: obj
127 obj => this%ts_strlocs%GetItem(idx)
128 if (
associated(obj))
then
142 do n = 1, this%ts_strlocs%Count()
143 ts_strloc => this%get_ts_strloc(n)
144 deallocate (ts_strloc)
147 call this%ts_strlocs%Clear()
This module contains simulation constants.
integer(i4b), parameter linelength
maximum length of a standard line
real(dp), parameter dnodata
real no data constant
integer(i4b), parameter lentimeseriesname
maximum length of a time series name
integer(i4b), parameter lenvarname
maximum length of a variable name
integer(i4b), parameter lenmempath
maximum length of the memory path
This module defines variable data types.
This module contains the StructVectorModule.
@, public mtype_intvec
intvector column
class(tsstringloctype) function, pointer sv_get_ts_strloc(this, idx)
@, public mtype_dbl
dbl1d column
real(dp) function sv_read_token(this, token, structarray_col, col, row)
@, public mtype_int2d
int2d (NCELLDIM) column
@, public mtype_int
int1d column
@, public mtype_dbl2d
dbl2d (NAUX/NSEG) column
@, public mtype_str
charstr1d column
@, public mtype_undef
undefined memtype
subroutine sv_add_ts_strloc(this, token, structarray_col, col, row)
subroutine sv_clear(this)
This class is used to store a single deferred-length character string. It was designed to work in an ...
A generic heterogeneous doubly-linked list.
derived type for generic vector
derived type which describes time series string field