|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuk.ac.starlink.table.WrapperStarTable
uk.ac.starlink.table.RowPermutedStarTable
Wrapper table which provides a view of a base table in which the rows are permuted. Each row in the wrapper table is a view of one in the base table. It is permitted for the wrapper to contain multiple views of the same column in the base.
A long[]
array, rowMap
, is used to keep
track of which rows in this table correspond to which rows in the
base table; the n'th row in this table corresponds to the
rowMap[n]'th row in the base table.
The rowMap array may contain duplicate entries, but should
not contain any entries larger than the number of rows in the base table.
Any negative entry is treated as a special case resulting in a 'blank'
row of all null values.
It can be modified during the life of the table, but it's not a good
idea to do this while a RowSequence is active.
Field Summary |
Fields inherited from class uk.ac.starlink.table.WrapperStarTable |
baseTable |
Constructor Summary | |
RowPermutedStarTable(StarTable baseTable)
Constructs a new RowPermutedTable with rows initially in unpermuted order. |
|
RowPermutedStarTable(StarTable baseTable,
long[] rowMap)
Constructs a new RowPermutedStarTable from a base table and a rowMap array. |
Method Summary | |
Object |
getCell(long irow,
int icol)
Returns the contents of a given table cell. |
Object[] |
getRow(long irow)
Returns the contents of a given table row. |
long |
getRowCount()
Returns the number of rows in this table, if known. |
long[] |
getRowMap()
Returns the mapping array. |
RowSequence |
getRowSequence()
Returns an object which can iterate over all the rows in the table sequentially. |
boolean |
isRandom()
Returns true. |
void |
setRowMap(long[] rowMap)
Sets the mapping array. |
Methods inherited from class uk.ac.starlink.table.WrapperStarTable |
checkedLongToInt, getBaseTable, getColumnAuxDataInfos, getColumnCount, getColumnInfo, getName, getParameterByName, getParameters, getURL, setName, setParameter, setURL, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public RowPermutedStarTable(StarTable baseTable, long[] rowMap)
baseTable must provide random access.
baseTable
- base tablerowMap
- array mapping rows in the new permuted table to
rows in baseTable
IllegalArgumentException
- if baseTable.isRandom returns
falsepublic RowPermutedStarTable(StarTable baseTable)
baseTable
- base tableMethod Detail |
public long[] getRowMap()
public void setRowMap(long[] rowMap)
rowMap
- array mapping rows in this table to rows in the base tablepublic long getRowCount()
StarTable
getRowCount
in interface StarTable
getRowCount
in class WrapperStarTable
public boolean isRandom()
isRandom
in interface StarTable
isRandom
in class WrapperStarTable
public RowSequence getRowSequence()
StarTable
getRowSequence
in interface StarTable
getRowSequence
in class WrapperStarTable
public Object getCell(long irow, int icol) throws IOException
StarTable
getCell
in interface StarTable
getCell
in class WrapperStarTable
IOException
public Object[] getRow(long irow) throws IOException
StarTable
getRow
in interface StarTable
getRow
in class WrapperStarTable
IOException
|
Copyright © 2004 CLRC: Central Laboratory of the Research Councils. All rights reserved. | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |