Go to the documentation of this file.
28 #ifndef TABLES_EXPRGROUPAGGRFUNCARRAY_H
29 #define TABLES_EXPRGROUPAGGRFUNCARRAY_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/TaQL/ExprGroup.h>
Aggregate class determining the product of integer array values in a group.
Array< DComplex > itsCurMean
virtual ~TableExprGroupMinArrayDouble()
virtual ~TableExprGroupArrayNFalse()
Abstract base class for aggregate functions giving a bool scalar.
TableExprGroupSumArrayDouble(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupMeansArrayDouble(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 double array values in a group.
Aggregate class determining the RMS of array 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.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class counting per array index in a group if any is true.
virtual ~TableExprGroupSumSqrArrayInt()
TableExprGroupStdDevArrayDComplex(TableExprNodeRep *node, uInt ddof)
virtual void finish()
If needed, finish the aggregation.
TableExprGroupMaxsArrayDouble(TableExprNodeRep *node)
TableExprGroupMaxsArrayInt(TableExprNodeRep *node)
virtual ~TableExprGroupVarianceArrayDouble()
Aggregate class determining the sum of double array values in a group.
Aggregate class determining per array index in a group the maximum value.
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.
Abstract base class for aggregate functions giving a double array.
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining the fractile of array values in a group.
TableExprGroupArrayAny(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupArrayNFalses()
Aggregate class determining the variance of array values in a group.
virtual Bool isLazy() const
Does the aggregate function use lazy semantics? The default implementation returns False.
virtual ~TableExprGroupFractileArrayDouble()
TableExprGroupMaxArrayDouble(TableExprNodeRep *node)
virtual Double getDouble(const vector< TableExprId > &ids)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupArrayNTrue()
Aggregate class determining the minimum double array value in a group.
std::complex< Double > DComplex
TableExprGroupSumSqrsArrayDComplex(TableExprNodeRep *node)
Aggregate class determining the minimum double array value in a group.
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining the sum of complex array values in a group.
TableExprGroupVarianceArrayDComplex(TableExprNodeRep *node, uInt ddof)
virtual void finish()
If needed, finish the aggregation.
virtual ~TableExprGroupMaxArrayDouble()
TableExprGroupProductsArrayDouble(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 ~TableExprGroupVariancesArrayDComplex()
virtual void finish()
If needed, finish the aggregation.
virtual ~TableExprGroupVariancesArrayDouble()
virtual ~TableExprGroupStdDevArrayDComplex()
virtual ~TableExprGroupProductArrayInt()
Abstract base class for aggregate functions giving a double scalar.
Aggregate class determining the mean of complex array values in a group.
Aggregate class determining the histogram of scalar values in a group.
Aggregate class determining the variance of array values in a group.
virtual ~TableExprGroupArrayAnys()
TableExprGroupSumSqrArrayDComplex(TableExprNodeRep *node)
virtual ~TableExprGroupSumsArrayDouble()
Aggregate class determining the sum of squares of double array values in a group.
Abstract base class for aggregate functions giving an integer array.
TableExprGroupRmsArrayDouble(TableExprNodeRep *node)
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining the standard devation of array values in a group.
TableExprGroupMeansArrayDComplex(TableExprNodeRep *node)
TableExprGroupArrayNTrue(TableExprNodeRep *node)
virtual ~TableExprGroupSumSqrArrayDouble()
Abstract base class for aggregate functions giving a bool array.
virtual ~TableExprGroupStdDevsArrayDComplex()
Aggregate class determining the maximum double array value in a group.
Base aggregate class determining the histogram of values in a group.
Aggregate class determining the standard devation of array 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 variance of array values in a group.
virtual void finish()
If needed, finish the aggregation.
virtual void finish()
If needed, finish the aggregation.
virtual ~TableExprGroupMeansArrayDouble()
TableExprGroupVarianceArrayDouble(TableExprNodeRep *node, uInt ddof)
TableExprGroupStdDevsArrayDComplex(TableExprNodeRep *node, uInt ddof)
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 counting the number of true array values in a group.
virtual ~TableExprGroupMaxArrayInt()
TableExprGroupFractileArrayDouble(TableExprNodeRep *node, Double fractile)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupSumSqrsArrayInt(TableExprNodeRep *node)
virtual ~TableExprGroupArrayAlls()
virtual ~TableExprGroupSumArrayDouble()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupSumArrayDComplex(TableExprNodeRep *node)
Aggregate class counting per array index in a group if all are true.
virtual void finish()
If needed, finish the aggregation.
TableExprGroupProductArrayDComplex(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupMinArrayInt(TableExprNodeRep *node)
Aggregate class determining the sum of squares of complex array values in a group.
virtual ~TableExprGroupHistInt()
Aggregate class determining the sum of integer array values in a group.
Aggregate class determining the mean of array values in a group.
virtual void finish()
If needed, finish the aggregation.
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
virtual ~TableExprGroupSumsArrayInt()
Aggregate class determining the sum of double array values in a group.
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.
virtual ~TableExprGroupHistDouble()
virtual void finish()
If needed, finish the aggregation.
Aggregate class determining per array index in a group the sum of value squares in a group.
virtual ~TableExprGroupProductsArrayInt()
Aggregate class determining the sum of complex array values in a group.
virtual ~TableExprGroupMinsArrayInt()
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 maximum double array value in a group.
virtual ~TableExprGroupSumSqrsArrayDComplex()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
virtual ~TableExprGroupMaxsArrayDouble()
TableExprGroupHistInt(TableExprNodeRep *node, Int64 nbin, Double start, Double end)
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 MArray< Int64 > getArrayInt(const vector< TableExprId > &)
Aggregate class determining the product of double array 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 ~TableExprGroupMaxsArrayInt()
Aggregate class determining the mean of complex array values in a group.
Aggregate class determining per array index in a group the product of values.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Abstract base class for classes calculating an aggregated group result.
TableExprGroupProductArrayDouble(TableExprNodeRep *node)
Aggregate class determining the standard devation of array values in a group.
virtual ~TableExprGroupProductsArrayDouble()
Aggregate class determining the RMS of array values in a group.
Aggregate class determining the sum of squares of integer array values in a group.
virtual ~TableExprGroupSumSqrsArrayInt()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupHistScalar(TableExprNodeRep *node, Int64 nbin, Double start, Double end)
Abstract base class for aggregate functions giving a dcomplex scalar.
Array< Double > itsCurMean
TableExprGroupSumsArrayDouble(TableExprNodeRep *node)
TableExprGroupSumsArrayDComplex(TableExprNodeRep *node)
TableExprGroupMinArrayDouble(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.
this file contains all the compiler specific defines
Aggregate class determining the mean of array values in a group.
virtual ~TableExprGroupVarianceArrayDComplex()
Aggregate class counting per array index in a group the nr of true values.
virtual ~TableExprGroupMeanArrayDouble()
virtual ~TableExprGroupSumArrayDComplex()
virtual ~TableExprGroupProductArrayDouble()
virtual ~TableExprGroupHistScalar()
Aggregate class determining the product of complex array values in a group.
virtual ~TableExprGroupMinsArrayDouble()
TableExprGroupSumArrayInt(TableExprNodeRep *node)
virtual ~TableExprGroupSumsArrayDComplex()
virtual ~TableExprGroupMeansArrayDComplex()
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Abstract base class for aggregate functions giving an integer scalar.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupProductArrayInt(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 sum of squares of complex array values in a group.
Aggregate class determining the standard devation of array values in a group.
TableExprGroupMeanArrayDComplex(TableExprNodeRep *node)
virtual ~TableExprGroupProductArrayDComplex()
TableExprGroupSumsArrayInt(TableExprNodeRep *node)
TableExprGroupProductsArrayInt(TableExprNodeRep *node)
virtual void finish()
If needed, finish the aggregation.
virtual ~TableExprGroupRmssArrayDouble()
TableExprGroupMinsArrayDouble(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupHistDouble(TableExprNodeRep *node, Int64 nbin, Double start, Double end)
virtual ~TableExprGroupHistBase()
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
virtual ~TableExprGroupArrayAny()
Aggregate class determining the variance of array values in a group.
TableExprGroupHistBase(TableExprNodeRep *node, Int64 nbin, Double start, Double end)
TableExprGroupArrayNFalse(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
Aggregate class counting the number of false array 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 ~TableExprGroupArrayNTrues()
TableExprGroupSumSqrsArrayDouble(TableExprNodeRep *node)
TableExprGroupRmssArrayDouble(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.
TableExprGroupArrayAlls(TableExprNodeRep *node)
Abstract base class for a node in a table column expression tree.
virtual ~TableExprGroupSumSqrArrayDComplex()
Aggregate class counting if all array values in a group are true.
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 product of complex array values in a group.
TableExprGroupVariancesArrayDComplex(TableExprNodeRep *node, uInt ddof)
TableExprGroupArrayNFalses(TableExprNodeRep *node)
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.
void add(Double value)
Add the value to the histogram.
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupArrayAll(TableExprNodeRep *node)
TableExprGroupSumSqrArrayInt(TableExprNodeRep *node)
virtual ~TableExprGroupSumArrayInt()
virtual ~TableExprGroupStdDevsArrayDouble()
Aggregate class determining the histogram of double array values in a group.
Aggregate class determining the maximum integer array value 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 ~TableExprGroupStdDevArrayDouble()
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.
Abstract base class for aggregate functions giving a dcomplex array.
virtual ~TableExprGroupRmsArrayDouble()
virtual void finish()
If needed, finish the aggregation.
TableExprGroupVariancesArrayDouble(TableExprNodeRep *node, uInt ddof)
virtual ~TableExprGroupProductsArrayDComplex()
TableExprGroupSumSqrArrayDouble(TableExprNodeRep *node)
Aggregate class determining the histogram of integer array values in a group.
TableExprGroupArrayAnys(TableExprNodeRep *node)
virtual void apply(const TableExprId &id)
Get the operand's value for the given row and apply it to the aggregation.
TableExprGroupStdDevsArrayDouble(TableExprNodeRep *node, uInt ddof)
virtual void finish()
If needed, finish the aggregation.
virtual ~TableExprGroupMinArrayInt()
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 ~TableExprGroupMeanArrayDComplex()
Aggregate class determining the minimum integer array value in a group.
Aggregate class determining per array index in a group the sum of values.
Aggregate class counting per array index in a group the nr of false values.
virtual void finish()
If needed, finish the aggregation.
TableExprGroupStdDevArrayDouble(TableExprNodeRep *node, uInt ddof)
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.
Aggregate class determining per array index in a group the minimum value.
TableExprGroupMaxArrayInt(TableExprNodeRep *node)
TableExprGroupArrayNTrues(TableExprNodeRep *node)
virtual ~TableExprGroupArrayAll()
TableExprGroupMeanArrayDouble(TableExprNodeRep *node)
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 double array values in a group.
TableExprGroupProductsArrayDComplex(TableExprNodeRep *node)
TableExprGroupMinsArrayInt(TableExprNodeRep *node)
virtual ~TableExprGroupSumSqrsArrayDouble()
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.