28 #ifndef TABLES_EXPRGROUPAGGRFUNC_H
29 #define TABLES_EXPRGROUPAGGRFUNC_H
40 class TableExprNodeArrayColumn;
virtual ~TableExprGroupRmsDouble()
virtual ~TableExprGroupFractileDouble()
TableExprGroupRmsDouble(TableExprNodeRep *node)
virtual void finish()
If needed, finish the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
Abstract base class for aggregate functions giving a dcomplex scalar.
virtual ~TableExprGroupMaxDouble()
Aggregate class counting if any value in a group is true.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupStdDevDouble()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupAll(TableExprNodeRep *node)
Aggregate class determining the sum of squares of double values in a group.
virtual ~TableExprGroupAll()
virtual void finish()
If needed, finish the aggregation.
TableExprGroupMaxDouble(TableExprNodeRep *node)
virtual ~TableExprGroupMeanDouble()
Aggregate class determining the RMS of values in a group.
virtual ~TableExprGroupStdDevDComplex()
Aggregate class determining the sum of double values in a group.
Aggregate class determining the product of complex values in a group.
virtual ~TableExprGroupCountAll()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupVarianceDComplex()
virtual ~TableExprGroupSumInt()
Aggregate class determining the maximum integer value in a group.
virtual ~TableExprGroupProductDComplex()
Base class for Array column in table select expression.
virtual Bool isLazy() const
Does the aggregate function use lazy semantics? The default implementation returns False...
TableExprGroupSumDComplex(TableExprNodeRep *node)
virtual void finish()
If needed, finish the aggregation.
TableExprGroupNTrue(TableExprNodeRep *node)
TableExprGroupSumDouble(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupSumSqrDouble(TableExprNodeRep *node)
Aggregate class counting number of rows in a group.
virtual Double getDouble(const vector< TableExprId > &ids)
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...
TableExprGroupMinDouble(TableExprNodeRep *node)
Aggregate class determining the sum of squares of complex values in a group.
TableExprGroupMeanDComplex(TableExprNodeRep *node)
Aggregate class determining the standard deviation of values in a group.
Abstract base class for a node in a table column expression tree.
Aggregate class determining the sum of integer values in a group.
TableExprGroupAny(TableExprNodeRep *node)
Abstract base class for aggregate functions giving a double scalar.
TableExprGroupSumSqrDComplex(TableExprNodeRep *node)
Aggregate class determining the product of double values in a group.
Aggregate class counting the number of false values in a group.
TableExprGroupProductInt(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupMaxInt()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupSumDComplex()
virtual ~TableExprGroupProductInt()
virtual ~TableExprGroupAny()
TableExprGroupMaxInt(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class determining the sum of squares of integer values in a group.
virtual void finish()
If needed, finish the aggregation.
TableExprGroupVarianceDouble(TableExprNodeRep *node, uInt ddof)
TableExprGroupVarianceDComplex(TableExprNodeRep *node, uInt ddof)
TableExprGroupStdDevDComplex(TableExprNodeRep *node, uInt ddof)
Abstract base class for aggregate functions giving a bool scalar.
Aggregate class determining the minimum integer value in a group.
Aggregate class counting if all values in a group are true.
TableExprGroupMinInt(TableExprNodeRep *node)
virtual ~TableExprGroupSumSqrDComplex()
std::complex< Double > DComplex
virtual ~TableExprGroupNTrue()
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining the mean of values in a group.
virtual ~TableExprGroupMinDouble()
virtual ~TableExprGroupSumSqrInt()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupSumDouble()
bool Bool
Define the standard types used by Casacore.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class determining the minimum double value in a group.
virtual ~TableExprGroupMinInt()
TableExprGroupFractileDouble(TableExprNodeRep *node, Double fractile)
virtual ~TableExprGroupVarianceDouble()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class counting number of rows in a group containing a value.
TableExprNodeArrayColumn * itsColumn
TableExprGroupMeanDouble(TableExprNodeRep *node)
Aggregate class determining the variance of values in a group.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class determining the product of integer values in a group.
TableExprGroupCountAll(TableExprNodeRep *node)
TableExprGroupProductDComplex(TableExprNodeRep *node)
TableExprGroupNFalse(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining the fractile of values in a group.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
The identification of a TaQL selection subject.
Aggregate class determining the standard deviation of values in a group.
Aggregate class determining the maximum double value in a group.
Abstract base class for aggregate functions giving an integer scalar.
virtual ~TableExprGroupMeanDComplex()
Aggregate class counting the number of true values in a group.
virtual ~TableExprGroupCount()
virtual ~TableExprGroupProductDouble()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class determining the variance of values in a group.
Aggregate class determining the mean of complex values in a group.
virtual void finish()
If needed, finish the aggregation.
void setResult(Int64 cnt)
Set result in case it is known directly.
Aggregate class determining the sum of complex values in a group.
TableExprGroupSumInt(TableExprNodeRep *node)
TableExprGroupStdDevDouble(TableExprNodeRep *node, uInt ddof)
virtual ~TableExprGroupSumSqrDouble()
TableExprGroupSumSqrInt(TableExprNodeRep *node)
TableExprGroupProductDouble(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupNFalse()
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.
TableExprGroupCount(TableExprNodeRep *node)