Determining UV Variables and Their Characteristics
Routine uvprobvr checks for the existence of a variable, and
returns information about it. The string varname, the variable name,
is input. The single character type is output, being either
`a', `r', `d', `c', `i', `j' or ` ' (a blank), which indicates (respectively)
that the variable is of type string (ascii),
real, double precision, complex, integer, short integer or (in the case of the
blank) that the variable is not present in the data-set.
The output integer length
gives the number of elements in the variable, and the output logical
update indicates whether the variable has been updated `recently' (see
Section 2.5.10).
Both length and update have no meaning if the variable is not
present in the data-set. Before a variable is first read,
length will be zero, and update will be .false..
There is no special routine to return a complete list of the variables
present in a uv data set, however this information is present in the
item ``vartable''. This is a text file with each line
consisting of two fields separated by a blank. The first is the ``type''
(either a, r, d, c, i or j) of the variable, the second is the variables name.
The following section of FORTRAN lists the variables present in a
uv data set.
character var*12,name*(?)
integer iostat,tno,item
call uvopen(tno,name,'old')
call haccess(tno,item,'vartable','read',iostat)
call hreada(item,var,iostat)
dowhile(iostat.eq.0)
call output(var(3:10))
call hreada(item,var,iostat)
enddo
call hdaccess(item,iostat)
call uvclose(tno)
Miriad manager
2011-08-19