28 #ifndef TABLES_EXPRNODE_H 29 #define TABLES_EXPRNODE_H 32 #include <casacore/casa/aips.h> 33 #include <casacore/tables/TaQL/ExprNodeRep.h> 34 #include <casacore/tables/TaQL/ExprRange.h> 35 #include <casacore/tables/TaQL/ExprFuncNode.h> 36 #include <casacore/tables/TaQL/TaQLStyle.h> 37 #include <casacore/tables/TaQL/MArray.h> 38 #include <casacore/casa/Utilities/CountedPtr.h> 39 #include <casacore/casa/Utilities/DataType.h> 40 #include <casacore/casa/BasicSL/Complex.h> 52 class TableExprNodeBinary;
53 class TableExprNodeSet;
54 template<
class T>
class Block;
55 template<
class T>
class Array;
375 void show (ostream&)
const;
1205 left, right, tolerance);
1218 left, right, tolerance);
1255 sourcePos, conePos, radii);
1262 sourcePos, conePos, radii);
1269 sourcePos, conePos, radii);
1740 array, fraction, axes);
1770 node, halfBoxWidth);
1776 node, halfBoxWidth);
1782 node, halfBoxWidth);
1788 node, halfBoxWidth);
1794 node, halfBoxWidth);
1800 node, halfBoxWidth);
1806 node, halfBoxWidth);
1812 node, halfBoxWidth);
1818 node, halfBoxWidth);
1824 node, halfBoxWidth);
1830 node, halfBoxWidth);
1836 node, halfBoxWidth);
1842 node, halfBoxWidth);
1848 node, halfBoxWidth);
1854 node, halfBoxWidth);
1860 node, halfBoxWidth);
1866 node, halfBoxWidth);
1872 node, halfBoxWidth);
1878 node, halfBoxWidth);
1884 node, halfBoxWidth);
1953 condition, arg1, arg2);
LatticeExprNode log10(const LatticeExprNode &expr)
CountedPtr< TableExprNodeRep > TENShPtr
const Record & attributes() const
Get the attributes.
Array< String > getArrayString(const TableExprId &id) const
Array< Double > getArrayDouble(const TableExprId &id) const
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
TableExprNode dms(const TableExprNode &node)
Class to handle an Array with an optional mask.
MArray< Double > getDoubleAS(const TableExprId &id)
TableExprNode boxedStddev(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
TableExprNode anyCone(const TableExprNode &sourcePos, const TableExprNode &cones)
The result is always a Bool scalar telling if any cone contains the source.
TableExprNode transpose(const TableExprNode &array)
Transpose all axes of a (masked) array.
return angles as dms strings
Array< Int64 > getArrayInt(const TableExprId &id) const
TableExprNode alls(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
virtual Array< uInt > getColumnuInt(const Vector< uInt > &rownrs)
LatticeExprNode log(const LatticeExprNode &expr)
t * get() const
Get the underlying pointer.
LatticeExprNode arg(const LatticeExprNode &expr)
TableExprNode means(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
TableExprNode runningRms(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
TableExprNode downcase(const TableExprNode &node)
LatticeExprNode median(const LatticeExprNode &expr)
for Int, Double or Complex returning Double or Complex
Array< DComplex > getColumnDComplex(const Vector< uInt > &rownrs) const
TableExprNode time(const TableExprNode &node)
for any array returning Bool scalar
virtual Array< Bool > getColumnBool(const Vector< uInt > &rownrs)
Get the value of the expression evaluated for the entire column.
TENShPtr newGT(const TENShPtr &right) const
std::complex< Float > Complex
Main interface class to a read/write table.
LatticeExprNode operator/(const LatticeExprNode &left, const LatticeExprNode &right)
TableExprNode runningVariance(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
const TableExprNodeRep * getNodeRep() const
LatticeExprNode mask(const LatticeExprNode &expr)
This function returns the mask of the given expression.
cone search functions, implemented in derived class
T product(const TableVector< T > &tv)
LatticeExprNode imag(const LatticeExprNode &expr)
TableExprNode variances(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
for Bool array returning Int scalar
MArray< String > getStringAS(const TableExprId &id)
virtual MArray< Bool > getArrayBool(const TableExprId &id)
Get an array value for this node in the given row.
Array< Short > getColumnShort(const Vector< uInt > &rownrs) const
TableExprNode array(const TableExprNode &values, const TableExprNodeSet &shape)
Create an array of the given shape and fill it with the values.
Class to hold multiple table expression nodes.
LatticeExprNode sum(const LatticeExprNode &expr)
MArray< DComplex > getDComplexAS(const TableExprId &id) const
TableExprNode(TableExprNodeRep *rep)
Construct from a node representation.
LatticeExprNode max(const LatticeExprNode &left, const LatticeExprNode &right)
TableExprNode operator-() const
TableExprNode weekday(const TableExprNode &node)
Handle class for a table column expression tree.
LatticeExprNode operator%(const LatticeExprNode &left, const LatticeExprNode &right)
TENShPtr newBitAnd(const TENShPtr &right) const
virtual MArray< MVTime > getArrayDate(const TableExprId &id)
TableExprNode runningAll(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
TableExprNode phase(const TableExprNode &node)
The phase (i.e.
virtual MVTime getDate(const TableExprId &id)
TENShPtr newBitXor(const TENShPtr &right) const
TableExprNode ltrim(const TableExprNode &node)
static TableExprNode newRandomNode(const Table &table)
Create rand() function node.
Bool near(const GaussianBeam &left, const GaussianBeam &other, const Double relWidthTol, const Quantity &absPaTol)
TENShPtr newTimes(const TENShPtr &right) const
MArray< String > getStringAS(const TableExprId &id) const
for Int, Double, Complex or String returning Bool
LatticeExprNode ntrue(const LatticeExprNode &expr)
virtual Int64 getInt(const TableExprId &id)
for Int, Double or DComplex returning Double
void show(ostream &) const
Show the tree.
Array< uChar > getColumnuChar(const Vector< uInt > &rownrs) const
virtual Array< Double > getColumnDouble(const Vector< uInt > &rownrs)
virtual Array< uShort > getColumnuShort(const Vector< uInt > &rownrs)
TableExprNode mins(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
virtual Array< Float > getColumnFloat(const Vector< uInt > &rownrs)
uInt nrow() const
Get the number of rows in the table associated with this expression.
LatticeExprNode fractile(const LatticeExprNode &expr, const LatticeExprNode &fraction)
Determine the value of the element at the part fraction from the beginning of the given lattice...
void adaptUnit(const Unit &)
Adapt the unit of the expression to the given unit (if not empty).
TableExprNode maxs(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
angular distance returning radians
TableExprNode year(const TableExprNode &node)
MArray< Int64 > getIntAS(const TableExprId &id)
Bool checkTableSize(const Table &table, Bool canBeConst) const
Check if tables used in expression have the same number of rows as the given table.
static TableExprNode newFunctionNode(TableExprFuncNode::FunctionType, const TableExprNodeSet &set, const Table &table, const TaQLStyle &=TaQLStyle(0))
Create function node of the given type with the given arguments.
LatticeExprNode exp(const LatticeExprNode &expr)
Bool isNull() const
Does the node contain no actual node?
TableExprNode mjd(const TableExprNode &node)
bool operator==(const casacore_allocator< T, ALIGNMENT > &, const casacore_allocator< T, ALIGNMENT > &)
void applySelection(const Vector< uInt > &rownrs)
Re-create the column object for a selection of rows.
TableExprNode month(const TableExprNode &node)
virtual Array< DComplex > getColumnDComplex(const Vector< uInt > &rownrs)
Abstract base class for a node in a table column expression tree.
MArray< MVTime > getDateAS(const TableExprId &id)
static TableExprNode newKeyConst(const TableRecord &, const Vector< String > &fieldNames)
Create a TableExprNodeConst for a table keyword (which is handled as a constant). ...
TENShPtr setBinaryNodeInfo(TableExprNodeBinary *tsnptr, const TENShPtr &right=TENShPtr()) const
Put the new binary node object in a shared pointer.
TableExprNode operator+() const
Unary operators on numeric TableExprNode's.
TableExprNode boxedAvdev(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
TableExprNode marray(const TableExprNode &array, const TableExprNode &mask)
Form a masked array.
TableExprNode runningMax(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
TableExprNode strlength(const TableExprNode &node)
String functions on scalars or arrays.
LatticeExprNode any(const LatticeExprNode &expr)
Functions operating on a logical expression resulting in a scalar; Functions "any" (are any pixels "T...
TableExprNode boxedMedian(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
Array< Bool > getArrayBool(const TableExprId &id) const
LatticeExprNode floor(const LatticeExprNode &expr)
TableExprNode arrayMask(const TableExprNode &array)
Get the mask of a masked array.
MArray< Int64 > getIntAS(const TableExprId &id) const
TableExprNode cones(const TableExprNode &sourcePos, const TableExprNode &cones)
Cone search; test if the position of a source is inside a cone.
TableExprNode boolean(const TableExprNode &node)
Convert numeric or string value to bool (0, no, false, - means false)
DComplex getDComplex(const TableExprId &id) const
static TableExprNode newRowidNode(const Table &table)
Create rowid() function node.
LatticeExprNode cos(const LatticeExprNode &expr)
MArray< Double > getDoubleAS(const TableExprId &id) const
ValueType valueType() const
Get the value type.
for any array returning Int scalar
for any array returning Int array
for Int, Double, Bool or String returning Int (using floor)
TableExprNode rtrim(const TableExprNode &node)
MArray< MVTime > getDateAS(const TableExprId &id) const
TableExprNode pattern(const TableExprNode &node)
LatticeExprNode operator>=(const LatticeExprNode &left, const LatticeExprNode &right)
virtual void applySelection(const Vector< uInt > &rownrs)
Re-create the column object for a selection of rows.
void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
virtual Array< Int > getColumnInt(const Vector< uInt > &rownrs)
TENShPtr node_p
The actual (counted referenced) representation of a node.
Array< String > getColumnString(const Vector< uInt > &rownrs) const
LatticeExprNode conj(const LatticeExprNode &expr)
Array< Bool > getColumnBool(const Vector< uInt > &rownrs) const
Get the value of the expression evaluated for the entire column.
Array< MVTime > getArrayDate(const TableExprId &id) const
virtual MArray< Double > getArrayDouble(const TableExprId &id)
TENShPtr newModulo(const TENShPtr &right) const
const Unit & unit() const
Get the unit of the expression.
virtual Double getDouble(const TableExprId &id)
~TableExprNode()
The destructor deletes all the underlying TableExprNode objects,.
for any type returning array of that type
for Int, Double or DComplex returning Int, Double or Complex
TableExprNode & operator=(const TableExprNode &)
Assignment (reference semantics).
LatticeExprNode nfalse(const LatticeExprNode &expr)
TableExprNode operator!() const
Unary NOT-operator on boolean TableExprNode's.
void disableApplySelection()
Do not apply the selection.
special function resembling if statement
for Double or DComplex returning Double
TableExprNode medians(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
TableExprNode sumSquares(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
LatticeExprNode tanh(const LatticeExprNode &expr)
TENShPtr newBitOr(const TENShPtr &right) const
TableExprNode ntrues(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
for Int, Double or DComplex array returning Bool
virtual MArray< DComplex > getArrayDComplex(const TableExprId &id)
TableExprNode fractiles(const TableExprNode &array, const TableExprNode &fraction, const TableExprNodeSet &collapseAxes)
LatticeExprNode min(const LatticeExprNode &left, const LatticeExprNode &right)
TableExprNode boxedAny(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode avdev(const LatticeExprNode &expr)
TableExprNode isInf(const TableExprNode &node)
const Array< T > & array() const
Get access to the array.
TENShPtr newMinus(const TENShPtr &right) const
TableExprNode arrayFlatten(const TableExprNode &array)
Flatten a masked array (get unmasked elements).
TENShPtr newEQ(const TENShPtr &right) const
for Int, Double or DComplex returning Double or Complex
LatticeExprNode replace(const LatticeExprNode &arg1, const LatticeExprNode &arg2)
This function replaces every masked-off element in the first argument with the corresponding element ...
TableExprNode useUnit(const Unit &unit) const
Use a unit for the given TableExprNode.
for Int, or Double or Complex returning Bool (2 is with default tolerance)
static TableExprNode newRownrNode(const Table &table, uInt origin)
Create rownumber() function node.
std::complex< Double > DComplex
TableExprNode cdate(const TableExprNode &node)
LatticeExprNode abs(const LatticeExprNode &expr)
Numerical 1-argument functions which result in a real number regardless of input expression type...
Regular expression class.
return angles as hms/dms strings
TableExprNode arrayData(const TableExprNode &array)
Get the data array of a masked array.
TableExprNode trim(const TableExprNode &node)
Class with static members defining the TaQL style.
LatticeExprNode ndim(const LatticeExprNode &expr)
1-argument function to get the dimensionality of a lattice.
LatticeExprNode operator<=(const LatticeExprNode &left, const LatticeExprNode &right)
String toString(const SubScanKey &subScanKey)
void get(const TableExprId &id, Bool &value) const
Get a value for this node in the given row.
Bool isScalar() const
Is the expression a scalar?
for Int, Double or Complex array returning the same
LatticeExprNode formComplex(const LatticeExprNode &left, const LatticeExprNode &right)
Form a complex number from two real numbers.
TableExprNode boxedAll(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode iif(const LatticeExprNode &condition, const LatticeExprNode &arg1, const LatticeExprNode &arg2)
Function resembling the ternary ?: construct in C++.
LatticeExprNode nelements(const LatticeExprNode &expr)
1-argument function to get the number of elements in a lattice.
virtual Array< String > getColumnString(const Vector< uInt > &rownrs)
uInt nrow() const
Get the number of rows in the table associated with this expression.
TableExprNode anys(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
TableExprNode boxedMax(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode sign(const LatticeExprNode &expr)
LatticeExprNode sqrt(const LatticeExprNode &expr)
Array< Int64 > getColumnInt64(const Vector< uInt > &rownrs) const
TableExprNode products(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
LatticeExprNode tan(const LatticeExprNode &expr)
for Int or Double returning Int or Double
TableExprNode isFinite(const TableExprNode &node)
Function to test if a scalar or array is finite.
TableExprNode runningAny(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode atan(const LatticeExprNode &expr)
A hierarchical collection of named fields of various types.
TableExprNode in(const TableExprNode &array, const TaQLStyle &=TaQLStyle(0)) const
The IN operator to test if a value is contained in an array or set.
bool Bool
Define the standard types used by Casacore.
TableExprNode upcase(const TableExprNode &node)
TableExprNode cube(const TableExprNode &node)
LatticeExprNode stddev(const LatticeExprNode &expr)
TableExprNode runningMedian(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
TableExprNode angdistx(const TableExprNode &pos1, const TableExprNode &pos2)
Angular distance as above, but only pair-wise enties are used if both arguments are arrays...
virtual void ranges(Block< TableExprRange > &)
Convert the tree to a number of range vectors which at least select the same things.
static std::vector< TENShPtr > convertBlockTEN(Block< TableExprNode > &nodes)
convert Block of TableExprNode to vector of TENShPtr.
for DComplex or String returning DComplex
LatticeExprNode round(const LatticeExprNode &expr)
TableExprNode runningStddev(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
return angles as hms strings
TableExprNode substr(const TableExprNode &str, const TableExprNode &pos)
const Unit & unit() const
Get the unit.
virtual MArray< Int64 > getArrayInt(const TableExprId &id)
virtual void show(ostream &, uInt indent) const
Show the expression tree.
virtual Bool getBool(const TableExprId &id)
Get a scalar value for this node in the given row.
Bool getBool(const TableExprId &id) const
TableExprNode sqlpattern(const TableExprNode &node)
DataType dataType() const
Get the data type of the expression.
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape...
LatticeExprNode operator &&(const LatticeExprNode &left, const LatticeExprNode &right)
Logical binary operators.
A hierarchical collection of named fields of various types.
LatticeExprNode operator>(const LatticeExprNode &left, const LatticeExprNode &right)
Array< DComplex > getArrayDComplex(const TableExprId &id) const
static TableExprNode newColumnNode(const Table &tab, const String &name, const Vector< String > &fieldNames)
Create a column node on behalf of the Table class.
TENShPtr newPlus(const TENShPtr &right) const
Construct a new node for the given operation.
Array< Int > getColumnInt(const Vector< uInt > &rownrs) const
TableExprNode cmonth(const TableExprNode &node)
TableExprNode operator|(const TableExprNode &left, const TableExprNode &right)
LatticeExprNode atan2(const LatticeExprNode &left, const LatticeExprNode &right)
Numerical 2-argument functions.
TableExprNode integer(const TableExprNode &node)
Convert double, bool, or string to int (using floor).
TableExprNode runningMean(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
TableExprNode findCone(const TableExprNode &sourcePos, const TableExprNode &cones)
The sourcePos can contain multiple sources.
virtual void disableApplySelection()
Do not apply the selection.
TableExprNode boxedMean(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
DataType getColumnDataType() const
Get the data type for doing a getColumn on the expression.
virtual Array< Complex > getColumnComplex(const Vector< uInt > &rownrs)
TableExprNode nfalses(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
TableExprNode boxedVariance(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
TableExprNode angdist(const TableExprNode &pos1, const TableExprNode &pos2)
Angular distance between positions.
for Int or Double array returning Int or Double
MArray< Bool > getBoolAS(const TableExprId &id)
Get a value as an array, even it it is a scalar.
TableExprNode isdefined(const TableExprNode &array)
Function operating on a field resulting in a bool scalar.
TableExprNode boxedRms(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
MVTime getDate(const TableExprId &id) const
TableExprNode regex(const TableExprNode &node)
Functions for regular expression matching and pattern matching.
LatticeExprNode fmod(const LatticeExprNode &left, const LatticeExprNode &right)
MArray< Bool > getBoolAS(const TableExprId &id) const
Get a value as an array, even it it is a scalar.
TableExprNode day(const TableExprNode &node)
The identification of a TaQL selection subject.
LatticeExprNode asin(const LatticeExprNode &expr)
TENShPtr newDivide(const TENShPtr &right) const
Array< uShort > getColumnuShort(const Vector< uInt > &rownrs) const
TableExprNode cdow(const TableExprNode &node)
TableExprNode boxedMin(const TableExprNode &node, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode mean(const LatticeExprNode &expr)
Array< Double > getColumnDouble(const Vector< uInt > &rownrs) const
virtual String getString(const TableExprId &id)
Table & table()
Get table.
TENShPtr newIN(const TENShPtr &right, const TaQLStyle &) const
TableExprNode rms(const TableExprNode &array)
TableExprNode runningAvdev(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
LatticeExprNode sinh(const LatticeExprNode &expr)
for Int, Double or DComplex returning Int or Double
Double getDouble(const TableExprId &id) const
Array< uInt > getColumnuInt(const Vector< uInt > &rownrs) const
Class to handle a Regex or StringDistance.
LatticeExprNode acos(const LatticeExprNode &expr)
TableExprNode square(const TableExprNode &node)
virtual TaqlRegex getRegex(const TableExprId &id)
TableExprNode runningMin(const TableExprNode &array, const TableExprNodeSet &halfBoxWidth)
Functions operating for each element on a box around that element.
virtual MArray< String > getArrayString(const TableExprId &id)
for Bool array returning Bool
static TableExprNode newUDFNode(const String &name, const TableExprNodeSet &set, const Table &table, const TaQLStyle &=TaQLStyle(0))
Create a user defined function node.
TableExprNode sumSquare(const TableExprNode &array)
TableExprNode capitalize(const TableExprNode &node)
TableExprNode operator~() const
Unary bitwise negate-operator on integer TableExprNode's.
String: the storage and methods of handling collections of characters.
static TableRecord * findLastKeyRec(const TableRecord &keyset, const Vector< String > &fieldNames, String &fullName)
Handle all field names except the last one.
const Record & attributes() const
Get the attributes of the expression.
TableExprNode nearAbs(const TableExprNode &left, const TableExprNode &right)
static TableExprNode newArrayPartNode(const TableExprNode &arrayNode, const TableExprNodeSet &indices, const TaQLStyle &=TaQLStyle(0))
Create ArrayElement node for the given array with the given index.
Array< Complex > getColumnComplex(const Vector< uInt > &rownrs) const
TableExprNode stddevs(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
TableExprNode datetime(const TableExprNode &node)
Functions for date-values.
T norm(const TableVector< T > &tv)
LatticeExprNode operator^(const LatticeExprNode &left, const LatticeExprNode &right)
LatticeExprNode operator<(const LatticeExprNode &left, const LatticeExprNode &right)
LatticeExprNode isNaN(const LatticeExprNode &expr)
Test if a value is a NaN.
TableExprNode operator &(const TableExprNode &left, const TableExprNode &right)
TENShPtr newOR(const TENShPtr &right) const
TableExprNode avdevs(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
Class to deal with Levensthein distance of strings.
MArray< DComplex > getDComplexAS(const TableExprId &id)
TableExprNode mjdtodate(const TableExprNode &node)
TENShPtr newGE(const TENShPtr &right) const
TableExprNode ctodt(const TableExprNode &node)
static void throwInvDT(const String &message)
Throw invalid data type exception.
virtual DComplex getDComplex(const TableExprId &id)
TENShPtr newNE(const TENShPtr &right) const
LatticeExprNode variance(const LatticeExprNode &expr)
virtual Array< uChar > getColumnuChar(const Vector< uInt > &rownrs)
LatticeExprNode ceil(const LatticeExprNode &expr)
LatticeExprNode pow(const LatticeExprNode &left, const LatticeExprNode &right)
for Int or Double array returning Double
String getString(const TableExprId &id) const
Array< Float > getColumnFloat(const Vector< uInt > &rownrs) const
Class to handle date/time type conversions and I/O.
TableExprNode rmss(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
bool operator!=(const casacore_allocator< T, ALIGNMENT > &, const casacore_allocator< T, ALIGNMENT > &)
TableExprNode ctime(const TableExprNode &node)
TableExprNode hms(const TableExprNode &node)
Functions for angle-values.
LatticeExprNode all(const LatticeExprNode &expr)
TENShPtr newAND(const TENShPtr &right) const
Int64 getInt(const TableExprId &id) const
TableExprNode diagonal(const TableExprNode &array)
Get the diagonal of a (masked) array; If the array is not a Matrix, it will take the diagonals of the...
Abstract base class for a node having 0, 1, or 2 child nodes.
TableExprNode operator()(const TableExprNodeSet &indices)
Slicing in a node containing an array.
TableExprNode sums(const TableExprNode &array, const TableExprNodeSet &collapseAxes)
The partial version of the functions above.
LatticeExprNode operator||(const LatticeExprNode &left, const LatticeExprNode &right)
this file contains all the compiler specific defines
MVBaseline operator*(const RotMatrix &left, const MVBaseline &right)
Rotate a Baseline vector with rotation matrix and other multiplications.
LatticeExprNode cosh(const LatticeExprNode &expr)
virtual Array< Short > getColumnShort(const Vector< uInt > &rownrs)
TableExprNode week(const TableExprNode &node)
TableExprNode hdms(const TableExprNode &node)
LatticeExprNode real(const LatticeExprNode &expr)
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
LatticeExprNode sin(const LatticeExprNode &expr)
Numerical 1-argument functions.
for Int, Double, DComplex, Bool or String returning Double
static TableExprNode newConeNode(TableExprFuncNode::FunctionType, const TableExprNodeSet &set, uInt origin=0)
Create cone function node of the given type with the given arguments.
const TENShPtr & getRep() const
returns const pointer to the underlying TableExprNodeRep object.
const Table & table() const
Get table.
virtual Array< Int64 > getColumnInt64(const Vector< uInt > &rownrs)
TableExprNode date(const TableExprNode &node)
TableExprNode amplitude(const TableExprNode &node)
The amplitude (i.e.