27 #ifndef TABLES_SSMINDEX_H 28 #define TABLES_SSMINDEX_H 31 #include <casacore/casa/aips.h> 32 #include <casacore/casa/Containers/Block.h> 33 #include <casacore/casa/Containers/SimOrdMap.h> 34 #include <casacore/casa/Arrays/Vector.h> 144 uInt& anEndRow)
const;
The bucket index for a group of columns in the Standard Storage Manager.
SSMIndex(SSMBase *aPtrSSM, uInt rowsPerBucket=0)
Create the object with the given number of rows per bucket.
Int removeColumn(Int anOffset, uInt nbits)
A column is removed.
Int getFree(Int &anOffset, uInt nbits) const
Try to find free space for a field with a given length (best fit).
AipsIO is the object persistency mechanism of Casacore.
uInt getNrBuckets() const
Return the nr of buckets used.
uInt getRowsPerBucket() const
Get the number of rows that fits in ach bucket.
Base class of the Standard Storage Manager.
uInt getIndex(uInt aRowNr) const
Get the index of the bucket containing the given row.
void setNrColumns(Int aNrColumns, uInt aSizeUsed)
Set nr of columns use this index.
Int deleteRow(uInt aRowNumber)
Delete the given row.
SimpleOrderedMap< Int, Int > itsFreeSpace
void showStatistics(ostream &anOs) const
Show Statistics of index.
Vector< uInt > getBuckets() const
Return all the bucketnrs used in this index.
void addColumn(Int anOffset, uInt nbits)
reuse the space at offset for a field with the given nr of bits.
Block< uInt > itsBucketNumber
void addRow(uInt aNrRows)
Add some rows.
void find(uInt aRowNumber, uInt &aBucketNr, uInt &aStartRow, uInt &anEndRow) const
Find the bucket containing the given row.
void recreate()
Recreate the object in case all rows are deleted from the table.
void put(AipsIO &anOs) const
Write the bucket index into the AipsIO object.
this file contains all the compiler specific defines