public interface WideFits
There are various options for filling in the details,
in particular how the metadata for the extended columns
is stored in the FITS headers. These are defined by the
implementation(s) in the AbstractWideFits
class.
This convention is based on an idea suggested by William Pence on the FITSBITS list in June 2012, and by Francois-Xavier Pineau (CDS) in 2016. It was discussed at some length on the FITSBITS mailing list in July 2017 in the thread BINTABLE convention for >999 columns
Modifier and Type | Field and Description |
---|---|
static WideFits |
DEFAULT
Default WideFits instance; currently TFORMaaa using column 999.
|
static int |
MAX_NCOLSTD
Maximum number of standard columns, imposed by FITS standard (999).
|
Modifier and Type | Method and Description |
---|---|
BintableColumnHeader |
createExtendedHeader(int icolContainer,
int jcol)
Creates a BintableColumnHeader instance suitable for use with
the extended column convention defined by this class.
|
CardImage[] |
getContainerColumnCards(long nbyteExt,
long nslice)
Returns an array of per-HDU header cards
that describe the single container column (with index icolContainer)
used to implement this convention in a BINTABLE HDU.
|
int |
getContainerColumnIndex()
Returns the index of the column used (if any) by this specification
for extended column data.
|
int |
getExtColumnMax()
Maximum extended number of columns that can be represented by
this convention.
|
int |
getExtendedColumnCount(FitsHeader hdr,
int ncolStd)
Returns the total number of columns, including extended ones,
described by a FITS header according to this convention.
|
CardImage[] |
getExtensionCards(int ncolExt)
Returns an array of per-HDU header cards that announce the operation
of this convention in a BINTABLE HDU.
|
static final int MAX_NCOLSTD
static final WideFits DEFAULT
int getContainerColumnIndex()
Under normal circumstances, this returns 999 (MAX_NCOLSTD
).
int getExtColumnMax()
CardImage[] getExtensionCards(int ncolExt)
ncolExt
- total column count including extendedCardImage[] getContainerColumnCards(long nbyteExt, long nslice)
nbyteExt
- number of bytes per row in container columnnslice
- if >0 this will result in a TDIMnnn header
that gives a 2-element shape, with the supplied
value being the second element;
if you don't want TDIMnnn, use 0int getExtendedColumnCount(FitsHeader hdr, int ncolStd)
hdr
- FITS headerncolStd
- number of 'standard' BINTABLE columns,
got from TFIELDS headerBintableColumnHeader createExtendedHeader(int icolContainer, int jcol)
icolContainer
- 1-based index of container column used for
storing extended column datajcol
- 1-based column index for an extended column