26#ifndef TABLES_TILEDCELLSTMAN_H
27#define TABLES_TILEDCELLSTMAN_H
31#include <casacore/casa/aips.h>
32#include <casacore/tables/DataMan/TiledStMan.h>
33#include <casacore/casa/Arrays/IPosition.h>
34#include <casacore/casa/BasicSL/String.h>
Abstract base class for a data manager.
String: the storage and methods of handling collections of characters.
virtual Bool flush(AipsIO &, Bool fsync)
Flush and optionally fsync the data.
virtual TSMCube * getHypercube(rownr_t rownr, IPosition &position)
Get the hypercube in which the given row is stored.
static DataManager * makeObject(const String &dataManagerType, const Record &spec)
Make the object from the type name string.
IPosition defaultTileShape_p
virtual void setupCheck(const TableDesc &tableDesc, const Vector< String > &dataNames) const
Check if the hypercolumn definition fits this storage manager.
virtual void create64(rownr_t nrrow)
Let the storage manager create files as needed for a new table.
TiledCellStMan & operator=(const TiledCellStMan &)=delete
Forbid assignment.
TiledCellStMan(const String &hypercolumnName, const Record &spec)
virtual IPosition defaultTileShape() const
Get the default tile shape.
virtual TSMCube * getHypercube(rownr_t rownr)
Get the hypercube in which the given row is stored.
TiledCellStMan()
Create a TiledCellStMan.
void addRow64(rownr_t nrrow)
Add rows to the storage manager.
TiledCellStMan(const String &hypercolumnName, const IPosition &defaultTileShape, uInt64 maximumCacheSize=0)
Create a TiledDataStMan storage manager for the hypercolumn with the given name.
String dataManagerType() const
Get the type name of the data manager (i.e.
virtual void readHeader(rownr_t nrrow, Bool firstTime)
Read the header info.
Bool canChangeShape() const
This tiled storage manager can handle changing array shapes.
DataManager * clone() const
Clone this object.
TiledCellStMan(const TiledCellStMan &)=delete
Forbid copy constructor.
virtual void setShape(rownr_t rownr, TSMCube *hypercube, const IPosition &shape, const IPosition &tileShape)
Set the shape and tile shape of the hypercube.
const IPosition & tileShape(rownr_t rownr) const
Get the tile shape of the data in the given row.
uInt maximumCacheSize() const
Get the current maximum cache size (in MiB (MibiByte)).
this file contains all the compiler specific defines
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape.
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