28 #ifndef TABLES_EXPRNODERECORD_H
29 #define TABLES_EXPRNODERECORD_H
32 #include <casacore/tables/TaQL/ExprNodeRep.h>
33 #include <casacore/tables/TaQL/ExprNodeArray.h>
34 #include <casacore/casa/Containers/Block.h>
35 #include <casacore/casa/Utilities/DataType.h>
41 class RecordInterface;
String: the storage and methods of handling collections of characters.
Abstract base class for a node having 0, 1, or 2 child nodes.
Array field in record select expression tree.
virtual MArray< Double > getArrayDouble(const TableExprId &id)
The default implementation of getArrayDouble does getArrayInt and converts the result.
virtual const IPosition & getShape(const TableExprId &id)
Get the shape of the array in the given row.
virtual Bool isDefined(const TableExprId &id)
Is the value in the given row defined? The default implementation returns True.
virtual MArray< DComplex > getArrayDComplex(const TableExprId &id)
The default implementation of getArrayDComplex does getArrayDouble and converts the result.
~TableExprNodeRecordFieldArray()
TableExprNodeRecordFieldArray(DataType dtype, const Block< Int > &fieldNumbers)
const RecordInterface & getRecord(const TableExprId &id) const
Get the record for the last field number, thus going through all subrecords for the other field numbe...
virtual MArray< Int64 > getArrayInt(const TableExprId &id)
virtual MArray< Bool > getArrayBool(const TableExprId &id)
Get an array value for this node in the given row.
virtual MArray< String > getArrayString(const TableExprId &id)
virtual Bool isDefined(const TableExprId &id)
Is the value in the given row defined? The default implementation returns True.
virtual Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
TableExprNodeRecordField(DataType dtype, const Block< Int > &fieldNumbers)
const RecordInterface & getRecord(const TableExprId &id) const
Get the record for the last field number, thus going through all subrecords for the other field numbe...
virtual String getString(const TableExprId &id)
~TableExprNodeRecordField()
virtual DComplex getDComplex(const TableExprId &id)
virtual Int64 getInt(const TableExprId &id)
virtual Double getDouble(const TableExprId &id)
virtual const IPosition & getShape(const TableExprId &id)
Get the shape for the given row.
std::complex< Double > DComplex
this file contains all the compiler specific defines
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
bool Bool
Define the standard types used by Casacore.