Package uk.ac.starlink.fits
Class VariableFitsTableSerializer
- java.lang.Object
-
- uk.ac.starlink.fits.StandardFitsTableSerializer
-
- uk.ac.starlink.fits.VariableFitsTableSerializer
-
- All Implemented Interfaces:
FitsTableSerializer
public class VariableFitsTableSerializer extends StandardFitsTableSerializer
FitsTableSerializer which can write variable array-valued columns using the 'P' or 'Q' TFORM formatting characters.- Since:
- 10 Jul 2008
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description VariableFitsTableSerializer(uk.ac.starlink.table.StarTable table, uk.ac.starlink.table.StoragePolicy storagePolicy, boolean allowSignedByte, WideFits wide)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description nom.tam.fits.Header
getHeader()
Returns a header suitable for the HDU which will contain the table.void
set64BitMode(boolean useQ)
Sets whether this serializer should use the 'P' descriptor (32-bit addressing into the heap) or the 'Q' descriptor (64-bit addressing into the heap) for variable-length array columns.void
writeData(java.io.DataOutput out)
Writes the HDU data for the table to an output stream.-
Methods inherited from class uk.ac.starlink.fits.StandardFitsTableSerializer
getBadValue, getDimensions, getFormatChar, getHealpixHeaders, getRowCount
-
-
-
-
Constructor Detail
-
VariableFitsTableSerializer
public VariableFitsTableSerializer(uk.ac.starlink.table.StarTable table, uk.ac.starlink.table.StoragePolicy storagePolicy, boolean allowSignedByte, WideFits wide) throws java.io.IOException
Constructor.- Parameters:
table
- table to writestoragePolicy
- policy for acquiring byte array scratch buffersallowSignedByte
- if true, bytes written as FITS signed bytes (TZERO=-128), if false bytes written as signed shortswide
- convention for representing over-wide tables; null to avoid this convention- Throws:
java.io.IOException
- if it won't be possible to write the given table
-
-
Method Detail
-
set64BitMode
public void set64BitMode(boolean useQ)
Sets whether this serializer should use the 'P' descriptor (32-bit addressing into the heap) or the 'Q' descriptor (64-bit addressing into the heap) for variable-length array columns. Normally Q is only used if the heap is larger than 2^31.- Parameters:
useQ
- true for Q, false for P
-
getHeader
public nom.tam.fits.Header getHeader() throws nom.tam.fits.HeaderCardException
Description copied from interface:FitsTableSerializer
Returns a header suitable for the HDU which will contain the table.- Specified by:
getHeader
in interfaceFitsTableSerializer
- Overrides:
getHeader
in classStandardFitsTableSerializer
- Returns:
- header object
- Throws:
nom.tam.fits.HeaderCardException
-
writeData
public void writeData(java.io.DataOutput out) throws java.io.IOException
Description copied from interface:FitsTableSerializer
Writes the HDU data for the table to an output stream.- Specified by:
writeData
in interfaceFitsTableSerializer
- Overrides:
writeData
in classStandardFitsTableSerializer
- Parameters:
out
- destination stream- Throws:
java.io.IOException
-
-