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

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.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(java.io.DataOutput out)` Writes the HDU data for the table to an output stream.

- - ### Method Detail

    - #### 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(java.io.DataOutput out)
                  throws java.io.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:
        `java.io.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

          java.lang.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