28 #ifndef LATTICES_PAGEDARRAY_H
29 #define LATTICES_PAGEDARRAY_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/lattices/Lattices/Lattice.h>
34 #include <casacore/lattices/Lattices/TiledShape.h>
35 #include <casacore/tables/Tables/ArrayColumn.h>
36 #include <casacore/tables/Tables/Table.h>
37 #include <casacore/tables/DataMan/TiledStManAccessor.h>
38 #include <casacore/casa/BasicSL/String.h>
635 return itsColumnName;
677 #ifndef CASACORE_NO_AUTO_TEMPLATES
678 #include <casacore/lattices/Lattices/PagedArray.tcc>
LockType
Define the possible lock types.
void makeArray(const TiledShape &shape)
make the ArrayColumn
PagedArray(const String &filename)
Reconstruct from a pre-existing PagedArray in the default row and column of the supplied Table with t...
ArrayColumn< T > & getRWArray()
Get the writable ArrayColumn object.
virtual T getAt(const IPosition &where) const
Return the value of the single element located at the argument IPosition.
virtual Bool lock(FileLocker::LockType, uInt nattempts)
Handle the (un)locking.
virtual void reopen()
Explicitly reopen the temporarily closed lattice.
void setTableType()
Set the data in the TableInfo file.
PagedArray()
The default constructor creates a PagedArray that is useless for just about everything,...
Table & table()
Return the current table object.
virtual String name(Bool stripPath=False) const
Return the current Table name.
virtual void showCacheStatistics(ostream &os) const
Generate a report on how the cache is doing.
const Table & table() const
virtual LatticeIterInterface< T > * makeIter(const LatticeNavigator &navigator, Bool useRef) const
This function is used by the LatticeIterator class to generate an iterator of the correct type for a ...
virtual void putAt(const T &value, const IPosition &where)
Put the value of a single element.
virtual uInt advisedMaxPixels() const
Returns the maximum recommended number of pixels for a cursor.
~PagedArray()
The destructor flushes the PagedArrays contents to disk.
virtual void setCacheSizeInTiles(uInt howManyTiles)
Set the actual cache size for this Array to be big enough for the indicated number of tiles.
virtual IPosition shape() const
Returns the shape of the PagedArray.
static String defaultColumn()
Returns the default TableColumn name for a PagedArray.
PagedArray(const TiledShape &shape)
Construct a new PagedArray with the specified shape.
void makeTable(const String &filename, Table::TableOption option)
Make a Table to hold this PagedArray.
virtual uInt maximumCacheSize() const
Return the maximum allowed cache size (in pixels) for all Arrays in this column of the Table.
ArrayColumn< T > itsArray
virtual void setMaximumCacheSize(uInt howManyPixels)
Set the maximum allowed cache size for all Arrays in this column of the Table.
static uInt defaultRow()
Returns the default row number for a PagedArray.
const String & columnName() const
Returns the current Table column name of this PagedArray.
virtual Lattice< T > * clone() const
Make a copy of the object (reference semantics).
virtual void doPutSlice(const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
Do the actual getting of an array of values.
uInt rowNumber() const
Returns the current row number of this PagedArray.
PagedArray(const TiledShape &shape, Table &file)
Construct a new PagedArray, with the specified shape, in the default row and column of the supplied T...
virtual void setCacheSizeFromPath(const IPosition &sliceShape, const IPosition &windowStart, const IPosition &windowLength, const IPosition &axisPath)
Set the actual cache size for this Array to "fit" the indicated path.
void resize(const TiledShape &newShape)
Functions to resize the PagedArray.
PagedArray(Table &file)
Reconstruct from a pre-existing PagedArray in the default row and column of the supplied Table.
PagedArray(Table &file, const String &columnName, uInt rowNum)
Reconstruct from a pre-existing PagedArray in the specified row and column of the supplied Table.
virtual void resync()
Resynchronize the PagedArray object with the lattice file.
PagedArray(const TiledShape &shape, const String &filename)
Construct a new PagedArray with the specified shape.
const String & tableName() const
Returns the current table name (ie.
virtual Bool isWritable() const
Is the PagedArray writable?
virtual Bool isPersistent() const
A PagedArray is always persistent.
PagedArray(const PagedArray< T > &other)
The copy constructor which uses reference semantics.
virtual Bool ok() const
A function which checks for internal consistency.
virtual IPosition doNiceCursorShape(uInt maxPixels) const
Get the best cursor shape.
virtual Bool isPaged() const
A PagedArray is always paged to disk.
const ROTiledStManAccessor & accessor() const
Returns an accessor to the tiled storage manager.
virtual Bool doGetSlice(Array< T > &buffer, const Slicer §ion)
Do the actual getting of an array of values.
static String defaultComment()
The default comment for PagedArray Colums.
IPosition tileShape() const
Returns the current tile shape for this PagedArray.
virtual void clearCache()
Clears and frees up the tile cache.
virtual void flush()
Flush the data (but do not unlock).
PagedArray< T > & operator=(const PagedArray< T > &other)
The assignment operator with reference semantics.
PagedArray(const TiledShape &shape, Table &file, const String &columnName, uInt rowNum)
Construct a new PagedArray, with the specified shape, in the specified row and column of the supplied...
void doReopen() const
Do the reopen of the table (if not open already).
virtual Bool hasLock(FileLocker::LockType) const
virtual void tempClose()
Temporarily close the lattice.
ROTiledStManAccessor itsAccessor
String: the storage and methods of handling collections of characters.
TableOption
Define the possible options how a table can be opened.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.