28 #ifndef TABLES_EXPRFUNCNODEARRAY_H
29 #define TABLES_EXPRFUNCNODEARRAY_H
77 const vector<TENShPtr>& nodes,
85 virtual void getAggrNodes (std::vector<TableExprNodeRep*>& aggr);
88 virtual void getColumnNodes (std::vector<TableExprNodeRep*>& cols);
const IPosition & getAlternate(const TableExprId &id)
Set the alternate value expandAlt_p for array expand and return it.
A Vector of integers, for indexing into Array<T> objects.
IPosition getAxes(const TableExprId &id, Int ndim, uInt axarg=1, Bool swapRemove=True)
Get the collapse axes for the partial functions.
Class representing a function in table select expression.
std::vector< TENShPtr > & rwOperands()
Int ndim() const
Get the fixed dimensionality (same for all rows).
Class representing an array function in table select expression.
TableExprFuncNodeArray(TableExprFuncNode::FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, const vector< TENShPtr > &nodes, const Block< Int > &dtypeOper, const TaQLStyle &)
Constructor.
virtual void getAggrNodes(std::vector< TableExprNodeRep * > &aggr)
Get the nodes representing an aggregate function.
Class to hold multiple table expression nodes.
MArray< Double > angdistx(const MArray< Double > &a1, const MArray< Double > &a2) const
The angular distance between each pair of the arguments.
Base class for arrays in table select expression.
IPosition adjustShape(const IPosition &shape, const IPosition &origShape) const
Adjust the resize shape by replacing negative axes with the original axis (if present) or 1...
NodeDataType
Define the data types of a node.
virtual MArray< DComplex > getArrayDComplex(const TableExprId &id)
The default implementation of getArrayDComplex does getArrayDouble and converts the result...
const std::vector< TENShPtr > & operands() const
Some functions to be used by TableExprNodeFuncArray.
virtual void getColumnNodes(std::vector< TableExprNodeRep * > &cols)
Get the nodes representing a table column.
const TableExprFuncNode * getChild() const
virtual MArray< Int64 > getArrayInt(const TableExprId &id)
NodeDataType argDataType() const
Class with static members defining the TaQL style.
virtual MArray< Bool > getArrayBool(const TableExprId &id)
'get' Functions to get the desired result of a function
bool Bool
Define the standard types used by Casacore.
virtual MArray< String > getArrayString(const TableExprId &id)
ValueType
Define the value types.
const IPosition & getDiagonalArg(const TableExprId &id, const IPosition &shp)
Get the arguments for the diagonals function.
TableExprFuncNode * getChild()
Get the function node.
The identification of a TaQL selection subject.
void tryToConst()
Try if the function gives a constant result.
IPosition getOrder(const TableExprId &id, Int ndim)
Get the transpose order of the array axes.
const IPosition & getArrayShape(const TableExprId &id, uInt axarg=1)
Get the shape for the array, boxed and running functions.
FunctionType funcType() const
NodeDataType argDataType() const
virtual MArray< MVTime > getArrayDate(const TableExprId &id)
TableExprFuncNode::FunctionType funcType() const
const std::vector< TENShPtr > & operands() const
Some functions to be used by TableExprNodeFuncArray.
IPosition removeAxes(const IPosition &axes, Int ndim) const
Remove axes exceeding ndim.
~TableExprFuncNodeArray()
Destructor.
std::vector< TENShPtr > & rwOperands()
const IPosition & shape() const
Get the fixed shape (same for all rows).
virtual MArray< Double > getArrayDouble(const TableExprId &id)
The default implementation of getArrayDouble does getArrayInt and converts the result.
MArray< T > TEFResize(const MArray< T > &arr, const TableExprId &id)
Templated function to resize/expand an array.
IPosition getReverseAxes(const TableExprId &id, uInt ndim)
Get the axes for the reverse function.