Class ColFitsTableSerializer

  • All Implemented Interfaces:
    FitsTableSerializer

    public class ColFitsTableSerializer
    extends java.lang.Object
    implements FitsTableSerializer
    Object which can serialize a StarTable to a data stream as a one-row FITS file in which each element contains an entire column of the table.
    Since:
    26 Jun 2006
    Author:
    Mark Taylor
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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)
      Write the FITS data unit populated by this serializer.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ColFitsTableSerializer

        public ColFitsTableSerializer​(FitsTableSerializerConfig config,
                                      uk.ac.starlink.table.StarTable table)
                               throws java.io.IOException
        Constructor.
        Parameters:
        config - configuration
        table - table to serialize
        Throws:
        java.io.IOException - if it won't be possible to write the given table
    • Method Detail

      • getHeader

        public CardImage[] getHeader()
        Description copied from interface: FitsTableSerializer
        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.
        Specified by:
        getHeader in interface FitsTableSerializer
        Returns:
        header cards
      • writeData

        public void writeData​(java.io.DataOutput out)
                       throws java.io.IOException
        Write the FITS data unit populated by this serializer.
        Specified by:
        writeData in interface FitsTableSerializer
        Parameters:
        out - destination stream
        Throws:
        java.io.IOException
      • getFormatChar

        public char getFormatChar​(int icol)
        Description copied from interface: FitsTableSerializer
        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.
        Specified by:
        getFormatChar in interface FitsTableSerializer
        Parameters:
        icol - column to query
        Returns:
        format letter for data in column icol, or 0 for a column being skipped
      • getDimensions

        public int[] getDimensions​(int icol)
        Description copied from interface: FitsTableSerializer
        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.
        Specified by:
        getDimensions in interface FitsTableSerializer
        Parameters:
        icol - column to query
        Returns:
        dimensions array for data in column icol or null for a column being skipped
      • getBadValue

        public java.lang.String getBadValue​(int icol)
        Description copied from interface: FitsTableSerializer
        Returns the bad value (text of the TNULLnn card), if any, used for a given column.
        Specified by:
        getBadValue in interface FitsTableSerializer
        Parameters:
        icol - column to query
        Returns:
        blank value string, or null if there is none or the column is being skipped