28 #ifndef TABLES_ARRAYCOLUMN_H
29 #define TABLES_ARRAYCOLUMN_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/casa/Arrays/Vector.h>
35 #include <casacore/tables/Tables/ArrayColumnBase.h>
36 #include <casacore/tables/Tables/TableError.h>
318 const Slicer& arraySection)
const;
323 const Slicer& arraySection)
const;
358 {
put (rownr, that, rownr, preserveTileShape); }
472 #define ROArrayColumn ArrayColumn
475 #ifndef CASACORE_NO_AUTO_TEMPLATES
476 #include <casacore/tables/Tables/ArrayColumn.tcc>
#define TABLECOLUMNCHECKROW(ROWNR)
void getColumnRange(const Slicer &rowRange, const Slicer &arraySection, Array< T > &arr, Bool resize=False) const
Get slices from some arrays in a column.
void putColumnRange(const Slicer &rowRange, const Array< T > &arr)
Put the array of some values in the column.
void checkDataType() const
Check if the data type matches the column data type.
void getColumnCells(const RefRows &rows, const ColumnSlicer &slicerSet, Array< T > &destination, Bool resize=False) const
Similar to getColumn (arraySlices, arr, resize) except it gets the slices for the given rows instead ...
ArrayColumn< T > & operator=(const ArrayColumn< T > &)
Assignment uses reference semantics, thus works the same as function reference.
void getColumnRange(const Slicer &rowRange, Array< T > &arr, Bool resize=False) const
Get the array of some values in a column.
void put(rownr_t rownr, const TableColumn &that, Bool preserveTileShape=False)
Copy the value of a cell of that column to a cell of this column.
Array< T > getColumnRange(const Slicer &rowRange, const Slicer &arraySection) const
Array< T > getColumnCells(const RefRows &rownrs) const
void attach(const Table &table, const String &columnName)
Attach a column to the object.
void getColumnCells(const RefRows &rownrs, Array< T > &arr, Bool resize=False) const
void putColumn(const ArrayColumn< T > &that)
Put the contents of a column with the same data type into this column.
void putColumnCells(const RefRows &rows, const ColumnSlicer &columnSlicer, const Array< T > &source)
void put(rownr_t thisRownr, const TableColumn &that, rownr_t thatRownr, Bool preserveTileShape=False)
Use possibly different row numbers for that (i.e.
void getSlice(rownr_t rownr, const Vector< Vector< Slice > > &arraySlices, Array< T > &arr, Bool resize=False) const
Get an irregular slice of an N-dimensional array in a particular cell (i.e.
Array< T > getColumn(const Vector< Vector< Slice > > &arraySection) const
void setShape(rownr_t rownr, const IPosition &shape)
Set the shape of the array in the given row.
Array< T > getColumn() const
IPosition shape(rownr_t rownr) const
Get the shape of an array in a particular cell.
ArrayColumn(const ArrayColumn< T > &)
Copy constructor (reference semantics).
Array< T > getSlice(rownr_t rownr, const Vector< Vector< Slice > > &arraySlices) const
Array< T > getSlice(rownr_t rownr, const Slicer &arraySection) const
void put(uInt thisRownr, const TableColumn &that, uInt thatRownr, Bool preserveTileShape=False)
For backward compatibility (otherwise ambigious with put taking Bool).
void putColumnCells(const RefRows &rows, const Vector< Vector< Slice > > &arraySlices, const Array< T > &arr)
Same as putColumn(arraySlices, arr) except that it puts for the given rows instead of all rows.
void putColumnRange(const Slicer &rowRange, const Slicer &arraySection, const Array< T > &arr)
Put into subsection of the table arrays in some rows of the column.
virtual TableColumn * clone() const
Clone the object.
void reference(const ArrayColumn< T > &)
Change the reference to another column.
Array< T > getColumn(const Slicer &arraySection) const
void putColumnCells(const RefRows &rownrs, const Slicer &arraySection, const Array< T > &arr)
void putColumn(const Slicer &arraySection, const Array< T > &array)
Put into subsections of the table arrays in the entire column.
ArrayColumn(const TableColumn &)
Construct from the given table column.
void getColumn(const Slicer &arraySection, Array< T > &array, Bool resize=False) const
Get regular slices from all arrays in the column.
void fillColumn(const Array< T > &value)
Put the same value in all cells of the column.
void getSlice(rownr_t rownr, const Slicer &arraySection, Array< T > &array, Bool resize=False) const
Get a slice of an N-dimensional array in a particular cell (i.e.
void putColumnCells(const RefRows &rownrs, const Array< T > &arr)
void putSlice(rownr_t rownr, const Slicer &arraySection, const Array< T > &array)
Put into a slice of an N-dimensional array in a particular cell.
void putSliceFromRows(const RefRows &rows, const Vector< Vector< Slice > > &arraySlices, const Array< T > &source)
void getColumnCells(const RefRows &rownrs, const Slicer &arraySection, Array< T > &arr, Bool resize=False) const
Array< T > get(rownr_t rownr) const
ArrayColumn()
The default constructor creates a null object, i.e.
void putColumn(const Array< T > &array)
Put the array of all values in the column.
ArrayColumn(const Table &, const String &columnName)
Construct for the given column in the given table.
void getColumn(const Vector< Vector< Slice > > &arraySection, Array< T > &array, Bool resize=False) const
Get irregular slices from all arrays in the column as given by the vectors of Slice objects.
Array< T > operator()(rownr_t rownr) const
void putColumn(const Vector< Vector< Slice > > &arraySlices, const Array< T > &arr)
void setShape(rownr_t rownr, const IPosition &shape, const IPosition &tileShape)
Try to store the array in a tiled way using the given tile shape.
void get(rownr_t rownr, Array< T > &array, Bool resize=False) const
Get the array value in a particular cell (i.e.
Array< T > getColumnRange(const Slicer &rowRange) const
void getColumn(Array< T > &array, Bool resize=False) const
Get the array of all values in a column.
void put(rownr_t rownr, const Array< T > &array)
Put the array in a particular cell (i.e.
void putSlice(rownr_t rownr, const Vector< Vector< Slice > > &arraySlices, const Array< T > &arr)
uInt ndim(rownr_t rownr) const
Get the #dimensions of an array in a particular cell.
Array< T > getColumnCells(const RefRows &rownrs, const Slicer &arraySection) const
virtual uInt ndim(rownr_t rownr) const
Get the #dimensions of an array in a particular cell.
virtual IPosition shape(rownr_t rownr) const
Get the shape of an array in a particular cell.
String: the storage and methods of handling collections of characters.
IPosition tileShape(rownr_t rownr) const
Get the tile shape of an array in a particular cell.
BaseColumn * baseColPtr_p
Table table() const
Get the Table object this column belongs to.
this file contains all the compiler specific defines
TableExprNode array(const TableExprNode &values, const TableExprNodeSet &shape)
Create an array of the given shape and fill it with the values.
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.
uInt64 rownr_t
Define the type of a row number in a table.