28 #ifndef TABLES_TABLECOLUMN_H 29 #define TABLES_TABLECOLUMN_H 33 #include <casacore/casa/aips.h> 34 #include <casacore/tables/Tables/BaseColumn.h> 35 #include <casacore/tables/Tables/BaseTable.h> 36 #include <casacore/casa/BasicSL/String.h> 37 #include <casacore/casa/Arrays/IPosition.h> 47 #if defined(AIPS_DEBUG) 48 # define TABLECOLUMNCHECKROW(ROWNR) \ 49 (checkRowNumber (ROWNR)) 51 # define TABLECOLUMNCHECKROW(ROWNR) 308 const String& dataTypeId)
const A Vector of integers, for indexing into Array<T> objects.
BaseColumn * baseColPtr() const
Get the baseColPtr_p of this TableColumn object.
void putScalar(uInt rownr, const double &value)
TableColumn ROTableColumn
Define ROTableColumn for backward compatibility.
void getScalar(uInt rownr, Bool &value) const
Get the value of a scalar in the given row.
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
void checkRowNumber(uInt rownr) const
Check if the row number is valid.
double asdouble(uInt rownr) const
#define TABLECOLUMNCHECKROW(ROWNR)
void attach(const Table &table, const String &columnName)
Attach a column to the object.
void getScalarValue(uInt rownr, Complex *value, const String &) const
virtual uInt nrow() const =0
Get nr of rows in the column.
Bool hasContent(uInt rownr=0) const
Does the column has content in the given row (default is the first row)? It has if it is defined and ...
void getScalarValue(uInt rownr, Int *value, const String &) const
void setMaximumCacheSize(uInt nbytes) const
Set the maximum cache size (in bytes) to be used by a storage manager.
void getScalar(uInt rownr, Complex &value) const
std::complex< Float > Complex
virtual TableRecord & keywordSet()=0
Main interface class to a read/write table.
void putScalar(uInt rownr, const DComplex &value)
uShort asuShort(uInt rownr) const
void putScalar(uInt rownr, const Complex &value)
uInt ndim(uInt rownr) const
Get the #dimensions of an array in a particular cell.
void putScalar(uInt rownr, const uShort &value)
Envelope class for the description of a table column.
void getScalar(uInt rownr, Int &value) const
void getScalarValue(uInt rownr, double *value, const String &) const
void checkRowNumber(uInt rownr) const
Check if the row number is valid.
void putScalar(uInt rownr, const Char *value)
const TableRecord & keywordSet() const
Get readonly access to the column keyword set.
void getScalarValue(uInt rownr, DComplex *value, const String &) const
TableColumn()
The default constructor creates a null object, i.e.
Bool isDefined(uInt rownr) const
Test if the given cell contains a defined value.
void getScalar(uInt rownr, Bool &value) const
Get the value from the row and convert it to the required type.
void getScalarValue(uInt rownr, Short *value, const String &) const
BaseColumn * baseColPtr_p
void putScalar(uInt rownr, const float &value)
void getScalar(uInt rownr, float &value) const
virtual IPosition shapeColumn() const
Get the global shape of an array (ie.
uInt asuInt(uInt rownr) const
Bool asBool(uInt rownr) const
Get the value from the row and convert it to the required type.
void putScalar(uInt rownr, const Int &value)
String asString(uInt rownr) const
virtual uInt ndimColumn() const
Get the global #dimensions of an array (ie.
virtual uInt ndim(uInt rownr) const
Get the #dimensions of an array in a particular cell.
void putScalar(uInt rownr, const String &value)
void getScalarValue(uInt rownr, uShort *value, const String &) const
Short asShort(uInt rownr) const
Bool canChangeShape() const
Can the shape of an already existing non-FixedShape array be changed? This depends on the storage man...
Abstract base class for tables.
Int asInt(uInt rownr) const
DComplex asDComplex(uInt rownr) const
IPosition shapeColumn() const
Get the global shape of an array (ie.
void put(uInt rownr, const TableColumn &that)
Copy the value of a cell of that column to a cell of this column.
const ColumnDesc & columnDesc() const
Get const access to the column description.
void putColumn(const TableColumn &that)
Copy the values of that column to this column.
IPosition shape(uInt rownr) const
Get the shape of an array in a particular cell.
Table table() const
Get the Table object this column belongs to.
void checkWritable() const
Check if the column is writable and throw an exception if not.
std::complex< Double > DComplex
void getScalar(uInt rownr, Int64 &value) const
void throwNotWritable() const
Throw the exception that the column is not writable.
void putScalar(uInt rownr, const Bool &value)
Put the value of a scalar in the given row.
const ColumnCache * colCachePtr_p
Virtual column forwarding to another column.
uInt nrow() const
Get the number of rows in the column.
void getScalarValue(uInt rownr, float *value, const String &) const
virtual void setMaximumCacheSize(uInt nbytes)=0
Set the maximum cache size (in bytes) to be used by a storage manager.
BaseColumn * baseColPtr(const TableColumn &that) const
Get the baseColPtr_p of another TableColumn object.
bool Bool
Define the standard types used by Casacore.
virtual Bool isWritable() const =0
Test if this table is writable.
void putScalar(uInt rownr, const uInt &value)
A caching object for a table column.
uChar asuChar(uInt rownr) const
Read/write access to a table column.
Bool isWritable() const
Test if the column can be written to, thus if the column and the underlying table can be written to...
void putScalar(uInt rownr, const Bool &value)
Put the value into the row and convert it from the given type.
A hierarchical collection of named fields of various types.
void getScalar(uInt rownr, String &value) const
TableRecord & rwKeywordSet()
Get read/write access to the column keyword set.
void putScalar(uInt rownr, const uChar &value)
void getScalarValue(uInt rownr, void *value, const String &dataTypeId) const
void getScalar(uInt rownr, DComplex &value) const
void getScalarValue(uInt rownr, uChar *value, const String &) const
void getScalar(uInt rownr, uInt &value) const
Bool isWritableAtAll() const
Test if the column is writable at all (virtual columns might not be).
String: the storage and methods of handling collections of characters.
void attach(const Table &table, uInt columnIndex)
void getScalar(uInt rownr, Short &value) const
uInt ndimColumn() const
Get the global #dimensions of an array (ie.
void getScalar(uInt rownr, uShort &value) const
virtual Bool isDefined(uInt rownr) const =0
Test if the given cell contains a defined value.
void getScalarValue(uInt rownr, Bool *value, const String &) const
Get the value of a scalar in the given row.
virtual IPosition shape(uInt rownr) const
Get the shape of an array in a particular cell.
void getScalar(uInt rownr, uChar &value) const
virtual TableColumn * clone() const
Clone the object.
TableColumn & operator=(const TableColumn &)
Assignment has reference semantics.
void putScalar(uInt rownr, const Short &value)
Bool isNull() const
Test if the object is null, i.e.
void getScalarValue(uInt rownr, uInt *value, const String &) const
void throwIfNull() const
Throw an exception if the object is null, i.e.
this file contains all the compiler specific defines
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
void reference(const TableColumn &)
Change the reference to another column.
void getScalarValue(uInt rownr, String *value, const String &) const
float asfloat(uInt rownr) const
void getScalar(uInt rownr, double &value) const
Complex asComplex(uInt rownr) const
Abstract base class for a table column.