28 #ifndef TABLES_TILEDDATASTMAN_H
29 #define TABLES_TILEDDATASTMAN_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/DataMan/TiledStMan.h>
34 #include <casacore/casa/Containers/Block.h>
35 #include <casacore/casa/BasicSL/String.h>
444 uInt64 incrInLastDim)
const;
Abstract base class for a data manager.
String: the storage and methods of handling collections of characters.
std::vector< uInt > cubeMap_p
virtual TSMCube * getHypercube(rownr_t rownr)
Get the hypercube in which the given row is stored.
TiledDataStMan(const String &hypercolumnName, uInt64 maximumCacheSize=0)
Create a TiledDataStMan storage manager for the hypercolumn with the given name.
TiledDataStMan()
Create a TiledDataStMan.
void checkNrrow(const IPosition &cubeShape, uInt64 incrInLastDim) const
Check if the table is large enough to hold this hypercube extension.
virtual void readHeader(rownr_t nrrow, Bool firstTime)
Read the header info.
std::vector< rownr_t > rowMap_p
The map of row number to cube and position in cube.
static DataManager * makeObject(const String &dataManagerType, const Record &spec)
Make the object from the type name string.
std::vector< uInt > posMap_p
virtual Bool flush(AipsIO &, Bool fsync)
Flush and optionally fsync the data.
void addHypercube(const IPosition &cubeShape, const IPosition &tileShape, const Record &values)
Add a hypercube.
String dataManagerType() const
Get the type name of the data manager (i.e.
TiledDataStMan(const TiledDataStMan &)
Forbid copy constructor.
void updateRowMap(uInt cubeNr, uInt64 incrInLastDim)
Update the map of row numbers to cube number plus offset.
virtual TSMCube * getHypercube(rownr_t rownr, IPosition &position)
Get the hypercube in which the given row is stored.
TiledDataStMan(const String &hypercolumnName, const Record &spec)
void addRow64(rownr_t nrrow)
Add rows to the storage manager.
void extendHypercube(uInt64 incrInLastDim, const Record &values)
Extend the hypercube with the given number of elements in the last dimension.
virtual void create64(rownr_t nrrow)
Let the storage manager create files as needed for a new table.
DataManager * clone() const
Clone this object.
TiledDataStMan & operator=(const TiledDataStMan &)
Forbid assignment.
rownr_t nrrowLast_p
The row number since the last hypercube extension.
uInt maximumCacheSize() const
Get the current maximum cache size (in MiB (MibiByte)).
const IPosition & tileShape(rownr_t rownr) const
Get the tile shape of the data in the given row.
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.
unsigned long long uInt64