Previous: Low-Level Table Access Subroutines
Up: FITS ASCII and Binary Table Data I/O Subroutines
Previous Page: Low-Level Table Access Subroutines
Next Page: General Utility Subroutines
These subroutines put or get data values in the current ASCII or Binary table
extension. Automatic data type conversion is performed for numerical data
types (B,I,J,E,D) if the data type of the column (defined by the TFORM keyword)
differs from the data type of the calling subroutine. The data values are also
scaled by the TSCALnnn and TZEROnnn header values as they are being written to
or read from the FITS array. The fttscl subroutine MUST be used to define the
scaling parameters when writing data to the table or to override the default
scaling values given in the header
when reading from the table.
In the case of binary tables with vector elements, the 'felem'
parameter defines the starting pixel within the element vector. This
parameter is ignored with ASCII tables. Similarly, in the case of
binary tables the 'nelements' parameter specifies the total number of
vector values read or written (continuing on subsequent rows if
required) and not the number of table elements. Two sets of
subroutines are provided to get the column data which differ in the way
undefined pixels are handled. The first set of routines (FTGCV)
simply return an array of data elements in which undefined pixels are
set equal to a value specified by the user in the 'nullval' parameter.
An additional feature of these subroutines is that if the user sets
nullval = 0, then no checks for undefined pixels will be performed,
thus increasing the speed of the program. The second set of routines
(FTGCF) returns the data element array and in addition a logical array
of flags which defines whether the corresponding data pixel is undefined.
- 1
- Put elements into an ASCII or binary table column (in the CDU).
(The SPP FSPCLS routine has an additional integer argument after
the VALUES character string which specifies the size of the 1st
dimension of this 2-D CHAR array).
FTPCL[SLBIJEDCM](unit,colnum,frow,felem,nelements,values, > status)
- 2
- Put bit values into a binary byte ('B') or bit ('X') table column (in the
CDU). LRAY is an array of logical values corresponding to the sequence of
bits to be written. If LRAY is true then the corresponding bit is
set to 1, otherwise the bit is set to 0.
FTPCLX(unit,colnum,frow,fbit,nbit,lray, > status)
- 3
- Set table elements in a column as undefined
FTPCLU(unit,colnum,frow,felem,nelements, > status)
- 4
- Get elements from an ASCII or binary table column (in the CDU). These
routines return the values of the table column array elements. Undefined
array elements will be returned with a value = nullval, unless nullval = 0
(or = ' ' for ftgcvs) in which case no checking for undefined values will
be performed. The ANYF parameter is set to true if any of the returned
elements are undefined. (Note: the ftgcl routine simple gets an array
of logical data values without any checks for undefined values; use
the ftgcfl routine to check for undefined logical elements).
(The SPP FSGCVS routine has an additional integer argument after
the VALUES character string which specifies the size of the 1st
dimension of this 2-D CHAR array).
FTGCL(unit,colnum,frow,felem,nelements, > values,status)
FTGCV[SBIJEDCM](unit,colnum,frow,felem,nelements,nullval, >
values,anyf,status)
- 5
- Get elements and null flags from an ASCII or binary table column (in the
CHDU). These routines return the values of the table column array elements.
Any undefined array elements will have the corresponding flagvals element
set equal to .TRUE. The ANYF parameter is set to true if any of the
returned elements are undefined.
(The SPP FSGCFS routine has an additional integer argument after
the VALUES character string which specifies the size of the 1st
dimension of this 2-D CHAR array).
FTGCF[SLBIJEDCM](unit,colnum,frow,felem,nelements, >
values,flagvals,anyf,status)
- 6
- Get an arbitrary data subsection from an N-dimensional array
in a binary table vector column. Undefined pixels
in the array will be set equal to the value of 'nullval',
unless nullval=0 in which case no testing for undefined pixels will
be performed. The first and last rows in the table to be read
are specified by fpixels(naxis+1) and lpixels(naxis+1), and hence
are treated as the next higher dimension of the FITS N-dimensional
array. The INCS parameter specifies the sampling interval in
each dimension between the data elements that will be returned.
FTGSV[BIJED](unit,colnum,naxis,naxes,fpixels,lpixels,incs,nullval, >
array,anyf,status)
- 7
- Get an arbitrary data subsection from an N-dimensional array
in a binary table vector column. Any Undefined
pixels in the array will have the corresponding 'flagvals'
element set equal to .TRUE. The first and last rows in the table
to be read are specified by fpixels(naxis+1) and lpixels(naxis+1),
and hence are treated as the next higher dimension of the FITS
N-dimensional array. The INCS parameter specifies the sampling
interval in each dimension between the data elements that will be
returned.
FTGSF[BIJED](unit,colnum,naxis,naxes,fpixels,lpixels,incs, >
array,flagvals,anyf,status)
- 8
- Get bit values from a binary byte ('B') or bit (`X`) table column (in the
CDU). LRAY is an array of logical values corresponding to the sequence of
bits to be read. If LRAY is true then the corresponding bit was
set to 1, otherwise the bit was set to 0.
FTGCX(unit,colnum,frow,fbit,nbit, > lray,status)
- 9
- Get the descriptor for a variable length column in a binary table.
The descriptor consists of 2 integer parameters: the number of elements
in the array and the starting offset relative to the start of the heap.
FTGDES(unit,colnum,rownum, > nelements,offset,status)
- 10
- Put the descriptor for a variable length column in a binary table.
This subroutine can be used in conjunction with FTGDES to enable
2 or more arrays to point to the same storage location to save
storage space if the arrays are identical.
FTPDES(unit,colnum,rownum,nelements,offset, > status)
Previous: Low-Level Table Access Subroutines
Up: FITS ASCII and Binary Table Data I/O Subroutines
Previous Page: Low-Level Table Access Subroutines
Next Page: General Utility Subroutines