73 class(ArrayReaderBaseType) :: this
74 logical(LGP) :: endOfBlock
75 character(len=100) :: keyword
76 character(len=MAXCHARLEN) :: string
79 call this%parser%GetNextLine(endofblock)
80 call this%parser%GetStringCaps(keyword)
85 this%isConstant = .true.
86 call this%set_constant()
88 this%isInternal = .true.
90 this%isOpenClose = .true.
91 call this%parser%GetString(string)
92 this%filename = trim(string)
94 write (errmsg, *)
'Error reading control record for '// &
95 trim(adjustl(this%array_name))//
'. &
96 & Use CONSTANT, INTERNAL, or OPEN/CLOSE.'
97 call store_error(errmsg)
98 call this%parser%StoreErrorUnit()
102 if (this%isInternal .or. this%isOpenClose)
then
104 call this%parser%GetStringCaps(keyword)
105 if (keyword ==
'')
exit
106 select case (keyword)
108 call this%set_factor()
110 this%iprn = this%parser%GetInteger()
112 this%isBinary = .true.