Package uk.ac.starlink.fits

# Interface FitsTableSerializer

All Known Implementing Classes:
  `ColFitsTableSerializer`, `StandardFitsTableSerializer`, `VariableFitsTableSerializer`

public interface FitsTableSerializer
Defines an object which can serialize a table to a FITS HDU.

Since:
  27 Jun 2006
Author:
  Mark Taylor

## Method Summary

Modifier and Type
Method
Description
`String`
`getBadValue(int icol)`
Returns the bad value (text of the TNULLnn card), if any, used for a given column.
`int[]`
`getDimensions(int icol)`
Returns the dimensions of the items which will be output for a given column.
`char`
`getFormatChar(int icol)`
Returns the FITS TFORM letter which describes the type of data output for a given column.
`CardImage[]`
`getHeader()`
Returns header cards suitable for the HDU which will contain the table.
`long`
`getRowCount()`
Returns the number of rows which will be output.
`void`
`writeData(DataOutput out)`
Writes the HDU data for the table to an output stream.

## Method Details

### getHeader

CardImage[] getHeader()
Returns header cards suitable for the HDU which will contain the table. Additional metadata and an END marker will be added after these cards, so the returned array must not contain the END card.

Returns:
  header cards

### writeData

void writeData(DataOutput out) throws IOException
Writes the HDU data for the table to an output stream. This is only intended to be called once following creation of this object. Subsequent calls result in undefined behaviour.

Parameters:
  `out` - destination stream
Throws:
  `IOException`

### getRowCount

long getRowCount()
Returns the number of rows which will be output.

Returns:
  row count

### getDimensions

int[] getDimensions(int icol)
Returns the dimensions of the items which will be output for a given column. This will be `null` only if that column is not being output. Otherwise it will be a zero-element array for a scalar, 1-element array for a vector, etc.

Parameters:
  `icol` - column to query
Returns:
  dimensions array for data in column `icol` or `null` for a column being skipped

### getFormatChar

char getFormatChar(int icol)
Returns the FITS TFORM letter which describes the type of data output for a given column. This is as described by the FITS standard - 'J' for 4-byte integer, 'A' for characters, etc. If the column is not being output, `(char)0` will be returned.

Parameters:
  `icol` - column to query
Returns:
  format letter for data in column `icol`, or 0 for a column being skipped

### getBadValue

String getBadValue(int icol)
Returns the bad value (text of the TNULLnn card), if any, used for a given column.

Parameters:
  `icol` - column to query
Returns:
  blank value string, or null if there is none or the column is being skipped