28 #ifndef TABLES_EXPRFUNCNODEARRAY_H 29 #define TABLES_EXPRFUNCNODEARRAY_H 32 #include <casacore/casa/aips.h> 33 #include <casacore/tables/TaQL/ExprNodeArray.h> 34 #include <casacore/tables/TaQL/ExprFuncNode.h> 83 virtual void getAggrNodes (vector<TableExprNodeRep*>& aggr);
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.
PtrBlock< TableExprNodeRep * > & rwOperands()
Class representing an array function in table select expression.
void setScale(Double scale)
Set unit scale factor (needed for sqrt).
Int ndim() const
Get the fixed dimensionality (same for all rows).
Class to hold multiple table expression nodes.
static TableExprNodeRep * fillNode(TableExprFuncNodeArray *thisNode, PtrBlock< TableExprNodeRep *> &nodes, const Block< Int > &dtypeOper)
Link the children to the node and convert the children to constants if possible.
const TableExprFuncNode * getChild() const
void setScale(Double scale)
Set unit scale factor (needed for sqrt).
PtrBlock< TableExprNodeRep * > & rwOperands()
Base class for arrays in table select expression.
NodeDataType
Define the data types of a node.
Abstract base class for a node in a table column expression tree.
const PtrBlock< TableExprNodeRep * > & operands() const
Some functions to be used by TableExprNodeFuncArray.
FunctionType funcType() const
virtual MArray< DComplex > getArrayDComplex(const TableExprId &id)
The default implementation of getArrayDComplex does getArrayDouble and converts the result...
TableExprFuncNode::FunctionType funcType() const
NodeDataType argDataType() const
TableExprFuncNodeArray(TableExprFuncNode::FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, const TaQLStyle &)
Constructor.
virtual MArray< Int64 > getArrayInt(const TableExprId &id)
virtual void getColumnNodes(vector< TableExprNodeRep *> &cols)
Get the nodes representing a table column.
Class with static members defining the TaQL style.
NodeDataType argDataType() const
virtual void getAggrNodes(vector< TableExprNodeRep *> &aggr)
Get the nodes representing an aggregate function.
virtual MArray< Bool > getArrayBool(const TableExprId &id)
'get' Functions to get the desired result of a function
const PtrBlock< TableExprNodeRep * > & operands() const
Some functions to be used by TableExprNodeFuncArray.
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.
A drop-in replacement for Block<T*>.
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 function.
IPosition removeAxes(const IPosition &axes, Int ndim) const
Remove axes exceeding ndim.
virtual MArray< MVTime > getArrayDate(const TableExprId &id)
~TableExprFuncNodeArray()
Destructor.
this file contains all the compiler specific defines
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 fucntion to resize/expand an array.