28 #ifndef TABLES_ISMINDEX_H
29 #define TABLES_ISMINDEX_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/casa/Containers/Block.h>
128 void show (std::ostream&)
const;
void get(AipsIO &os)
Read the bucket index from the AipsIO object.
uInt nused_p
Number of entries used.
void addBucketNr(rownr_t rownr, uInt bucketNr)
Add a bucket number to the index.
uInt getBucketNr(rownr_t rownr, rownr_t &bucketStartRow, rownr_t &bucketNrrow) const
Get the bucket number for the given row.
Int removeRow(rownr_t rownr)
Remove a row from the index.
ISMIndex(ISMBase *parent)
Create a ISMIndex object with the given parent for a new table.
uInt getIndex(rownr_t rownr) const
Get the index of the bucket containing the given row.
void show(std::ostream &) const
Show the index.
ISMIndex & operator=(const ISMIndex &)
Forbid assignment.
Block< rownr_t > rows_p
Rownr index (i.e.
void put(AipsIO &os)
Write the bucket index into the AipsIO object.
Block< uInt > bucketNr_p
Corresponding bucket number.
ISMBase * stmanPtr_p
Pointer to the parent storage manager.
void addRow(rownr_t nrrow)
Add a row.
~ISMIndex()
The destructor closes the file (if opened).
ISMIndex(const ISMIndex &)
Forbid copy constructor.
Bool nextBucketNr(uInt &cursor, rownr_t &bucketStartRow, rownr_t &bucketNrrow, uInt &bucketNr) const
Get the number of the next bucket from the index and return it in bucketNr.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
uInt64 rownr_t
Define the type of a row number in a table.