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)