public abstract class SelectorStarTable extends WrapperStarTable
isIncluded(uk.ac.starlink.table.RowSequence) method for each row of the base
table as it is iterated over.baseTable| Constructor and Description |
|---|
SelectorStarTable(StarTable baseTable)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
Object |
getCell(int icol) |
Object[] |
getRow() |
RowAccess |
getRowAccess()
Returns an object which can provide random access to this
table's data, if random access is implemented.
|
long |
getRowCount()
Returns -1 (length unknown).
|
RowSequence |
getRowSequence()
Returns an object which can iterate over all the rows in the table
sequentially.
|
RowSplittable |
getRowSplittable()
Returns an object which can iterate over all the rows in the table,
but which may also be requested to split recursively
for potentially parallel processing.
|
abstract boolean |
isIncluded(RowSequence baseSeq)
Evaluated to determine whether rows of the base table are included
in this one.
|
boolean |
isRandom()
Returns false.
|
checkedLongToInt, close, getBaseTable, getCell, getColumnAuxDataInfos, getColumnCount, getColumnInfo, getName, getParameterByName, getParameters, getRow, getURL, setName, setParameter, setURL, toStringpublic SelectorStarTable(StarTable baseTable)
baseTable - table on which this is basedpublic abstract boolean isIncluded(RowSequence baseSeq) throws IOException
baseSeq - row sequence of the base tablebaseSeq
is to be includedIOExceptionpublic boolean isRandom()
isRandom in interface StarTableisRandom in class WrapperStarTabletrue if table random access methods are availablepublic long getRowCount()
getRowCount in interface StarTablegetRowCount in class WrapperStarTablepublic Object[] getRow()
public Object getCell(int icol)
public RowSequence getRowSequence() throws IOException
StarTablegetRowSequence in interface StarTablegetRowSequence in class WrapperStarTableIOException - if there is an error providing accesspublic RowSplittable getRowSplittable() throws IOException
StarTableThe return value must be non-null, and may provide splitting
arrangements specially appropriate for the implementation.
If this table 'wraps' an upstream table, it is usually best to
base the implementation on calls to the the upstream
getRowSplittable method, so that upstream policy
about how to divide up the table is respected.
However, implementations without special requirements may return
Tables.getDefaultRowSplittable(this).
getRowSplittable in interface StarTablegetRowSplittable in class WrapperStarTableIOExceptionRowRunnerpublic RowAccess getRowAccess()
StarTablegetRowAccess in interface StarTablegetRowAccess in class WrapperStarTableCopyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.