Class FitsStarTable

java.lang.Object
uk.ac.starlink.table.AbstractStarTable
uk.ac.starlink.table.RandomStarTable
uk.ac.starlink.oldfits.FitsStarTable
All Implemented Interfaces:
Closeable, AutoCloseable, uk.ac.starlink.table.StarTable

public class FitsStarTable extends uk.ac.starlink.table.RandomStarTable
An implementation of the StarTable interface which uses FITS TABLE or BINTABLE extensions.

This implementation uses the table handling in the nom.tam.fits package. I think that performance could be considerably improved by rewriting the table access from scratch. The reason for this is largely that the nom.tam.fits classes do a lot of wrapping of values in (perhaps multi-dimensional) arrays, which is not for our purposes necessary. Such a re-implementation would take a bit of effort unfortunately.

This class should only be used for TABLE extension (that is ASCII table) HDUs. The BintableStarTable class is much more efficient for BINTTABLE extensions (binary table) HDUs.

Author:
Mark Taylor (Starlink)
  • Constructor Summary

    Constructors
    Constructor
    Description
    FitsStarTable(nom.tam.fits.TableHDU thdu)
    Constructs a FitsStarTable object from a FITS TableHDU object.
  • Method Summary

    Modifier and Type
    Method
    Description
    getCell(long lrow, int icol)
     
    List<uk.ac.starlink.table.ValueInfo>
     
    int
     
    uk.ac.starlink.table.ColumnInfo
    getColumnInfo(int icol)
     
    getRow(long lrow)
     
    long
     

    Methods inherited from class uk.ac.starlink.table.RandomStarTable

    getRowAccess, getRowSequence, isRandom

    Methods inherited from class uk.ac.starlink.table.AbstractStarTable

    checkedLongToInt, close, getName, getParameters, getRowSplittable, getURL, setName, setParameters, setURL

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface uk.ac.starlink.table.StarTable

    getParameterByName, setParameter
  • Constructor Details

    • FitsStarTable

      public FitsStarTable(nom.tam.fits.TableHDU thdu) throws IOException
      Constructs a FitsStarTable object from a FITS TableHDU object.
      Parameters:
      thdu - a TableHDU object containing data
      Throws:
      IOException
  • Method Details

    • getRowCount

      public long getRowCount()
      Specified by:
      getRowCount in interface uk.ac.starlink.table.StarTable
      Specified by:
      getRowCount in class uk.ac.starlink.table.RandomStarTable
    • getColumnCount

      public int getColumnCount()
      Specified by:
      getColumnCount in interface uk.ac.starlink.table.StarTable
      Specified by:
      getColumnCount in class uk.ac.starlink.table.AbstractStarTable
    • getColumnInfo

      public uk.ac.starlink.table.ColumnInfo getColumnInfo(int icol)
      Specified by:
      getColumnInfo in interface uk.ac.starlink.table.StarTable
      Specified by:
      getColumnInfo in class uk.ac.starlink.table.AbstractStarTable
    • getColumnAuxDataInfos

      public List<uk.ac.starlink.table.ValueInfo> getColumnAuxDataInfos()
      Specified by:
      getColumnAuxDataInfos in interface uk.ac.starlink.table.StarTable
      Overrides:
      getColumnAuxDataInfos in class uk.ac.starlink.table.AbstractStarTable
    • getCell

      public Object getCell(long lrow, int icol) throws IOException
      Specified by:
      getCell in interface uk.ac.starlink.table.StarTable
      Specified by:
      getCell in class uk.ac.starlink.table.RandomStarTable
      Throws:
      IOException
    • getRow

      public Object[] getRow(long lrow) throws IOException
      Specified by:
      getRow in interface uk.ac.starlink.table.StarTable
      Overrides:
      getRow in class uk.ac.starlink.table.AbstractStarTable
      Throws:
      IOException