28 #ifndef TABLES_EXPRAGGRNODE_H
29 #define TABLES_EXPRAGGRNODE_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/TaQL/ExprFuncNode.h>
39 class TableExprGroupFuncBase;
40 class TableExprGroupFuncSet;
89 const vector<TENShPtr>& nodes,
96 std::vector<TENShPtr>& nodes);
String: the storage and methods of handling collections of characters.
virtual Double getDouble(const TableExprId &id)
TENShPtr operand()
Get the operand node.
virtual Bool getBool(const TableExprId &id)
Functions to get the result of an aggregate function.
TableExprGroupFuncBase * doMakeGroupAggrFunc()
Do the actual creation of the correct aggregate function object.
virtual Int64 getInt(const TableExprId &id)
virtual CountedPtr< TableExprGroupFuncBase > makeGroupAggrFunc()
Create the correct aggregate function object.
TableExprAggrNode(FunctionType, NodeDataType, ValueType, const TableExprNodeSet &source, const vector< TENShPtr > &nodes, const Block< Int > &dtypeOper)
Constructor.
CountedPtr< TableExprGroupFuncBase > itsFunc
virtual String getString(const TableExprId &id)
virtual MVTime getDate(const TableExprId &id)
virtual DComplex getDComplex(const TableExprId &id)
static NodeDataType checkOperands(Block< Int > &dtypeOper, ValueType &resVT, FunctionType ftype, std::vector< TENShPtr > &nodes)
Check the operands of the aggregate function and return the result's data type.
virtual void getAggrNodes(std::vector< TableExprNodeRep * > &aggr)
Get the nodes representing an aggregate function.
virtual Bool isLazyAggregate() const
Is the aggregate function a lazy or an immediate one?
const std::vector< TENShPtr > & operands() const
Some functions to be used by TableExprNodeFuncArray.
Abstract base class for classes calculating an aggregated group result.
NodeDataType
Define the data types of a node.
ValueType
Define the value types.
Class to hold multiple table expression nodes.
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)
CountedPtr< TableExprNodeRep > TENShPtr
bool Bool
Define the standard types used by Casacore.