Go to the documentation of this file.
28 #ifndef TABLES_REFCOLUMN_H
29 #define TABLES_REFCOLUMN_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/tables/Tables/BaseColumn.h>
35 #include <casacore/tables/Tables/ColumnCache.h>
45 template<
class T>
class Vector;
172 virtual void get (
uInt rownr,
void* dataPtr)
const;
192 void* dataPtr)
const;
198 void* dataPtr)
const;
204 const Slicer&,
void* dataPtr)
const;
208 virtual void put (
uInt rownr,
const void* dataPtr);
228 const void* dataPtr);
234 const void* dataPtr);
240 const Slicer&,
const void* dataPtr);
253 Int order,
const void*& dataSave);
Specify which elements to extract from an n-dimensional array.
virtual Bool canAccessArrayColumnCells(Bool &reask) const
It can handle cells in an array column if the underlying column can do it.
virtual Bool canAccessArrayColumn(Bool &reask) const
It can handle an array column if the underlying column can handle cells in an array column.
virtual void getScalarColumnCells(const RefRows &rownrs, void *dataPtr) const
Get the vector of some scalar values in a column.
A Vector of integers, for indexing into Array<T> objects.
virtual void getArrayColumn(void *dataPtr) const
Get the array of all array values in a column.
virtual void getColumnSlice(const Slicer &, void *dataPtr) const
Get subsections from all arrays in the column.
virtual TableRecord & keywordSet()
A column in a reference table.
A hierarchical collection of named fields of various types.
Referenced counted pointer for constant data.
virtual void allocIterBuf(void *&lastVal, void *&curVal, CountedPtr< BaseCompare > &cmpObj)
Allocate value buffers for the table iterator.
virtual void getSlice(uInt rownr, const Slicer &, void *dataPtr) const
Get a slice of an N-dimensional array in a particular cell.
virtual void getScalarColumn(void *dataPtr) const
Get the vector of all scalar values in a column.
virtual Bool isStored() const
Test if the column is stored (otherwise it is virtual).
virtual void putScalarColumn(const void *dataPtr)
Put the vector of all scalar values in the column.
virtual uInt nrow() const
Get nr of rows in the column.
virtual ColumnCache & columnCache()
Get the underlying column cache.
virtual Bool canAccessColumnSlice(Bool &reask) const
It can handle a column slice if the underlying column can handle a collection of cells in a column an...
virtual void setShape(uInt rownr, const IPosition &shape)
Set the shape of the array in the given row.
virtual void putArrayColumnCells(const RefRows &rownrs, const void *dataPtr)
Get the array of some array values in a column.
virtual Bool isWritable() const
Test if the column is writable in the parent table.
virtual void setMaximumCacheSize(uInt nbytes)
Set the maximum cache size (in bytes) to be used by a storage manager.
virtual Bool isDefined(uInt rownr) const
Test if a value in a particular cell has been defined.
virtual IPosition tileShape(uInt rownr) const
Get the tile shape of an array in a particular cell.
virtual IPosition shapeColumn() const
Get the global shape of an array (i.e.
virtual void getArrayColumnCells(const RefRows &rownrs, void *dataPtr) const
Get the array of some array values in a column.
virtual void putSlice(uInt rownr, const Slicer &, const void *dataPtr)
Put a slice of an N-dimensional array in a particular cell.
virtual void freeSortKey(const void *&dataSave)
Free storage on the heap allocated by makeSortkey().
void initialize(uInt startRownr, uInt endRownr)
Initialize the rows from startRownr till endRownr (inclusive) with the default value defined in the c...
Class holding the row numbers in a RefTable.
Abstract base class for a table column.
RefColumn(const BaseColumnDesc *, RefTable *, BaseColumn *referencedColumn)
Construct the RefColumn.
virtual void setShape(uInt rownr, const IPosition &shape, const IPosition &tileShape)
Set the shape and tile shape of the array in the given row.
virtual void putArrayColumn(const void *dataPtr)
Put the array of all array values in the column.
virtual Bool canAccessScalarColumnCells(Bool &reask) const
It can handle cells in a scalar column if the underlying column can do it.
An abstract base class for table column descriptions.
this file contains all the compiler specific defines
virtual uInt ndimColumn() const
Get the global #dimensions of an array (i.e.
virtual void makeSortKey(Sort &, CountedPtr< BaseCompare > &cmpObj, Int order, const void *&dataSave)
Add this column and its data to the Sort object.
Sort on one or more keys, ascending and/or descending.
virtual void get(uInt rownr, void *dataPtr) const
Get the value from a particular cell.
A caching object for a table column.
virtual TableRecord & rwKeywordSet()
Get access to the column keyword set.
virtual uInt ndim(uInt rownr) const
Get the #dimensions of an array in a particular cell.
virtual void getColumnSliceCells(const RefRows &rownrs, const Slicer &, void *dataPtr) const
Get subsections from some arrays in the column.
bool Bool
Define the standard types used by Casacore.
virtual void putColumnSliceCells(const RefRows &rownrs, const Slicer &, const void *dataPtr)
Put subsections of some arrays in the column.
virtual void putColumnSlice(const Slicer &, const void *dataPtr)
Put into subsections of all table arrays in the column.
virtual Bool canChangeShape() const
It can change shape if the underlying column can.
virtual void put(uInt rownr, const void *dataPtr)
Put the value in a particular cell.
virtual IPosition shape(uInt rownr) const
Get the shape of an array in a particular cell.
virtual Bool canAccessScalarColumn(Bool &reask) const
It can handle a scalar column if the underlying column can handle cells in a scalar column.
Class for a table as a view of another table.
virtual void freeIterBuf(void *&lastVal, void *&curVal)
Free the value buffers allocated by allocIterBuf.
virtual Bool canAccessSlice(Bool &reask) const
It can handle a cell slice if the underlying column can do it.
virtual void putScalarColumnCells(const RefRows &rownrs, const void *dataPtr)
Get the vector of some scalar values in a column.