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.
virtual Array< DComplex > getArrayDComplex(const TableExprId &id)
The default implementation of getArrayDComplex does getArrayDouble and converts the result...
PtrBlock< TableExprNodeRep * > & rwOperands()
Class representing an array function in table select expression.
void setScale(Double scale)
Set unit scale factor (needed for sqrt).
virtual Array< Int64 > getArrayInt(const TableExprId &id)
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
Get the function node.
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 Array< MVTime > getArrayDate(const TableExprId &id)
TableExprFuncNode::FunctionType funcType() const
NodeDataType argDataType() const
virtual Array< Bool > getArrayBool(const TableExprId &id)
'get' Functions to get the desired result of a function
TableExprFuncNodeArray(TableExprFuncNode::FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, const TaQLStyle &)
Constructor.
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.
const PtrBlock< TableExprNodeRep * > & operands() const
Some functions to be used by TableExprNodeFuncArray.
bool Bool
Define the standard types used by Casacore.
ValueType
Define the value types.
A drop-in replacement for Block<T*>.
TableExprFuncNode * getChild()
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.
virtual Array< Double > getArrayDouble(const TableExprId &id)
The default implementation of getArrayDouble does getArrayInt and converts the result.
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.
~TableExprFuncNodeArray()
Destructor.
this file contains all the compiler specific defines
virtual Array< String > getArrayString(const TableExprId &id)